1. PROGRAMÁTOR OBRÁZKOV

Dúfam, že môj článok pomôže niektorým rádioamatérom prekročiť hranicu od digitálnej techniky k mikrokontrolérom. Na internete a rádioamatérskych časopisoch je veľa programátorov: od tých najjednoduchších až po tie veľmi prekrútené. Môj nie je príliš zložitý, ale spoľahlivý.

Prvá verzia programátora je určená na programovanie 18 a 28 "pinových" PIC regulátorov. Programátor vychádza zo schémy z Radio magazínu č.10 za rok 2007. Ale výber kondenzátora C7, experimenty s rôznymi verziami ICprog, PonyProg, WinPic a rýchlosť čítania a zápisu nepriniesli požadovaný výsledok: úspešné programovanie bolo dosiahnuté zakaždým. A to pokračovalo, kým nebolo napájanie + 5 V programovateľného mikroobvodu vyrobené samostatne, a nie po 12-voltovom stabilizátore. Ukázalo sa, že takáto schéma.

Z obavy pred poruchami som pečať nakreslil tak, že doska bola vložená priamo do Com-portu, čo nie je veľmi jednoduché kvôli všelijakým „šnúrkam“ a malej vzdialenosti od puzdra. Ukázalo sa, že ide o pečať nepravidelného tvaru, ale do COM portu sa vkladá normálne a programuje bez chýb.

Časom som si vyrobil predlžovačku dlhú asi 1 meter. Teraz programátor leží vedľa monitora a je pripojený k portu COM. Funguje dobre: ​​Mikrokontroléry PIC16F84A, PIC16F628A, PIC16F873A boli mnohokrát naprogramované.

Poznámka: Čip Max a LED diódy sú inštalované na strane tlačených vodičov. Zásuvky - ZIF-28, jedna z nich je použitá pre 18-pinový PIC. Panely sú označené prvými nohami a číslami „18“ a „28“. V kryte zástrčky adaptéra je nainštalovaný 220 15 voltový, 4 wattový transformátor. Po nainštalovaní mikrokontroléra do zásuvky ho musíte zapojiť do zásuvky. NPN tranzistory nízkovýkonové vysokofrekvenčné (300 MHz) v balíku to-92.

Dočasne som nenainštaloval konektor XP a potom sa ukázalo, že to nebolo zvlášť potrebné. Spájkovaný MK som musel nejako naprogramovať, tak som vodiče vložil priamo do ZIF a opravil. Preprogramovanie bolo úspešné.

Pracujem s programami ICprog a WinPic-800.

V IC-prog 1.05D nasledujúce nastavenia programátor:

  • Programátor – JDM Programátor
  • Port -Com1
  • Priamy prístup k portom.
  • Invertovať: vstup, výstup a hodiny (tick).

Vo WinPic-800 –v.3.64f je všetko identické, ale stále musíte nastaviť „vtáčik“, aby ste mohli používať MCLR.

Na internete si môžete tieto programy voľne a bezplatne stiahnuť. Ale aby som si uľahčil život, pokúsim sa pripojiť všetko potrebné. Len som si spomenul: koľko „zbytočných vecí“ som si sám stiahol z internetu a koľko času som strávil rozoberaním tohto všetkého.

  • Programátor PCB
  • Program WinPic-800 ( )
  • Program IC-Prog().
  • Článok o IC-Prog.

2. PROGRAMÁTOR-2 PRE OVLÁDAČE OBRÁZKOV

Postupom času bolo potrebné naprogramovať 14 a 40 „pinových“ vrcholov. Rozhodol som sa urobiť programátora pre celú priemernú rodinu PIC. Schéma je rovnaká, boli pridané iba dva panely. To všetko je umiestnené v puzdre z bývalého multimetra.

13. februára 2014 bola vykonaná oprava na doske plošných spojov: z 5. kolíka konektora RS232 ide stopa na mínusové napájanie (a na predchádzajúcom na 6. kolík mikroobvodu MAX). Nový podpis v "programer2-2".

Môžete uložiť jednu KREN-ku. Tie. pripojte celý obvod z jedného 5-voltového stabilizátora. Neinštalujte VR3 a C9, ale vložte prepojku (na obrázku je označená bodkovanou čiarou). Ale Krenka som ešte nepil. Opakovane programované PIC16F676, 628A, 84A a 873A. Ale ešte som neskúšal 877.

Niektoré kondenzátory sú inštalované na strane tlačených vodičov. Rolky sú umiestnené vo vodorovnej polohe. Aby sa nekládli vodiče, nainštaloval som C7 - 2ks a R12 - 3ks.

Veľmi dôležité: kryt konektora RS232 musí byť pripojený k mínusovému zdroju napájania.

Napájanie (15 V) a programy sú rovnaké ako v prvej verzii.

Zoznam rádiových prvkov

Označenie Typ Denominácia Množstvo PoznámkaskóreMôj poznámkový blok
Schéma 1
DD1 Integrovaný obvod rozhrania RS-232

MAX232E

1 MAX232 CPE Do poznámkového bloku
VT1-VT4 bipolárny tranzistor

2N3904

4 TO-92 Do poznámkového bloku
VDS1 Diódový mostík

DB157

1 Do poznámkového bloku
VD1 usmerňovacia dióda

1N4148

1 Do poznámkového bloku
VR1, VR3 Lineárny regulátor

L7805AB

1 Do poznámkového bloku
VR2 Lineárny regulátor

KA78R12C

1 Do poznámkového bloku
C1 470uF 35V1 Do poznámkového bloku
C2, C3, C5, C6 elektrolytický kondenzátor10uF 50V4 Do poznámkového bloku
C4, C8 elektrolytický kondenzátor470uF 16V2 Do poznámkového bloku
C7 elektrolytický kondenzátor1uF 25V1 Do poznámkového bloku
C11 Kondenzátor0,1 mF1 Do poznámkového bloku
R1, R7 Rezistor

10 kOhm

2 Do poznámkového bloku
R2 Rezistor

470 ohmov

1 Do poznámkového bloku
R3, R5, R11 Rezistor

4,7 kOhm

3 Do poznámkového bloku
R4, R10 Rezistor

2 kOhm

2 Do poznámkového bloku
R6, R8, R9 Rezistor

1 kOhm

3 Do poznámkového bloku
R12 Rezistor

240 ohmov

1 Do poznámkového bloku
HL1 Dióda vyžarujúca svetlo 1 Červená Do poznámkového bloku
HL2 Dióda vyžarujúca svetlo 1 zelená Do poznámkového bloku
Schéma 2
DD1 Integrovaný obvod rozhrania RS-232

MAX232E

1 MAX232 CPE Do poznámkového bloku
VT1-VT4 bipolárny tranzistor

2N3904

4 TO-92 Do poznámkového bloku
VDS1 Diódový mostík

DB157

1 Do poznámkového bloku
VD1 usmerňovacia dióda

1N4148

1 Do poznámkového bloku
VR1, VR3 Lineárny regulátor

L7805AB

2 Do poznámkového bloku
VR2 Lineárny regulátor

KA78R12C

1 Do poznámkového bloku
C1, C2, C4, C5 Kondenzátor10uF 50V4 Do poznámkového bloku
C3 elektrolytický kondenzátor470uF 35V1 Do poznámkového bloku
C6, C9 elektrolytický kondenzátor470uF 16V2 Do poznámkového bloku
C7.1-C7.3 Kondenzátor0,1 uF3

Raz som sa rozhodol zostaviť jednoduchý LC meter na pic16f628a a samozrejme ho bolo treba niečím zablikať. Kedysi som mal počítač s fyzickým com portom, ale teraz mám k dispozícii len usb a dosku pci-lpt-2com. Na začiatok som zostavil jednoduchý programátor JDM, ale ako sa ukázalo, nechcel pracovať ani s doskou pci-lpt-com, ani s adaptérom usb-com (nízke napätie signálov RS-232). Potom som sa ponáhľal hľadať programátory usb pic, ale ako sa ukázalo, všetko bolo obmedzené na použitie drahých pic18f2550 / 4550, ktoré som samozrejme nemal, a je škoda používať také drahé MK, ak to robím veľmi zriedka niečo v špičkách (preferujem Avrs, nie je problém ich flashnúť, sú oveľa lacnejšie a zdá sa mi, že sa mi na nich píšu programy ľahšie). Po dlhom hrabaní na internete v jednom z mnohých článkov o programátore EXTRA-PIC a jeho rôznych možnostiach jeden z autorov napísal, že extrapic funguje s akýmikoľvek com portami a dokonca aj s adaptérom usb-com.

Schéma tohto programátora využíva prevodník logických úrovní max232.

Myslel som, že ak použijem usb adaptér, potom by bolo veľmi hlúpe robiť dvojnásobnú konverziu úrovní usb na usart TTL, TTL na RS232, RS232 späť na TTL, ak stačí vziať signály TTL portu RS232 z čipu prevodníka usb-usart.

A tak aj urobil. Zobral som čip CH340G (ktorý má všetkých 8 signálov com-port) a pripojil ho namiesto max232. A to sa aj stalo.

V mojom obvode je jumper jp1, ktorý nie je v extra špičke, dal som to preto, lebo som nevedel, ako sa bude správať TX výstup na úrovni TTL, tak som ho umožnil invertovať na zostávajúcom voľnom prvku NAND a nestratil, ako sa ukázalo, priamo pin TX je logický, a preto je na pine VPP pri zapnutí 12 voltov a počas programovania sa nič nestane (aj keď programovo môžete invertovať TX).

Po zložení dosky prichádza na rad testovanie. A potom prišlo hlavné sklamanie. Programátor bol určený okamžite (s programom ic-prog) a zarobený, ale veľmi pomaly! V podstate sa to dá očakávať. Potom v nastaveniach com portu, ktoré som nastavil najvyššia rýchlosť(128 kilobaudov) začal testovať všetky nájdené programy pre JDM. V dôsledku toho sa PicPgm ukázal ako najrýchlejší. Môj pic16f628a bol plne flashovaný (hex, eeprom a config) plus overenie niekde okolo 4-6 minút (navyše čítanie je pomalšie ako písanie). IcProg funguje tiež, ale pomalšie. Nevyskytli sa žiadne programovacie chyby. Skúšala som flashnúť aj eeprom 24c08, výsledok rovnaký - všetko šije, ale veľmi pomaly.

Závery: programátor je pomerne jednoduchý, nemá drahé súčiastky (CH340 - 0,3-0,5 $, k1533la3 možno vo všeobecnosti nájsť medzi rádiovým odpadom), funguje na akomkoľvek počítači, notebooku (a dokonca môžete použiť tablety s Windows 8/10). Nevýhody: Je to veľmi pomalé. Tiež vyžaduje externé napájanie pre signál VPP. V dôsledku toho, ako sa mi zdalo, pre zriedkavé blikanie vrcholov je to ľahko opakovateľná a lacná možnosť pre tých, ktorí nemajú po ruke starý počítač s potrebnými portami.

Tu je fotografia hotového zariadenia:

Ako hovorí pieseň: "Oslepil som ho z toho, čo bolo." Sada dielov je najrozmanitejšia: smd aj DIP.

Pre tých, ktorí si trúfajú zopakovať schému, ako prevodník usb-uart je vhodná takmer akákoľvek (ft232, pl2303, cp2101 atď.), namiesto k1533la3 je vhodná k555, myslím, že aj séria k155 resp. zahraničný analóg 74als00 bude pravdepodobne fungovať aj s logickými prvkami NOT, ako je k1533ln1. Prikladám moju dosku plošných spojov, ale rozvody tam pre prvky, ktoré boli k dispozícii, si môže každý prekresliť sám.

Zoznam rádiových prvkov

Označenie Typ Denominácia Množstvo PoznámkaskóreMôj poznámkový blok
IC1 ČipCH340G1 Do poznámkového bloku
IC2 ČipK1533LA31 Do poznámkového bloku
VR1 Lineárny regulátor

LM7812

1 Do poznámkového bloku
VR2 Lineárny regulátor

LM7805

1 Do poznámkového bloku
VT1 bipolárny tranzistor

KT502E

1 Do poznámkového bloku
VT2 bipolárny tranzistor

KT3102E

1 Do poznámkového bloku
VD1-VD3 usmerňovacia dióda

1N4148

2 Do poznámkového bloku
C1, C2, C5-C7 Kondenzátor100 nF5 Do poznámkového bloku
C3, C4 Kondenzátor22 pF2 Do poznámkového bloku
HL1-HL4 Dióda vyžarujúca svetloakýkoľvek4 Do poznámkového bloku
R1, R3, R4 Rezistor

1 kOhm

3

Takže je čas študovať mikrokontroléry a potom ich naprogramovať a chcel som na nich zostaviť zariadenia, ktorých obvody sú teraz na internete, no proste more. No nasli sme obvod, kupili ovladac, stiahli firmware .... a co flashovat s cim ??? A tu vyvstáva otázka pre rádioamatéra, ktorý začína ovládať mikrokontroléry - výber programátora! Chcel by som nájsť najlepšiu možnosť, pokiaľ ide o všestrannosť - jednoduchosť obvodu - spoľahlivosť. "Značkové" programátory a ich analógy boli okamžite vylúčené z dôvodu pomerne zložitého obvodu, ktorý obsahuje rovnaké mikrokontroléry, ktoré je potrebné naprogramovať. To znamená, že sa ukazuje „začarovaný kruh“: na vytvorenie programátora je potrebný programátor. Začalo sa teda hľadanie a experimenty! Na začiatku padla voľba na PIC JDM. Tento programátor pracuje z komunikačného portu a je napájaný odtiaľ. Bol vyskúšaný túto možnosť, sebavedomo naprogramované 4 z 10 ovládačov, so samostatným napájaním sa situácia zlepšila, no nie o veľa, na niektorých počítačoch odmietal robiť vôbec čokoľvek a ochranu pred „bláznom“ to neposkytuje. Ďalej sa študoval programátor Pony-Prog. V princípe takmer rovnaký ako JDM.Programátor Pony-prog je veľmi jednoduchý obvod, napájaný počítačovým com portom, v súvislosti s ktorým sa na fórach na internete veľmi často vyskytujú otázky týkajúce sa porúch pri programovaní jedného alebo druhého mikrokontroléra. V dôsledku toho bol výber vykonaný na modeli „Extra-PIC“. Pozrel som sa na diagram - veľmi jednoduchý, kompetentne! Na vstupe je MAX 232, ktorý konvertuje signály sériového portu RS-232 na signály vhodné na použitie v digitálnych obvodov s úrovňami TTL alebo CMOS, nepreťažuje COM port počítača prúdom, nakoľko využíva operačný štandard RS232, nepredstavuje nebezpečenstvo pre COM port Tu je prvé plus!
Funguje s akýmikoľvek portami COM, štandardnými (±12v; ±10v) aj neštandardnými portami COM niektorých modelov moderných notebookov s nízkonapäťovými signálnymi linkami, až do ±5V - ďalšie plus! Podporované bežnými programami IC-PROG, PonyProg, WinPic 800 (WinPic800) a ďalšími - tretie plus!
A to všetko je poháňané vlastným zdrojom energie!
Bolo rozhodnuté – musíme zbierať! Takže v časopise Rádio 2007 č.8 sa našla upravená verzia tohto programátora. Umožňoval programovanie mikrokontrolérov v dvoch režimoch.
Existujú dva spôsoby, ako uviesť mikrokontroléry PICmicro do programovacieho režimu:
1. Pri zapnutom napájacom napätí Vcc zvýšte napätie Vpp (na kolíku -MCLR) z nuly na 12V
2. Pri vypnutom Vcc zvýšte Vpp z nuly na 12 V a potom zapnite Vcc
Prvý režim je hlavne pre zariadenia v ranom vývoji, ukladá obmedzenia na konfiguráciu pinu -MCLR, ktorý v tomto prípade môže slúžiť len ako vstup pre signál počiatočného nastavenia a v mnohých mikrokontroléroch je možné tento pin otočiť do pravidelnej línie jedného z prístavov. To je ďalšie plus tohto programátora. Jeho diagram je uvedený nižšie:

Väčšie
Všetko bolo zostavené na doštičku a testované. Všetko funguje dobre a stabilne, neboli zaznamenané žiadne chyby!
Bol nakreslený podpis pre tohto programátora.
depositfiles.com/files/mk49uejin
všetko bolo zmontované v otvorenom puzdre, ktorého fotografia je nižšie.




Prepojovací kábel bol vyrobený nezávisle od segmentu osemžilového kábla a štandardných konektorov Komovsky, tu nebudú fungovať žiadne konektory nulového modemu, varujem vás! Montáž kábla by sa mala brať opatrne, v budúcnosti sa okamžite zbaviť bolesti hlavy. Dĺžka kábla by nemala byť väčšia ako jeden a pol metra.
Fotografia kábla


Takže programátor je zostavený, kábel tiež, je čas skontrolovať všetku túto hospodárnosť z hľadiska prevádzkyschopnosti, hľadať chyby a chyby.
Najprv si nainštalujte program IC-prog, ktorý si môžete stiahnuť zo stránky vývojára www.ic-prog.com Rozbaľte program do samostatného adresára. Výsledný adresár by mal obsahovať tri súbory:
icprog.exe - súbor shellu programátora.
icprog.sys - ovládač potrebný pre fungovanie pod Windows NT, 2000, XP. Tento súbor musí byť vždy v adresári programu.
icprog.chm - súbor pomocníka.
Nainštalované, teraz by bolo potrebné nakonfigurovať.
Pre to:
1. (Len pre Windows XP): Kliknite pravým tlačidlom myši kliknite na súbor icprog.exe. Vlastnosti >> Karta Kompatibilita >> Začiarknite políčko vedľa položky „Spustiť tento program v režime kompatibility pre:“ >> vyberte „Windows 2000“.
2. Spustite súbor icprog.exe. Vyberte „Nastavenia“ >> „Možnosti“ >> karta „Jazyk“ >> nastavte jazyk na „ruštinu“ a kliknite na „OK“.
Súhlaste s vyhlásením „Teraz musíte reštartovať IC-Prog“ (kliknite na „OK“). Programátorské prostredie sa reštartuje.
Nastavenia" >> "Programátor

1.Skontrolujte nastavenia, vyberte port COM, ktorý používate, kliknite na „OK“.
2. Ďalej „Nastavenia“ >> „Možnosti“ >> vyberte kartu „Všeobecné“ >> začiarknite políčko „Zap. Ovládač NT/2000/XP" >> Kliknite na "Ok" >> ak ovládač ešte nebol vo vašom systéme nainštalovaný, v zobrazenom okne "Potvrdiť" kliknite na "Ok". Nainštaluje sa ovládač a reštartuje sa shell programátora.
Poznámka:
Pre veľmi rýchle počítače môže byť potrebné zvýšiť nastavenie I/O Latency. Zvýšenie tohto parametra zvyšuje spoľahlivosť programovania, zvyšuje sa však aj čas strávený programovaním mikroobvodu.
3. "Nastavenia" >> "Možnosti" >> vyberte záložku "I2C" >> začiarknite políčka: "Povoliť MCLR ako VCC" a "Povoliť záznam bloku". Kliknite na "OK".
4. "Nastavenia" >> "Možnosti" >> zvoľte záložku "Programovanie" >> zrušte začiarknutie položky: "Kontrola po programovaní" a zaškrtnite políčko "Kontrola počas programovania". Kliknite na tlačidlo OK.
Tu je to nastavené!
Teraz by sme chceli otestovať programátor na mieste s IC-prog. A tu je všetko jednoduché:
Ďalej v programe IC-PROG v ponuke spustite: Nastavenia >> Test programátora

Pred vykonaním každej položky metodiky testovania nezabudnite nastaviť všetky „polia“ do ich pôvodnej polohy (všetky „štítky“ sú nezačiarknuté), ako je znázornené na obrázku vyššie.
1.V poli "Zap." nastavte "zaškrtnutie". Data Out“, súčasne by sa v poli „Data Input“ malo objaviť „zaškrtnutie“ a na kontakte (DATA) konektora X2 by sa mala nastaviť úroveň protokolu. "1" (najmenej +3,0 voltov). Teraz zatvorte kontakt (DATA) a kontakt (GND) konektora X2 medzi sebou, pričom značka v poli „Data Input“ by mala zmiznúť, keď sú kontakty zatvorené.
2.Pri nastavení "zaškrtnutia" v poli "Zap. Clocking “, na kontakte (CLOCK) konektora X2 musí byť nastavená úroveň log. „jeden“. (nie menej ako +3,0 voltov).
3.Pri nastavení "zaškrtnutia" v poli "Zap. Reset (MCLR) “, na kontakte (VPP) konektora X3 by mala byť úroveň nastavená na +13,0 ... +14,0 voltov a LED D4 (zvyčajne červená) by sa mala rozsvietiť. Ak je nastavený prepínač režimu do polohy 1 sa rozsvieti LED HL3
Ak počas testovania nejaký signál neprejde, mali by ste starostlivo skontrolovať celú cestu tohto signálu, vrátane kábla pripájajúceho k portu COM počítača.
Testovanie dátového kanála programátora EXTRAPIC:
1. 13 výstup čipu DA1: napätie od -5 do -12 voltov. Pri nastavení "zaškrtnutia": od +5 do +12 voltov.
2. 12 výstup čipu Da1: napätie +5 voltov. Pri zaškrtnutí políčka: 0 voltov.
3. 6 výstupný čip DD1: napätie 0 voltov. Pri nastavení "tik": +5 voltov.
3. 1 a 2 výstupný čip DD1: napätie 0 voltov. Pri nastavení "tik": +5 voltov.
4. 3 výstupný čip DD1: napätie +5 voltov. Pri zaškrtnutí políčka: 0 voltov.
5. 14 výstup čipu DA1: napätie od -5 do -12 voltov. Pri nastavení "zaškrtnutia": od +5 do +12 voltov.
Ak boli všetky testy úspešné, potom je programátor pripravený na prevádzku.
Na pripojenie mikrokontroléra k programátoru môžete použiť vhodné pätice alebo vyrobiť adaptér založený na pätici ZIF (s nulovou lisovacou silou), napríklad tu radiokot.ru/circuit/digital/pcmod/18/.
Teraz pár slov o ICSP - In-Circuit Programming
PIC ovládače.
Pri použití ICSP na doske zariadenia je potrebné zabezpečiť možnosť pripojenia programátora. Pri programovaní pomocou ICSP musí byť k programátoru pripojených 5 signálových liniek:
1. GND (VSS) - spoločný vodič.
2. VDD (VCC) - plus napájacie napätie
3. MCLR" (VPP) - vstup resetovania mikrokontroléra / vstup programovacieho napätia
4. RB7 (DATA) - obojsmerná dátová zbernica v programovacom režime
5. RB6 (CLOCK) Vstup hodín v režime programovania
Zvyšné kolíky mikrokontroléra sa nepoužívajú v režime programovania v obvode.
Možnosť pripojenia ICSP k mikrokontroléru PIC16F84 v puzdre DIP18:

1. Linka MCLR“ je oddelená od obvodu zariadenia prepojkou J2, ktorá sa otvára v režime programovania v obvode (ICSP) a prenáša výstup MCLR do výhradnej kontroly programátora.
2. Linka VDD v režime programovania ICSP je odpojená od obvodu zariadenia prepojkou J1. Je to potrebné, aby sa zabránilo spotrebe prúdu z linky VDD obvodom zariadenia.
3. Linka RB7 (obojsmerná dátová zbernica v programovacom režime) je prúdovo izolovaná od obvodu zariadenia s odporom R1 s nominálnou hodnotou minimálne 1 kOhm. V tomto ohľade bude maximálny vstupný / odtokový prúd poskytovaný týmto vedením obmedzený odporom R1. Ak je potrebné zabezpečiť maximálny prúd, odpor R1 je potrebné nahradiť (ako v prípade VDD) prepojkou.
4. Linka RB6 (synchronizačný vstup PIC v programovacom režime), ako aj RB7, je prúdovo izolovaná od obvodu zariadenia odporom R2 s nominálnou hodnotou minimálne 1 kOhm. Preto maximálny klesajúci/klesajúci prúd poskytovaný týmto vedením bude obmedzený odporom R2. Ak je potrebné zabezpečiť maximálny prúd, odpor R2 je potrebné nahradiť (ako v prípade VDD) prepojkou.
Umiestnenie kolíkov ICSP pre ovládače PIC:


Tento diagram je len orientačný, je lepšie objasniť závery programovania z údajového listu na mikrokontroléri.
Teraz zvážte firmvér mikrokontroléra v programe IC-prog. Zvážime príklad konštrukcie odtiaľto rgb73.mylivepage.ru/wiki/1952/579
Tu je schéma zariadenia


tu je firmware
Bliká ovládač PIC12F629. Tento mikrokontrolér využíva pre svoju prácu oscal konštantu - je to hexadecimálna kalibračná hodnota interného generátora MK, pomocou ktorej MK pri vykonávaní svojich programov hlási čas, ktorý je zaznamenaný v poslednej bunke špičkových údajov. Tento mikrokontrolér pripojíme k programátoru.
Snímka obrazovky nižšie zobrazuje postupnosť akcií v programe IC-prog v červených číslach.


1. Vyberte typ mikrokontroléra
2. Stlačte tlačidlo "Načítať čip".
V okne Kód bude našou konštantou úplne posledná bunka tento ovládač. Každý ovládač má svoju konštantu ! Nemazať, napísať na papier a nalepiť na čip!
Ideme ďalej


3. Stlačte tlačidlo "Otvoriť súbor ...", vyberte náš firmvér. V okne programový kód zobrazí sa kód firmvéru.
4. Ideme nadol na koniec kódu, klikneme pravým tlačidlom myši na poslednú bunku a v ponuke vyberieme "upraviť oblasť", do poľa "Hexadecimálne" zadajte hodnotu konštanty, ktorú ste si zapísali, kliknite na "OK" .
5. Kliknite na „naprogramovať čip“.
Spustí sa proces programovania, ak všetko prebehlo dobre, program zobrazí príslušné upozornenie.
Čip vyberieme z programátora a vložíme ho do zostaveného rozloženia. Zapneme napájanie. Stlačíme tlačidlo štart Hurá funguje! Tu je video blikača v akcii
video.mail.ru/mail/vanek_rabota/_myvideo/1.html
Vyriešené. Ale čo keď máme súbor zdrojový kód v asm assembleri, ale potrebujeme hex súbor firmvéru? Tu je potrebný kompilátor. a je to - toto je Mplab, v tomto programe môžete písať firmvér aj kompilovať. Tu je okno kompilátora


Nainštalujte MPlab
Program MPASMWIN.exe nájdeme v nainštalovanom Mplab, zvyčajne sa nachádza v priečinku - Microchip - MPASM Suite - MPASMWIN.exe
Poďme to spustiť. V okne (4) Prehľadávať nájdeme náš (1) zdrojový kód .asm, v okne (5) Processor vyberieme náš mikrokontrolér, klikneme na tlačidlo Zostaviť a váš firmvér sa zobrazí v rovnakom priečinku, v ktorom ste zadali zdrojový kód. HEX To je to!
Dúfam, že tento článok pomôže začiatočníkom osvojiť si ovládače PIC! Veľa štastia!

Náhodou som sa začal zoznamovať s mikrokontrolérmi s AVR. Mikrokontroléry PIC v súčasnosti, zatiaľ - obídené. Ale napriek tomu majú tiež jedinečné, opakovateľné zaujímavé vzory! Ale tieto mikrokontroléry je tiež potrebné flashovať. Tento článok píšem hlavne pre seba. Aby sa nezabudlo na technológiu, ako bez problémov a nezmyselných strát času flashovať mikrokontrolér PIC.

Ako programovať mikrokontroléry PIC alebo jednoduchý programátor JDM

Pri prvom obvode - dlho a usilovne som sa snažil vyrobiť PIC programátor podľa obvodov nájdených na internete - sa nič nestalo. Je to škoda, ale musel som sa obrátiť na priateľa, aby flashol MK. Ale o to nejde – neustále behať po známych! Ten istý kamarát poradil aj jednoduchú schému, ktorá funguje z COM portu. Ale aj keď som to dal dokopy, stále to nefungovalo. Koniec koncov, nestačí zostaviť programátor - musíte preň nastaviť aj program, ktorý budeme flashovať. A presne toto som nedostal. Celý oblak návodov na internete a len málo z nich mi pomohlo ...

Potom sa mi podarilo flashnúť jeden mikrokontrolér. Ale keďže som to flashoval v podmienkach vážneho nedostatku času, nenapadlo mi uložiť aspoň odkaz na návod. A napokon som to nenašiel ani neskôr. Preto opakujem – článok píšem preto, aby som mal vlastný návod.

Takže programátor pre mikrokontroléry PIC. Jednoduché, aj keď nie 5 drôtov ako pre mikrokontroléry AVR ktoré používam dodnes. Tu je diagram:

Tu vytlačená obvodová doska ().

Konektor COM je prispájkovaný kolíkmi priamo na podložky (hlavnou vecou nie je zamieňať sa s číslovaním). Druhý rad pinov je spojený s doskou malými prepojkami (veľmi nechápavo som povedal, že áno). Skusim dat foto ... aj ked je to strasne (momentalne nemam normalny foťák).
Najhoršia vec je, že pre mikrokontroléry PIC je pre firmvér potrebných 12 voltov. A radšej nie 12, ale trochu viac. Povedzme 13. Alebo 13,5 (mimochodom, odborníci - opravte ma v komentároch, ak sa mýlim. Prosím.). 12 voltov sa ešte dá niekde zohnať. kde je 13? Práve som sa dostal zo situácie – zobral som čerstvo nabitú lítium-polymérovú batériu, ktorá mala 12,6 voltov. No, alebo dokonca štvorčlánková batéria so svojimi 16 voltmi (takto som flashoval jeden PIC - žiadny problém).

Ale to zase odbočujem. Takže - pokyny pre mikrokontroléry firmvéru PIC. Hľadáme program WinPIC800 (žiaľ, jednoduchý a populárny icprog mi nefungoval) a nakonfigurujeme ho podľa obrázka.

Potom otvorte súbor firmvéru, pripojte mikrokontrolér a flashujte ho.

Navrhovaný programátor vychádza z publikácie časopisu Radio č. 2, 2004 „Programovanie moderného PIC16, PIC12 na PonyProg“. Toto je môj prvý programátor, ktorým som doma flashoval PIC čipy. Programátor je zjednodušená verzia JDM programátora, pôvodný obvod má prevodník RS-232 na TTL v podobe čipu MAX232, je všestrannejší, ale nezostavíte ho „na kolene“. Táto schéma nemá č aktívna ingrediencia, neobsahuje vzácne diely a je veľmi jednoduchý, dá sa zložiť bez použitia dosky plošných spojov.

Ryža. jeden: schému zapojenia programátor.

Popis schémy
Schéma programátora je znázornená na obr. 1. Rezistory v obvodoch CLK (taktovanie), DATA (informačné), Upp (programovacie napätie) slúžia na obmedzenie pretekajúceho prúdu. PIC ovládače sú chránené pred poruchou vstavanými zenerovými diódami, takže je dosiahnutá určitá kompatibilita logiky TTL a RS-232. V prezentovanom obvode sú diódy VD1, VD2, ktoré „odoberajú“ kladné napätie COM port vzhľadom na kolík 5 a preniesť ho na napájanie regulátora, vďaka čomu je v niektorých prípadoch možné zbaviť sa dodatočného zdroja energie.

Založenie
V praxi sa nie vždy stane, že tento programátor bude fungovať bez úpravy, od 1. krát, pretože. Prevádzka tejto schémy je veľmi závislá od parametrov COM portu. Mám však, na dvoch materských Gigabyte dosky 8IPE1000 a WinFast pod XP všetko fungovalo hneď. Ak ste príliš leniví na to, aby ste sa zaoberali nefunkčným, zložitejším obvodom programátora, mali by ste sa pokúsiť zostaviť tento. Tu je niekoľko vecí, ktoré môžu ovplyvniť:

Novšia podložka. doske, vývojári venujú týmto portom menšiu pozornosť, pretože tieto porty sú už dávno zastarané. Môžete sa toho zbaviť zakúpením adaptéra USB-COM, aj keď opäť nemusí byť zakúpené zariadenie vhodné. Požadované parametre sú: premenlivé napätie musí zmeniť aspoň -10V až +10V (log. 0 a 1) vzhľadom na 5. kolík konektora. Výstupný prúd musí byť aspoň taký, aby pri pripojení odporu 2,7 kΩ medzi 5. pin a testovaný pin nekleslo napätie pod 10V (sám som také dosky nevidel). Port musí tiež správne určiť napätie prichádzajúce z ovládača, pri napäťovej úrovni blízko 0 V, ale nie vyššej ako 2 V, sa deteguje nula, a teda pri vyššom ako 2 V sa zistí jedna.

Problémy môžu vzniknúť aj zo softvéru.
To platí najmä pre OS LINUX, pretože kvôli prítomnosti emulátorov, ako je víno, nemusia porty VirtualBox fungovať správne a vyžaduje sa od nich veľa funkcií. Tejto problematike sa budem podrobnejšie venovať v inom článku.

Keď poznáme tieto funkcie, začnime stavať.
Na tento účel je veľmi žiaduce mať program ICProg 1.05D.
V ponuke programu je potrebné najskôr vybrať v nastaveniach resp. port (COM1. COM2), vyberte programátor JDM. Potom otvorte okno „Kontrola hardvéru“ v ponuke „Nastavenia“. V tomto menu musíte postupne zaškrtnúť políčka a zmerať napätie na kontaktoch pripojeného konektora pomocou voltmetra. Ak parametre napätia nezodpovedajú norme, bohužiaľ to môže byť príčinou nefunkčnosti, potom budete musieť zostaviť obvod s prevodníkom RS-232 TTL. Po začiarknutí všetkých začiarkavacích políčok sa musíte uistiť, že na zenerovej dióde je napájacie napätie približne 5 V. Ak sú napätia normálne a nie sú žiadne chyby pri inštalácii, všetko by malo fungovať. Vložíme ovládač do zásuvky, otvoríme firmvér, naprogramujeme ho. Začiarkavacie políčka ako „Invertovať údaje von“ nemusia byť povolené (všetky sú nezačiarknuté). Nezabudnite tiež, že niektoré šarže ovládačov nemusia mať úplne štandardné parametre a nie je možné ich flashovať, v takýchto prípadoch sa s týmto programátorom môžete pokúsiť znížiť napájacie napätie z 5V na 3-4V pripojením zodpovedajúceho. zenerova dióda, pozri si na ovládači chybnú aktiváciu režimu LVP (naprogramovanie nízkeho napätia), ako tomu zabrániť, si môžeš prečítať na internete pri konkrétnom type ovládača. Pravdepodobne môžete zvýšiť programovacie napätie problémového ovládača iba skomplikovaním obvodu zavedením zosilňovacieho stupňa so spoločným emitorom napájaným z dodatočného zdroja energie.

Teraz viac o probléme s napájaním zariadenia. Programátor bol testovaný s programami ICProg a konzolovým picprog pod Linuxom, mal by fungovať s každým, kto podporuje JDM, ak pripojíte ďalší zdroj energie (ten je pripojený cez 1kΩ odpor k zenerovej dióde, diódy s odpormi v tomto prípade môžu byť úplne vylúčené). Faktom je, že programátorské riadiace algoritmy pre jednotlivé softvéry sú rôzne, program ICProg je najnáročnejší. Zistilo sa, že v OS Windows tento program na nepoužitom kontakte 2 vyvolal správne napätie zdroj, ten istý program pod emulátorom v Linuxe na inej mat. Doska to už nedokázala, východisko sa však našlo odoberaním energie z programovacieho napätia. Vo všeobecnosti si myslím, že s ICProgom môžete tento programátor používať bez dodatočného napájania. Pri inom softvéri to pravdepodobne nebude zaručené, napríklad z „natívneho“. Úložiská Ubuntu picprog bez napájania jednoducho nerozpozná programátor a zobrazí správu „JDM hardware nenájdené". Pravdepodobne buď prijíma nejaké dáta bez použitia programovacieho napätia, alebo to robí príliš rýchlo, takže filtračný kondenzátor sa ešte nestihol nabiť.