Forum: Mikrocontroller und Digitale Elektronik dsPIC: Programm startet nur mit debugger


von dsPIC newbie (Gast)


Lesenswert?

Hallo,

ich habe einen dsPIC33EP512GM306 ein Pickit 3 und nutze MPLAB X IDE. Ich 
kann den µC zwar debuggen, wenn ich ihn aber programmiere scheint er 
garnicht erst zu starten. Die plausibelste Lösung wäre wohl ein falsch 
gesetztes configuration bit, aber im Datenblatt kann ich kein debug bit 
finden.

Das einzige was mit debuggen zu tun hat ist das JTAG bit. Aber wenn ich 
das deaktivere, dann würde ich mich meiner Einschätzung nach selbst 
aussperren.

Weiß jemand was ich falsch mache?

Vielen Dank im voraus!

von Michael_O (Gast)


Lesenswert?

Meist falsch Beschaltung vom Master Clear Input. Da der Debugger den 
aktiv setzt funktioniert ohne ordentliche Schaltung der PIC Nicht wenn 
er ohne PicKit läuft.
Entweder MCLR im den config bits disablen oder Schaltung dran.

mfG
Michael

von Klaus (Gast)


Lesenswert?

dsPIC newbie schrieb im Beitrag #4940140:
> Pickit 3

Der Pickit 3 nutzt nicht JTAG sondern eines der PGED/PGEC Pärchen und 
MRST#. Damit der Prozessor auch ohne Pickit funktioniert, braucht er 
einen 10k Pullup an MRST# und das Programm muß mit "run" und nicht mit 
"debug" übersetzt werden.

MfG Klaus

von dsPIC newbie (Gast)


Lesenswert?

Hallo Michael_O,

vielen Dank für deine Antwort! MCLR ist so wie im Datenblatt 
vorgeschlagen beschaltet. 
(http://ww1.microchip.com/downloads/en/DeviceDoc/70000689d.pdf , Seite 
20)

Parallel ist MCLR direkt mit dem Pickit 3 verbunden. Solange das Pickit 
also nicht "hart" auf 0 schaltet, sollte kein Reset stattfinden. Wenn 
ich das Pickit entferne startet der dsPIC auch nicht.

von dsPIC newbie (Gast)


Lesenswert?

Hallo Klaus,

auch an dich vielen Dank für deine Antwort! Ich habe JTAG nun 
deaktiviert, aber weiterhin läuft er nur beim debuggen.

Ich probiere es sowohl mit der Schaltfläche "Run Main Project" als auch 
mit "Make and Program Device Main Project" zu starten. In den 
Projekteigenschaften habe ich nichts über eine Übersetzungsart gefunden.

von dsPIC newbie (Gast)


Lesenswert?

Das hier sind die config bits:
1
// FICD
2
#pragma config ICS = PGD1               // ICD Communication Channel Select bits (Communicate on PGEC1 and PGED1)
3
#pragma config JTAGEN = OFF             // JTAG Enable bit (JTAG is disabled)
4
5
// FPOR
6
#pragma config BOREN = ON               //  (BOR is enabled)
7
#pragma config ALTI2C1 = OFF            // Alternate I2C1 pins (I2C1 mapped to SDA1/SCL1 pins)
8
#pragma config ALTI2C2 = OFF            // Alternate I2C2 pins (I2C2 mapped to SDA2/SCL2 pins)
9
#pragma config WDTWIN = WIN25           // Watchdog Window Select bits (WDT Window is 25% of WDT period)
10
11
// FWDT
12
#pragma config WDTPOST = PS32768        // Watchdog Timer Postscaler bits (1:32,768)
13
#pragma config WDTPRE = PR128           // Watchdog Timer Prescaler bit (1:128)
14
#pragma config PLLKEN = ON              // PLL Lock Enable bit (Clock switch to PLL source will wait until the PLL lock signal is valid.)
15
#pragma config WINDIS = OFF             // Watchdog Timer Window Enable bit (Watchdog Timer in Non-Window mode)
16
#pragma config FWDTEN = ON              // Watchdog Timer Enable bit (Watchdog timer always enabled)
17
18
// FOSC
19
#pragma config POSCMD = NONE            // Primary Oscillator Mode Select bits (Primary Oscillator disabled)
20
#pragma config OSCIOFNC = OFF           // OSC2 Pin Function bit (OSC2 is clock output)
21
#pragma config IOL1WAY = ON             // Peripheral pin select configuration (Allow only one reconfiguration)
22
#pragma config FCKSM = CSDCMD           // Clock Switching Mode bits (Both Clock switching and Fail-safe Clock Monitor are disabled)
23
24
// FOSCSEL
25
#pragma config FNOSC = FRCDIVN          // Oscillator Source Selection (Internal Fast RC (FRC) Oscillator with postscaler)
26
#pragma config PWMLOCK = ON             // PWM Lock Enable bit (Certain PWM registers may only be written after key sequence)
27
#pragma config IESO = ON                // Two-speed Oscillator Start-up Enable bit (Start up device with FRC, then switch to user-selected oscillator source)
28
29
// FGS
30
#pragma config GWRP = OFF               // General Segment Write-Protect bit (General Segment may be written)
31
#pragma config GCP = OFF                // General Segment Code-Protect bit (General Segment Code protect is Disabled)

von dsPIC newbie (Gast)


Lesenswert?

OK,

der Fehler dürfte gefunden sein: Die Hardware hat einen Fehler und zieht 
das Signal auf 0. Vielen Dank für eure Hilfe!!!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.