komponente prodaja cdovi projekti info KIT kompleti download forumi knjige
Home

Projekti: ICD2 (In-Circuit Debugger & Programer)

ICD2
ICD je dibager i programator za PIC mikrokontrolere, kao što se vidi i iz samog naziva, nudi dva uređaja u jednom pakovanju. Osim programatora, za sve mikrokontrolere, jer se za softversku podršku brine sam Microchip, tu je i dibager, kao pomoćna alatka u fazi razvoja softvera.

Radi se o fantastično korisnom alatu, jer zaista značajno skraćuje proces razvoja i debagiranja softvera.


Dibager

Najveći problem prilikom rada sa kontrolerima je u tome što nema načina da pratite kako se vaš program izvršava, odnosno kada i zašto je nešto krenulo pogrešnim tokom. Pri tom od velike pomoći može biti čak i obična LED na nekom pinu, jer ćete je upaliti ako se neki uslov ispuni i već stvari postaju jasnije, odnosno postepeno se sužava prostor u kojem nastavljamo tražiti grešku...

Još korisnija je informacija o stanju neke varijable, koju možemo slati na serijski izlaz u toku izvršavanja programa i pokupiti npr. sa Vojinom sondom...
Sve su to uobičajeni načini za traženje grešaka koji se koriste kod svih kontrolera, jer bez hardverskog emulatora (koji je vrlo skupa oprema) nema načina da "zavirimo" u kontroler dok radi punom brzinom i pogledamo tačno šta se dešava u nekom kritičnom trenutku...
Tačnije, do pojave ICD-a, nije bilo načina!

Zbog toga su u Microchip-u i osmislili podršku za ovakav uređaj, koja je ugrađena u sam mikrokontroler. ICD radi upravo TO što nam najviše treba - postavljanje prekidnih tačaka i mogućnost da analiziramo sve podatake (sadržaj RAM-a, registara, EPROM-a) u bilo kom trenutku izvršavanja programa!

ICD2 nudi:
- Izvršavanje programa u realnom vremenu i instrukciju po instrukciju
- Prekidne tačke, sa mogućnošću pregleda/promjene registara i varijabli
- Debagiranje u ciljnom sistemu
- Nadgledanje napona ciljnog sistema
- Dijagnostičke LED
- MPLAB IDE korisnički interfejs
- RS232 ili USB interfejs, za povezivanje na PC
- Programiranje svih PIC kontrolera iz MPLAB IDE-a

ICD dibager je u stvari jeftina zamjena za skupe hardverske emulatore, ICE (In-Circuit Emulator). Postoje i neka ograničenja ali ona nisu velika i u biti se svode na to da dva pina kontrolera moraju ostati posvećena komunikaciji sa ICD-om. Naravno, to ne znači da ih ne možete koristiti u svojim projektima, nego samo da se ne mogu koristiti u fazi debagiranja sa ICD-om. Dovoljno je ostaviti ta dva pina za neke manje bitne funkcije, koje nisu kritične tokom razvoja softvera.

ICD heder konektor Originalni Microchip-ov ICD2 omogućava napajanje ciljnog sistema sa 5V/200mA. U našoj verziji ICD-a smo omogućili napajanje ciljnog sistema sa 5V/1,5A obezbjeđujući tako napajanje i za kompleksnije sklopove.

ICD2 dibager se spaja serijskim ili USB kablom sa PC računarom, a sa druge strane, preko 8 pinskog konektora, spaja se na ciljni sistem koji razvijate. PIC se stavlja u heder adapter, a adapter se ubada u podnožje na ciljnom sistemu (gdje inače treba da ide PIC). Heder adapter se spaja sa ICD2 uređajem kratkim kablom, koji dobijate uz adaptere, i čitav sistem se može staviti u pogon...
Header adapt.
Heder adapteri nisu neophodni, ako na Vašem ciljnom istemu obzbijedite potrebne signale za povezivanje sa ICD2. Detalje oko instalacije i pokretanja čitavog ICD sistema mogu se naći u uputstvu koje je pripremio Microchip i koje mozete preuzeti i ovdje, u sljedećoj tabeli.

ICD2 Programator

Kao što se vidi i sa fotografija, naš ICD2 smo opremili sa 40 pinskim ZIF podnožjem, koje ne postoji na originalnom uređaju, tako da Vam služi i kao univerzalni programator za sve vrste PIC mikrokontrolera, bez potrebe za bilo kakvim dodtnim pločicama i kablovima.
ICD2 programator je podržan direktno iz MPLAB razvojnog okruženja, a izbor odgovarajuće porodice PIC-ova se vrši samo sa jednim preklopnikom koji ima 4 položaja: 8 pin, 18 pin, 28 pin i 40 pin. Orjentacija i položaj svakog PIC-a su nacrtane pored ZIF-a 10F adapt. tako da ne može biti zabune. Direktno na ZIF-u su podržane sve serije PIC-ova, osim serije 10Fxx. Dakle na položaju 8 pin ne možete programirati 10Fxx seriju direktno, ali za ta kola postoji mali adapter (na slici) u koji se ubacuje IC kolo i normalno programira.

Testirali smo programator sa više PIC kontrolera iz svake serije (10Fxxx, 12Cxxx, 12Fxxx, 16Fxxx, 18Fxxx) i sa svima je radio savršeno. Za razliku od nekih drugih programatora, kod ICD-a je bitno je da tačno selektujete kolo koje programirate! Ne možete selektovati npr. 16F628 i programirati 16F628A, ili selektovati 16F876A a programirati 16F876, jer ICD čita ID broj iz samog kontrolera na osnovu kojeg ima tačnu identifikaciju !
Takodje, ne preporučuje se da prekidač za selekciju okrećeta nakon umetanja kola u ZIF podnožje, nego obrnuto - selektujte porodicu kojoj pripada IC (br. pina), pa ga zatim umetnite u ZIF. Ovo je samo predostrožnost, i ne znači da će obavezno doći do oštećenja kontrolera ako se ne poštuje.
Sobzirom da se o programskoj podršci brine sam Microchip, jer je programator podržan iz MPLAB-a i uz svaku novu verziju dolazi i softver za ICD, logično je očekivati da će biti podržani i svi budući kontroleri koji će se pojavljivati na tržištu...

Instalacija

Kao što se vidi i sa fotografija, uređaj ima RS232 i USB port za povezivanje za PC računarom. Preporučujemo korištenje USB porta (uz uređaj dobijate i USB kabl), ali NEMOJTE KORISTITI USB DRAJVERE KOJI DOLAZE UZ MPLAB ZA ORIGINALNI MICROCHIP-ov ICD2 UREĐAJ ! Uz naš ICD2 uređaj ćete dobiti odgovarajuće drajvere, koji se vrlo jednostavno instaliraju i kreiraju virtualni serijski port koji će MPLAB prepoznati kao standardni serijski port i sve će savršeno raditi.

Razlog za ovakvo rješenje USB konekcije je u visokoj cijeni originalno korištenog Cypress-ovog kola za USB komunikaciju, tako da bi uređaj sa njim bio praktično duplo skuplji. Smatrali smo da ta kompatibilnost sa originalom ne vrijedi toliko novca, pa smo primjenili naše rješenje sa kolom FT232 koje na USB interfejsu kreira virtuelni COM port.

Zbog toga morate i kod podešavanja MPLAB-a izabrati taj novi, virtuelni port, kao port za komunikaciju a ne USB koji će vam MPLAB sam ponuditi ! Takođe, pokazalo se da MPLAB najčešće odbija komunikacirati sa virtuelnim portom, ako mu dodijelite neku "nelogičnu" oznaku. Npr. ako na računaru imate 2 serijska porta, virtuelnom portu dodijelite sljedeću slobodnu slobodnu oznaku, tj. COM3. Ako setujete COM4, COM6 ili viši, MPLAB će odbiti da radi sa tim portom!

Ovo je bug MPLAB-a, ali šta je tu je. Testirali smo naš ICD2 na više računara, sa trenutno najnovijom verzijom MPLAB-a, i ovo ponašanje programa je uvijek isto.

Dakle o tome morate voditi računa prilikom instalacije jer drajver za FT232 najčešće sam uzima neku "visoku" oznaku porta, najčešće COM6. Podešavanje imena COM porta se vrši kada u Control Panelu otvorite setovanje portova na računaru, i selektujete "USB serial Port (COMx)", gdje je COMx oznaka porta. Nakon klika desnim tasterom miša i izbora opcija: Properties -> Port seting -> Advanced, došli ste do setovanja parametara. Sve ostalo osim oznake porta možete ostaviti po difoltu. Oznaku porta, kao [to je ve; re;enao, podesite na sljedeći poredu, iza fizički postojećih.
Osim ove instalacije drugog drajvera i setovanja, nema nikakve druge razlike u radu ICD-a u odnosu na originalni Microchip-ov uređaj.

Kada u MPLAB-u izaberete opciju Debugger -> Select Tool -> MPLAB ICD2, i aktivirate podršku za ICD, MPLAB će pokušati konekciju sa ICD2 uređajem i najčešće će prijaviti grešku jer u prvom pokušaju uvijek setuje USB port. Nakon toga uđite u podešavanje komunikacije za ICD2 (Debugger -> Settings -> Communication) i podesite odgovarajući virtuelni COM port, koji ste u prethodnom koraku setovali. Nakon ovoga će konekcija (Debugger -> Connect) proći bez problema. Što se tiče podešavanja brzine komunikacije, možete ostati na difoltu od 19200, ali možete slobodno podesiti i 57600 jer po našim testovima sve radi bez ikakvih problema.
Za detaljnija uputstva oko samog rada i korištenja ovog izuzetno korisnog uređaja, pročitajte originalno uputstvo!

Ažurne drajvere za sve operativne sisteme možete pronaći na stranici: www.ftdichip.com/Drivers/VCP.htm
Sa najnovijim drajverima za Windows XP (iz marta 2008.god.) uređaj radi fantastično brzo i pouzdano (čak i brže od originalnog ICD2) pa ih svakako instalirajte.

ICD2 možete koristiti i za ciljne sisteme koji rade na 3,3V jer su PGD i PGC signali prilagođeni za takav rad, samo nemojte spajati Vdd (plus napajanja) od ICD-a sa ciljnim sistemom, nego ga ostavite da se napaja sa izvora 3,3V u ciljnom sistemu. Programiranje i debagiranje radi savršeno normalno. Za sam PIC ovo i nije kritično jer većina PIC-ova radi od 2.5V do 5.5V, ali ako imate na ciljnom sistemu još nekih čipova kloji nisu tako tolerantni, može se desiti da ih uništite sa 5V napajanjem.

Dokumentacija i drajveri Download Adobe Acrobat Reader [*.pdf]
ICD2 User Guide - kompletno uputstvo za ICD2 [ 1.2Mb]
ICD2 drajver za povezivanje preko USB interfejsa (W98 i ME) [ 387 Kb]
ICD2 drajver za povezivanje preko USB interfejsa (W2K I XP), v2.04.06 (mart 2008) [ 820 Kb]

Prodaja Prodaja

ICD-GUR : ICD2 programator/dibager sa RS232 i USB interfejsom i USB kablom
35 €

ICD-DEB : ICD2 dibager samo sa RS232 int. (bez ZIF podnožja i USB interfejsa)
25 €

ICD-HA3 : Komplet 3 heder adaptera za 18, 28 i 40 pinske PIC-ove
10 €

UNI_POW : Eksterni ispravljač 8-12V za ICD2 i druge programatore
5 €

Narudžbe na mail: narudzbe@elektronika.rs.ba

ICD2 imamo na lageru i isporučuje se odmah. Može se dobiti pouzećem na kućnu adresu na teritoriji BiH, Hrvatske i Srbije!


home | o nama | katalog | cdovi | prodaja | projekti | linkovi | download | forumi | kontakt | alfanet

Hosted by www.poen.net