Hi Leute ich möchte meinen PIC (18F4550) in dessen Schaltung programmieren und habe deshalb einen ICD2-Anschluss mit konstruiert. Bis jetzt ist alles so zusammengelötet wie es auf dem Bild zu sehen ist. Beim Brennen via MPLAB kommt jedoch die Meldung ICD0083: Debug: Unable to enter debug mode. Please double click this message for more information. Die Platine wird vom ICD2 aus versorgt. Die 5V liegen auch richtig an. Wenn ich alles auf dem PICDEM2PLUS Board flashen will, funktioniert alles normal. Was habe ich bei meiner Schaltung vergessen? Grüße
das Bild war bei Klick auf "Vorschau" scheinbar wieder gelöscht worden...grrr
abgesehen von der fehlenden diode beim mclr gegen 5V? es reichen schlecht geroutetet leitung oder zu lange leitungen womit man zwar noch programmieren kann, aber meist geht das debuggen dann nicht mehr.
Diode beim MCLR Pin? Das hab ich ja noch gar nicht gehsehen. Wo soll denn dort eine hin? Ich wollte des vom PICDEM2-Board ableiten. Das Schematic ist hier: http://ww1.microchip.com/downloads/en/DeviceDoc/PICDEM%202%20Plus%20RoHS.pdf Die haben dort noch einen Kondensator am MCLR, den ich nicht habe. Sollte es daran liegen? Das Problem mit zu langen Leitungen kenne ich, hab alles schön kurz (3 cm).
Mhm, scheinbar hab ich diese Infos von der Sprut-Seite, hab bis jetzt immer eine verbaut, immerhin erscheint mir das logisch da MCLR auf 13V gehoben wird beim Programmieren, die braucht man dann irgendwie doch nicht in der restlichen Schaltung
Das "using MPLAB ICD2" - poster ist eigentlich ganz hilfreich um zu klären, was bezüglich des Programmier/Debug-Interfaces alles erlaubt bzw. verboten ist: http://ww1.microchip.com/downloads/en/DeviceDoc/51265g.pdf Hier ist keine Diode von +5V in Richtung Vpp eingezeichnet. Ist auch nicht wirklich nötig, denn selbst wenn Vpp auf 13V angehoben wird, fließt durch den 10kOhm Widerstand gerade mal ein Strom von 0.8 mA. Allerdings glaube ich eher, dass es sich in diesem Fall um ein Software- bzw. Anwenderproblem handelt. Darum hier mal eine kleine Checkliste: Steht der PIC18F4550 am unteren Rand des MPLAB-Fensters? Stimmen die Oszillatoreinstellungen? (Im Menü "Configure > Configuration bits" die Oszillatoreinstellunge prüfen! Stimmen diese mit dem verwendenten Quarz und den Einstellungen in der Software überein?) Welches Linkerfile benutzt Du (vorausgesetzt Du verwendest den C18)? 18F4550.lkr oder 18F4550i.lkr? Letzteres ist fürs Debuggen erforderlich! gruß daniel
Wo seht ihr bitte eine Diode in der angehängten Schaltung?
Andreas Riegebauer wrote:
> Wo seht ihr bitte eine Diode in der angehängten Schaltung?
Wenn Du Dich vor dem Posten bequemt hättest den vollständigen Thread zu
lesen, dann wäre Dir klar, dass es um eine angeblich FEHLENDE Diode in
der angehängten Schaltung geht...
Also ich denke eher dass es doch ein HW Problem ist. Bei MPLAB-Start wird alles richtig erkannt: -------------------------- Connecting to MPLAB ICD 2 ...Connected Setting Vdd source to MPLAB ICD 2 Target Device PIC18F4550 found, revision = Rev 0x5 ...Reading ICD Product ID Running ICD Self Test ...Passed MPLAB ICD 2 Ready -------------------------- Beim Flashen kommt dann das: -------------------------- Programming Target... ...Validating configuration fields ...Erasing Part ...Programming Program Memory (0x0 - 0x27F) ...Loading DebugExecutive ...Programming DebugExecutive ...Programming Debug Vector ...Programming RSBUG Verifying... ...Program Memory ...Debug Executive ...Debug Vector ...Verify Succeeded Programming Configuration Bits .. Config Memory Verifying configuration memory... ...Verify Succeeded Connecting to debug executive ICD0083: Debug: Unable to enter debug mode. Please double click this message for more information. MPLAB ICD 2 Ready --------------------------- Ich sehe auch den Ladebalken beim Flashvorgang. Nur am Ende kann er nicht in den Debug wechseln. Die 4550i.lkr Datei hab ich auch probiert, keine Änderung.
Sicher dass dein µC auch läuft? Oszillatorsettings überprüft? Liegen alle Spannungen korrekt an? Wo nichts läuft gibts nichts du debuggen ;-)
Oszillator wars tatsächlich. Muss auf HS stehen. Danke !!
ist jetzt auch nicht der weisheit letzter schluss :) wann HS, XT oder RC eingestellt werden muss verraten dir datenblatt und deine schaltung =)
Hier meine Einstellungen für: - PIC18F4550 - CCS Compiler - PICDEM 2 Plus Board Die mit Ausrufezeichen versehenen Fuses ware bei mir relevant für das debuggen mit dem ICD 2. Ausserdem beachten, dass in der MPLAB Oberfläche unter Project > Build Options > Project > CCS C Compiler "Compile for use with ICD Debugger" aktiviert ist. #include <18F4550.h> #device ICD=TRUE #device adc=10 #FUSES NOWDT //No Watch Dog Timer #FUSES WDT128 //Watch Dog Timer uses 1:128 Postscale #FUSES INTRC_IO //Internal RC Osc, no CLKOUT #FUSES NOPROTECT //Code not protected from reading #FUSES BROWNOUT //Reset when brownout detected #FUSES BORV43 //Brownout reset at 4.3V #FUSES NOPUT //!!!!! Power Up Timer !!!!!! #FUSES NOCPD //No EE protection #FUSES STVREN //Stack full/underflow will cause reset #FUSES DEBUG //Debug mode for use with ICD #FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O #FUSES NOWRT //Program memory not write protected #FUSES NOWRTD //Data EEPROM not write protected #FUSES IESO //Internal External Switch Over mode enabled #FUSES FCMEN //Fail-safe clock monitor enabled #FUSES NOPBADEN //PORTB pins are configured as digital I/O on RESET #FUSES NOWRTC //configuration not registers write protected #FUSES NOWRTB //Boot block not write protected #FUSES NOEBTR //Memory not protected from table reads #FUSES NOEBTRB //Boot block not protected from table reads #FUSES NOCPB //No Boot Block code protection #FUSES MCLR //Master Clear pin enabled #FUSES NOLPT1OSC //Timer1 configured for higher power operation #FUSES NOXINST //Extended set extension and Indexed Addressing mode disabled (Legacy mode) #FUSES PLL1 //No PLL PreScaler #FUSES CPUDIV1 //No System Clock Postscaler #FUSES USBDIV //USB clock source comes from PLL divide by 2 #FUSES NOVREGEN //USB voltage regulator disabled #FUSES NOICPRT //!!!!! ICPRT disabled !!!!!! #use delay(clock=8000000,RESTART_WDT)
Hallo, unabhängig von allen anderen Schwierigkeiten sollte in die Schaltung unbedingt ein Blockerkondensator (100n) in die Vcc eingebaut werden. Ohne Blocker läuft jeder Mikrocontroller instabil. Grüße, Peter
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.