Ik heb onlangs een PICkit 2 aangeschaft en het programmeren lukt uitstekend. Echter als ik ermee wil gaan debuggen in MPLAB krijg ik het volgende te zien:

nitializing PICkit 2 version 0.0.3.12
Found PICkit 2 - Operating System Version 2.20.0
Target power not detected - Powering from PICkit 2
PKWarn0003: Unexpected device ID: Please verify that a PIC16F648A is correctly installed in the application. (Expected ID = 0x1120, ID Read = 0x1100)
PICkit 2 Ready

Programming Target (23/04/2008 19:47:32)
Erasing Target
Programming Program Memory (0x0 - 0x22)
Verifying Program Memory (0x0 - 0x22)
Programming Debug Executive (0x-F00 - 0xFFF)
Verifying Debug Executive (0xF00 - 0xFFF)
Programming Debug Vector
Verifying Debug Vector
Programming Configuration Memory
Verifying Configuration Memory
PK2Error0028: Unable to enter debug mode
NOTE: This device requires an ICD Header for debug. See "Header Specification" DS51292.
PICkit 2 Ready

Zoals je ziet is er 1 waarschuwing en 1 error. Ik gebruik de PIC16F648A en volgens de documenten is deze supported voor debugging. Externe circuits zijn normaal geen probleem. Wat ik ook raar vind bij het doornemen van H4 van de user manual voor te kunnen in circuit debuggen is het volgende: De configuratie bit "MCLR enabled"kan bij mij alleen maar op "enabled" of "disabled" staan, terwijl in de manual er gevraagd wordt om hem zo te configureren:
"Master Clear Enable – MCLR is external"

Iemand een idee wat ik kan doen om het debuggen aan de praat te krijgen ?

een knappe pic nemen.

deze kan je debuggen met een extra printje. daar zit een pic op die de communicatie regelt
en misschien nog wat meer dingen.

kijk maar op www.microchip.com bij programming headers

// edit
deze moet je hebben
http://www.microchipdirect.com/ProductDetails.aspx?Catalog=BuyMicrochi…

[Bericht gewijzigd door mts plus op (26%)]

Bedankt, de PIC16F648A heeft inderdaad geen inwendige debug circuits dus moet ik inderdaad de AC2053 header kopen die de PIC16F648A met ICD circuits bevat.

Ik gebruik al een hele tijd een PICkit2, en heb wel eens van Debuggen via de progger gehoord. Maar hoe moet ik mij dit voorstellen ?
Kan je dan registers in de PIC uitlezen ?

even kort door de bocht.
daar kan je hetzelfde mee als met mplabsim maar dan in reallife

dus je pic daadwerkelijk ergens stilzetten
en inderdaad alle registers bekijken.
zowel in een watch als in je code,.

kan je eenvoudig zijn waarom iets wel of neit wil werken

even kort door de bocht.
daar kan je hetzelfde mee als met mplabsim maar dan in reallife

dus je pic daadwerkelijk ergens stilzetten
en inderdaad alle registers bekijken.
zowel in een watch als in je code,.

kan je eenvoudig zijn waarom iets wel of neit wil werken

Je kunt inderdaad gewoon breakpoints in je code zetten, de meeste controllers ondersteunen dacht ik 3 breakpoints. Je kunt ook de processor op een willekeurig moment stoppen door op de "pauze" knop te drukken.

Als de processor dan op pauze staat kan je de variabelen/registers uitlezen door er de muis boven te houden.

Let overigens wel op dat je, als je gaat debuggen, de powerup timer uit zet. Als je dat niet doet kun je ooit lang zoeken (spreekt uit ervaring).

Debuggen op deze manier is toch niet mogelijk met de PICkit2 software lijkt mij.

Welke software ondersteund dit wel (in combinatie met de PICkit2) ?

Voor het debuggen in ASM kan je ICD2 software bij microchip downloaden.

Voor het debuggen in P+ basic kan je naar:

http://www.p-icd.com/

Voorwaarde is wel dat de pic een hardware usart beschikbaar heeft.

de pickit2 kan dat volgens mij netzoals de ICD2 met mp0lab IDE

Ik prog in C (mikro-C), maar deze compiler ondersteund dit niet (als ik mij niet vergis)...

mikroC integreren in mplab dan werkt het wel

Ik ben al aan het zoeken...
Hoe doe ik dat / Hoe werkt dat ?

weetik niet maar heb het ooit ergens gelezen in een manual van mc

Debuggen op deze manier is toch niet mogelijk met de PICkit2 software lijkt mij.
Welke software ondersteund dit wel (in combinatie met de PICkit2) ?

MPLab IDE... :)

Voor debug: Debugger -> Select Tool -> Pickit2
Voor programmeren: Programmer -> Select Programmer -> Pickit2

Voorwaarde is wel dat de pic een hardware usart beschikbaar heeft.

Wordt de data dan via deze Usart naar de PC gezonden ?

Ja, het programma installeerd zich als plugin van P+.
Vervolgens kan je als optie "compileren met debug" kiezen, en heb je toegang tot simgle step, breakpoints, registers, variabelen, en noem maar op.

Die 20 pond is echt een koopje als je ziet wat je er voor krijgt.

Op 25 april 2008 21:37:02 schreef MMSoft:
Ik prog in C (mikro-C), maar deze compiler ondersteund dit niet (als ik mij niet vergis)...

Als je in mikroC programmeert lijkt mij het op het eerste zicht logisch dat je de mikroICD debugger gaat gaan gebruiken.

Maar goed dat is dan een andere zaak. Indien je geen licentie gekocht hebt van mikro-C kan je misschien eventueel overstappen op MPLAB met de C-18 compiler van microchip. Zodat alles compatible is met je PICkit2. Het is maar een voorstel hoor :)

Mathieuke, C18 ondersteunt de 16F48A niet, is dus geen oplossing voor TS z'n probleem.

-Toine