Moje prvé začiatky s ladením aplikácií v MPLAB-e s debugerom Pickit2 boli ťažké, preto som sa rozhodol napísať tento príspevok ako akúsi „kuchárku“ pre tých, čo tiež s Pickit2 začínajú.
Po inštalácii a prvom spustení MPLAB IDE v.8.00 som márne hľadal možnosť nastaviť ako debuger Pickit2. Až po na pokraji zúfalstva som sa rozhodol nastaviť v „Configure“ > „Select Device“ môj PIC16F877 ktorý bol súčasťou vývojového kitu.
A čuduj sa svete, MPLAB mi debuger našiel. Programátori Microchipu sa snažili urobiť MPLAB blbuvzdorným a aktivovali zrejme možnosť použiť PICkit2 len u procesorov podporujúcich tento programátor.
Nezabudnite v „Debugger“ > “Settings” zakliknúť položku „ Connect on startup“.
Po úspešnej kompilácii projektu môžeme začať ladenie programu. Ku PICkit2 pripojíme ladený procesor a v položke hlavného menu „Debuger” zvolíme hardwarový debuger, PICkit2. Kliknutím na „File“ > “Open” otvoríme náš xxx.asm. súbor. Zvolíme “Debuger” > “Run” z hlavného menu. Pokiaľ je všetko v poriadku, procesor by mal vykonávať požadované činnosti tak, ako sme mu to naprogramovali. Zvolením “Debuger” > “Halt” sa vykonávanie programu zastaví, pričom zelená šípka ukazuje na miesto, v ktorom sa program práve zastavil.
Väčšinou sa nejaká tá chybička v programe vždy vyskytne. Umiestnením “Break pointov” v našom súbore inštruujeme debuger, po ktoré miesto v programe má procesor vykonávať program . Najjednoduchší spôsob vytvorenia Break pointu je dvojklik na riadok, kde chceme, aby sa beh programu zastavil. Ďalšou možnosťou je klik pravou myšou a vyberieme “Set breakpoint”. Nasledovným dvojklikom na tento riadok sa breakpoint odstráni. Klik pravou myšou nám umožnuje okrem iného aj ďalšie zaujímavé funkcie, napr.
Breakpoints > Enable / Disable All Breakpoints, čiže nastavenie breakpointov ako aktívnych, resp. pasívnych.
Pri aktivovaných breakpointoch sa chod programu zastaví na prvom aktívnom breakpointe.
Prechodom kurzoru na riadok nad breakpointom sa zobrazí aktuálna hodnota registru.
Debuger v MPLAB umožňuje sledovať vybraný register alebo skupinu registrov. Resetujeme procesor voľbou „Debuger“ > “Reset” a otvoríme okno “Watch”:
Po spustení debugera príkazom “Run” sa procesor zastaví na prvom aktívnom breakpointe a vo Watch okne sa zobrazia hodnoty zvolených registrov. Šípka na xxx.asm. súbore nám zobrazuje riadok programu, kde sa procesor zastavil. Opravíme chybný kód a po novej kompilácii projektu môžeme pokračovať v ladení.
Okrem krokovania po jednotlivých riadkoch programu, kontinuálneho behu programu debuger umožňuje aj preskočenie rutiny a podobné funkcie bežné u iných ladiacich prostriedkov. Ďalšou lahôdkou, ktorú som pri PICkit2 uvítal je jeho využitie ako prevodníka USB / RS232. Prevodník funguje absolútne bezproblémovo a vytvorí vo Windows virtuálny port.
Ďalšou možnosťou využitia Pickit2 je logický anylyzér umožňujúci sledovať až tri digitálne vstupy s maximálnou vzorkovacou frekvenciou 1 MHz.
PICkit2 sa dodáva s dvomi CD na ktorých sú okrem inštalačného softweru pre PICkit2 aj MPLAB IDE (najnovšia verzia), PICC Lite compilátor, aplikačné programy, datasheety procesorov a mnoho ďalšieho užitočného softwaru. Vďaka tomu, že jeho cena sa pohybuje okolo 40 EUR je jeho kúpa veľmy výhodnou investíciou pre toho, kto sa programovaniu PIC – ov, DsPIC-ov venuje buď ako svojmu hobby alebo pre menšie vývojové firmy. Na webových stránkach sa začali objavovať aj informácie o využití PICkit2 aj pri programovaní obvodov iných výrobcov.
Odkazy:
- Nejnovější verze softwaru a další informace o PICkit2 - zde
- Objednat PICkit2 v HW Shopu
Komentáře
PicKIT 2 software v Explorer 16
Mam vyvojovu dosku od Microchipu Explorer 16. Na programovanie a ladenie pouzivam ICD 2. Podla manualu tejto dosky by ale malo byt mozne, nainstalovat firmware z PicKit 2 do 18LF4550, ktory je na tejto doske osadeny, vcitane USB portu a normalne je nevyuzity. Ma s tym niekto skusenost ?
pickit a iné uP?
Vie mi niekto napisat stranku, ktora sa venuje vyuzitiu pickit2 pre programovanie iných uP.
vdaka