Sadržaj:

Razumijevanje ICSP -a za PIC mikrokontrolere: 4 koraka (sa slikama)
Razumijevanje ICSP -a za PIC mikrokontrolere: 4 koraka (sa slikama)

Video: Razumijevanje ICSP -a za PIC mikrokontrolere: 4 koraka (sa slikama)

Video: Razumijevanje ICSP -a za PIC mikrokontrolere: 4 koraka (sa slikama)
Video: Работа с программатором USBAsp в Arduino IDE 2024, Srpanj
Anonim
Razumijevanje ICSP -a za PIC mikrokontrolere
Razumijevanje ICSP -a za PIC mikrokontrolere

Programiranje mikrokontrolera nije teško. Izgradnja programera odličan je prvi elektronički projekt. Cilj ovog uputstva je objasniti jednostavnu metodu serijskog programiranja u krugovima koja se koristi s Microchip PIC -ovima.

Korak 1: Zašto ICSP?

Zašto ICSP?
Zašto ICSP?

Programiranje velikog DIP (kroz otvor) čipa je jednostavno. Umetnite ga u utikač programatora, narežite i vratite u aplikacijski krug. Testirajte i ponovite.

Stvari postaju sve teže s manjim čipovima (za površinsko montiranje). Ne postoje standardne utičnice za QFN, SSOP, QFP, pa čak ni za velike SOIC.300 pakete. Postoje stvarno skupi isječci (100 USD) koji se mogu pričvrstiti i programirati na ove čipove. Za svaku vrstu čipa i broj pinova koje koristite potreban je drugačiji isječak. Postoji alternativa. Zove se ICSP. ICSP znači "serijski programer u krugu (ing?)". To je način programiranja PIC -a dok je još spojen na aplikacijski krug. Tako je, nema više zamjene čipova. Zašto ICSP? 1. Ne postoje programske utičnice za male pakete čipova. Isječci su skupi. 2. Bolno je umetati čipove u programer tijekom razvoja. Nemoguće za dijelove za površinsku montažu.

Korak 2: Što je ICSP?

Što je ICSP?
Što je ICSP?
Što je ICSP?
Što je ICSP?
Što je ICSP?
Što je ICSP?
Što je ICSP?
Što je ICSP?

Za programiranje PIC -a potrebno je pet veza dok je spojen na aplikacijski krug. Dodajem 5 -polno zaglavlje na svoje pločice kako bi ova veza bila brza i jednostavna. Osnove programiranja PIC -a. Za programiranje PIC -a potrebno je pet veza. Napajanje, uzemljenje, programski napon, sat i podaci.+ (Vdd)/-(Vss) To su priključci napajanja i uzemljenja (Vdd, Vss). Prilično standardno. Ako koristite programer s 'stvarnim' razinama napona (NE JDM2!), Vaša se aplikacija može programirati iz vlastitog izvora napajanja kada je programirana, eliminirajući ove veze. Vpp Ovo je napon za programiranje. PIC -ovi ulaze u način programiranja kada se na MCLR/Vpp pin postavi ~ 13 volti (obično pin 1 na modernim PIC -ovima, više o tome u nastavku). Sat/Podaci ili PGC/PGD Sat i podatkovne linije koriste se za pisanje i čitanje PIC -a firmware. To su obično isti pinovi kao i PORTB6 i PORTB7. Vježba: Identificirajte ICSP priključne točke na PIC -ovima na donjim slikama. Ako PIC odgovara, nosite ga. Dobivam mnogo pitanja o svom dizajnu JDM2 o instrukcijama. Najčešći je "Hoće li programirati PIC X?" "' - evo kako to možete reći: 1) Pogledajte podatkovnu tablicu. Pronađite 'Pin Diagram' koji izgleda poput slike ispod. 2) Identificirajte mjesto pinova koji moraju biti povezani za programiranje (Vpp, Vdd, Vss, Podaci i sat). 3) Pogledajte priključnicu utičnice na programer. Možete li uskladiti potrebne pinove s utičnicom na programatoru?

Korak 3: Kako ICSP?

Kako ICSP?
Kako ICSP?
Kako ICSP?
Kako ICSP?
Kako ICSP?
Kako ICSP?
Kako ICSP?
Kako ICSP?

Ovisno o vašem dizajnu, sada možete napraviti sve potrebne veze i programirati svoj PIC. Postoji nekoliko ulova o kojima biste trebali znati. Dizajn ICSP -a je važan. Microchip pruža lijepu bilješku o prijavi u PDF -u o dizajnu za ICSP. https://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011744 Evo nekoliko savjeta i primjera dizajna ICSP -a iz mojih prethodnih uputstava. Savjet #1, Razina prijetnje: VažnoNe spajajte ništa drugo na SAT i DATA pinovi (obično RB6 & RB7, PGC i PGD). Samo nemojte to činiti. Postoje situacije u kojima se vrlo pametni inženjerski tipovi izvuku, ali nemojte to činiti. Komponente pričvršćene na pinove iskrivit će sat i podatkovne signale, što će rezultirati nepredvidivim programiranjem. Osim toga, ako ikada poželite koristiti serijski debager u krugu, ne možete. Samo nemojte to učiniti. Savjet #2 Razina prijetnje: Eksplozivno Uvijek koristite diodu između napona za programiranje i napona sustava. Ako koristite MCLR (master clear) na PIC -u, morate osigurati određeni napon na MCLR pin -u kroz 10Kish otpornik. Ovo je također pin na koji ćete primijeniti ~ 13 volti za ulazak u način programiranja. Stavio sam 1n4148 (ekvivalentnu) diodu između otpornika i MCLR/Vpp pina (kao što je prikazano na shemi i dolje prikazanoj). Ovo održava napon programiranja na Vpp pin -u, sprječavajući uništavanje drugih komponenti na vašoj ploči. Savjet #3 Razina prijetnje: (pre) umornoProgramiranje niskog napona vas koči, čovječe. Nikada nisam bio uspješan s LVP -om. Nikada nisam vidio da to radi (dosljedno) vlastitim očima. Dovoljno je zagristi metak i potrošiti 2,50 USD za izradu JDM2 programera.

Korak 4: Programeri ICSP -a

ICSP programeri
ICSP programeri
ICSP programeri
ICSP programeri

ICSP ne zahtijeva drugačiji programski protokol. Programer temeljen na utičnicama već proizvodi potrebnu signalizaciju, ali je šalje u utičnicu, a ne putem žica. Većina programera utičnica može se koristiti kao ICSP postavljanjem žica od utičnice do aplikacijskog kruga. Na primjer, izvorni programer JDM2 (ovdje: https://www.jdm.homepage.dk/newpic.htm) može se koristiti za raditi ICSP programiranje donoseći 5 potrebnih signala u zaglavlje. To se može vidjeti u programeru ovdje: https://www.belza.cz/digital/jdm.htm. Da bi vam stvari bile pri ruci, preradio sam ovaj dizajn u Eagle Cadu i priložio ga ovom uputstvu. Pazite na orijentaciju tranzistora, jedan od otisaka može biti pogrešan (ovo sam napravio prije više od godinu dana, više se ne sjećam). Slično, moj ažurirani JDM2 programer (ovdje: https://www.instructables.com/id/EN28KZDDYVEP286GRI/) može se koristiti za ICSP tako da se žice zalijepe u DIP utičnice i povežu na ciljani PIC. ***** JDM2 -i koriste zabavne napone … spojite ih na krug BEZ vanjskog napajanja (ili čak uzemljenja) spojenog na aplikacijski krug. Prije uključivanja napajanja uklonite ICSP veze. Ako to ne učinite, nije destruktivno, ali će rezultirati neuspješnim programiranjem ******* Druga je mogućnost (polu) pravilan ICD programer. ICD vam omogućuje kontrolu izvođenja firmvera na vašem PIC -u postavljanjem točaka prekida u kodu ili čitanjem vrijednosti memorije i priključaka. ICD također može animirati izvršavanje koda, napajati aplikacijski krug i programirati PIC. Sve to radi putem iste 5 -pinske ICSP veze o kojoj smo govorili. Nekoliko ICSP klonova koje možete sami napraviti možete vidjeti ovdje: https://www.icd2clone.com/wiki/Main_Page. Napravio sam PiCS (rev B) prije nekoliko mjeseci i sviđa mi se.

Preporučeni: