Obsah:

Pochopení ICSP pro mikrokontroléry PIC: 4 kroky (s obrázky)
Pochopení ICSP pro mikrokontroléry PIC: 4 kroky (s obrázky)

Video: Pochopení ICSP pro mikrokontroléry PIC: 4 kroky (s obrázky)

Video: Pochopení ICSP pro mikrokontroléry PIC: 4 kroky (s obrázky)
Video: Jak IC EEPROM ukládá uživatelská data ve vašich zařízeních 2024, Červenec
Anonim
Pochopení ICSP pro mikrokontroléry PIC
Pochopení ICSP pro mikrokontroléry PIC

Programování mikrokontrolérů není těžké. Budování programátoru je skvělý první elektronický projekt. Cílem tohoto instruktuálu je vysvětlit jednoduchou metodu „v obvodovém sériovém programování“používanou s Microchip PIC.

Krok 1: Proč ICSP?

Proč ICSP?
Proč ICSP?

Programování velkého čipu DIP (průchozí otvor) je snadné. Vložte jej do soketového programátoru, vypalte a vraťte se do aplikačního obvodu. Otestujte a opakujte.

S menšími čipy (povrchová montáž) to jde obtížněji. Neexistují žádné standardní zásuvky pro QFN, SSOP, QFP nebo dokonce pro velké balíčky SOIC.300. K těmto čipům lze připojit a naprogramovat opravdu drahé klipy (100 USD). Pro každý typ čipu a počet pinů, které používáte, je potřeba jiný klip. Existuje alternativa. Jmenuje se ICSP. ICSP znamená „v sériovém programátoru obvodu (ing?)“. Je to způsob programování PIC, zatímco je stále připojen k aplikačnímu obvodu. Přesně tak, žádné další výměny čipů. Proč ICSP? 1. Neexistují žádné programovací zásuvky pro malé balíčky čipů. Klipy jsou drahé. 2. Je bolestivé přesouvat čipy dovnitř a ven z programátoru během vývoje. U dílů pro povrchovou montáž nemožné.

Krok 2: Co je ICSP?

Co je ICSP?
Co je ICSP?
Co je ICSP?
Co je ICSP?
Co je ICSP?
Co je ICSP?
Co je ICSP?
Co je ICSP?

K naprogramování PIC připojeného k aplikačnímu obvodu je zapotřebí pět připojení. Aby bylo toto připojení rychlé a snadné, přidávám na své obvody 5pinový konektor. Základy programování PIC. K programování PIC je zapotřebí pět připojení. Napájení, uzemnění, programovací napětí, hodiny a data.+ (Vdd)/-(Vss) Toto jsou připojení napájení a uzemnění (Vdd, Vss). Docela standardní. Pokud používáte programátor s „skutečnými“napěťovými úrovněmi (NE JDM2!), Může vaše aplikace při programování běžet z vlastního napájecího zdroje, což tato připojení eliminuje. Vpp Toto je programovací napětí. PIC vstupují do režimu programování, když je na pin MCLR/Vpp umístěno ~ 13 voltů (obvykle pin 1 na moderních PIC, více o tom níže). Hodiny/data nebo PGC/PGD K zápisu a čtení PIC se používají hodiny a datové linky firmware. Obvykle se jedná o stejné piny jako PORTB6 a PORTB7. Cvičení: Na obrázcích níže identifikujte body připojení ICSP na obrázcích. Pokud se PIC hodí, noste ho. Dostávám spoustu dotazů ohledně mého návrhu JDM2 na instruktážní materiály. Nejčastější je „Bude programovat PIC X?““- zde poznáte, jak: 1) Podívejte se na datový list. Najděte „Pin Diagram“, který vypadá podobně jako na obrázku níže. 2) Určete umístění pinů, které musí být připojeny pro programování (Vpp, Vdd, Vss, Data, & Clock). 3) Podívejte se na zásuvkové připojení na programátor. Můžete spojit požadované piny s paticí na programátoru?

Krok 3: Jak ICSP?

Jak ICSP?
Jak ICSP?
Jak ICSP?
Jak ICSP?
Jak ICSP?
Jak ICSP?
Jak ICSP?
Jak ICSP?

V závislosti na vašem návrhu nyní můžete provést všechna požadovaná připojení a naprogramovat svůj PIC. Existuje několik úlovků, o kterých byste měli vědět. Design pro ICSP je důležitý. Microchip poskytuje pěknou poznámku aplikace PDF o navrhování pro ICSP. https://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en011744 Zde je několik tipů a příkladů návrhů ICSP z mých dřívějších instrukcí. Tip č. 1, Úroveň ohrožení: Důležité Nepřipojujte k hodinám nic jiného a DATA piny (obvykle RB6 a RB7, PGC a PGD). Prostě to nedělej. Existují situace, kdy se velmi chytré strojírenské typy dostanou pryč, ale nedělejte to. Komponenty připojené k pinům zkreslí hodinový a datový signál, což má za následek nepředvídatelné programování. Navíc, pokud byste někdy chtěli použít sériový debugger v obvodu, nemůžete. Prostě to nedělejte. Tip č. 2 Úroveň ohrožení: Výbušný Vždy používejte diodu mezi napětím programování a napětím systému. Pokud používáte MCLR (master clear) na PIC, musíte na pinu MCLR poskytnout určité napětí přes odpor 10Kish. To je také kolík, na který použijete ~ 13 voltů pro vstup do režimu programování. Mezi odpor a pin MCLR/Vpp jsem vložil diodu 1n4148 (ekvivalent) (jak je znázorněno na schématu a vykreslení níže). To udržuje programovací napětí na pinu Vpp a brání zničení ostatních komponent na vaší desce. Tip č. 3 Úroveň ohrožení: (re) unavený Programování nízkého napětí vás zdržuje, člověče. Nikdy jsem nebyl úspěšný s LVP. Nikdy jsem to neviděl fungovat (důsledně) na vlastní oči. Jednoduše skousněte kulku a utratte 2,50 $ na vybudování programátoru JDM2.

Krok 4: Programátoři ICSP

Programátoři ICSP
Programátoři ICSP
Programátoři ICSP
Programátoři ICSP

ICSP nevyžaduje jiný programovací protokol. Programátor na bázi soketu již produkuje požadovanou signalizaci, ale odesílá ji do zásuvky, nikoli prostřednictvím vodičů. Většinu programátorů soketů lze použít jako ICSP propojením vodičů ze zásuvky do aplikačního obvodu. Například původní programátor JDM2 (zde: https://www.jdm.homepage.dk/newpic.htm) lze použít k proveďte programování ICSP přenesením 5 požadovaných signálů do záhlaví. To je vidět na programátoru zde: https://www.belza.cz/digital/jdm.htm. Abych měl věci po ruce, předělal jsem tento design v Eagle Cad a připojil jej k tomuto návodu. Sledujte orientaci tranzistoru, jedna ze stop může být nesprávná (udělal jsem to před více než rokem, už si to nepamatuji). Podobně můj aktualizovaný programátor JDM2 (zde: https://www.instructables.com/id/EN28KZDDYVEP286GRI/) lze použít pro ICSP zasunutím vodičů do zdířek DIP a jejich připojením k cílovému PIC. ***** JDM2 používají funky napětí … připojte jej k obvodu BEZ externího napájení (nebo dokonce uzemnění) připojeného k aplikačnímu obvodu. Před připojením napájení odpojte připojení ICSP. Pokud tak neučiníte, nebude to ničivé, ale bude to mít za následek neúspěšné programování ******* Další možností je (napůl) správný programátor ICD. ICD vám umožňuje řídit provádění firmwaru na vašem PIC nastavením bodů přerušení v kódu nebo načtením hodnot paměti a portu. ICD může také animovat provádění kódu, napájet aplikační obvod a programovat PIC. To vše dělá prostřednictvím stejného 5pólového připojení ICSP, o kterém jsme diskutovali. Několik klonů ICSP, které si můžete vyrobit sami, můžete vidět zde: https://www.icd2clone.com/wiki/Main_Page. PiCS (rev B) jsem postavil před několika měsíci a miluji ho.

Doporučuje: