Programátor — hardwarově-softwarové zařízení určené pro zápis/čtení informací do paměťového zařízení pouze pro čtení (jednorázový zápis, ROM, vnitřní paměť mikrokontrolérů a PLC).
Takto vypadá programátor Automatický True-USB PRO 40pin Willem GQ-4X
Klasifikace programátora:
Podle typu čipu
*Programování ROM čipů (UV erase ROM, EPROM, flash paměť).
*Programování vnitřní paměti mikrokontrolérů.
*Programování FPGA.
Jeden z nich SEEProg SPI v.2.25 USB napájení
Univerzální programátoři mohou podporovat všechny výše uvedené typy.
Podle složitosti
Potřebujete-li jednou naprogramovat mikrokontrolérové zařízení, radioamatéři si vystačí s jednoduchým programátorem připojeným na COM nebo LPT port. Například nejjednodušší programátor pro čipy AVR je kabel o šesti vodičích a čtyřech odporech (tzv. programátor PonyProg).
Ti fandové, kteří vyvíjejí mikroprogramy nebo vyrábějí své obvody ve velkém, používají složitější programátory – taková zařízení často obsahují vlastní mikrokontrolér. Takové programátory jsou výhodné, protože po provozu přepnou své výstupy do stavu Z a programovaný obvod lze testovat bez vypnutí programátoru. Takoví programátoři zpravidla pracují s jednou nebo dvěma rodinami čipů.
Amatérští návrháři programátorů jsou si vědomi „problému s kuřaty a vejci“ – pokud je v obvodu programátoru mikrokontrolér, musí být naprogramován v nepřítomnosti hotového programátoru. V takových případech obvykle předají čip profesionálům nebo postaví jednoduchý programátor pro připojení k portu COM nebo LPT počítače.
Projekční kanceláře a laboratoře používají univerzální programátory. Protože v takových zařízeních může každý z pinů konektoru (a těchto pinů mohou být až stovky) dodávat mikroobvodu napětí od 0 do 27 V s přesností 0,1 voltu a frekvencí až 40 MHz, mohou být univerzální programátory velmi drahé. – až několik tisíc dolarů. Ale když se objeví nový mikroobvod, stačí přidat jeho podporu na softwarové úrovni.
Připojením mikroobvodu
Paralelní programátory obsahují konektor, do kterého se zasune programovatelný mikroobvod. In-circuit ty jsou vhodné pouze pro ty mikroobvody, které podporují in-circuit programování, ale umožňují flashovat čip bez jeho vyjmutí ze zařízení.
Při nákupu paralelního programátoru byste měli věnovat pozornost kvalitě konektoru, do kterého je mikroobvod instalován. Běžný jednorázový konektor nevydrží dlouho; programátor musí mít kleštinové konektory – nebo ještě lépe ZIF. Drahé programátory mají několik konektorů pro různé typy případů.
Připojením k počítači
První programátoři byli samostatní – pro psaní firmwaru byla klávesnice nebo patch panel. S rozšířením počítačů byly tyto programátory zcela nahrazeny programátory připojenými k počítači – speciální program (také nazývaný programátor) přenáší firmware z počítače a programátor jej může pouze zapisovat do paměti čipu.
Pro připojení programátorů lze použít následující:
1.Sériový port.
2.Paralelní port.
3. Deska specializovaného rozhraní (ISA nebo PCI).
4.USB.
5.Ethernet.
Stojí za zmínku, že v nejjednodušších paralelních a sériových programátorech musí řídicí software přímo řídit logickou úroveň na pinech portu (v elektronickém žargonu „drygonozhestvo“ nebo bitbang). Takové přímé ovládání je ve Windows NT zakázáno, toho je dosaženo instalací specializovaného ovladače; Prostřednictvím adaptérů USB→COM pracují programátoři bitbang extrémně pomalu (několik až desítky bytů za sekundu). Programátory mikrokontrolérů plně podporují protokol portů COM nebo LPT a jsou tedy bez těchto nedostatků.
Specializované desky se před příchodem USB používaly jen zřídka, protože umožňovaly dosáhnout maximální rychlosti výměny dat. Zároveň však učinili programátor stacionárním.
Moderní programátory se připojují přes USB (pouze jednoduchá, levná provedení používají COM nebo LPT porty) Ale ačkoli se jedná o umírající protokol, programátory na něm založené jsou levné a mají velmi slušné možnosti. Toto je příklad našich nejoblíbenějších programátorů v našem internetovém obchodě, zde jsou některé z nich Willem PCB5-F V2.0. и Willem PCB5-F V2.1 Flash Gold
Pro další funkce
(Zde jsou uvedeny hardwarové i softwarové funkce.)
1. Dostupnost softwaru pro běžné platformy (obvykle Windows a Linux; ostatní operační systémy jsou mezi vývojáři nepopulární).
2.Před pokusem o vymazání čipu zkontrolujte, zda je připojení správné.
3.Kontrola provozuschopnosti programátoru.
4.JTAG adaptéry, vhodné pro programování i ladění firmwaru.
5. Samostatné (polní) programátory jsou kompaktní velikosti a obsahují vnitřní paměť pro uložení firmwaru. Tyto programátory jsou navrženy pro servis zařízení přímo v místech, kde je instalováno (někdy těžko dostupné).
6. Vestavěný HEX editor, který umožňuje opravit informace zaznamenané v čipu.
7. Možnost samostatné aktualizace firmwaru samotného programátoru.
8.Schopnost jedním kliknutím tlačítka provést určitou sekvenci akcí – např. mazat, kontrolovat mazání, zapisovat, kontrolovat správnost záznamu a nastavovat konfigurační bity (tzv. automatické programování).
Programátoři pro hromadné programování mohou využít skriptovací jazyk, ve kterém je možné implementovat například automatické zvyšování sériových čísel – tedy každý čip bude mít jedinečné číslo.
Součástí programátorů jsou také adaptéry, zde si můžete vybrat adaptér pro váš programátor
Co je to adaptér?
Nástavec – speciální schéma pro párování různých typů rámců, hlubokých krytů, které umožňuje sladit signály různých zařízení, používané především pro přepínání a společný vstup-výstup dat.
Programátor — hardwarově-softwarové zařízení určené pro zápis/čtení informací do paměťového zařízení pouze pro čtení (jednorázový zápis, ROM, vnitřní paměť mikrokontrolérů a PLC [1]).
Klasifikace programátorů
Podle typu čipu
- Programování ROM čipů (UV erase ROM, EPROM, flash paměť).
- Programování vnitřní paměti mikrokontrolérů.
- Programování FPGA.
Univerzální programátoři mohou podporovat všechny výše uvedené typy.
Podle složitosti
Pokud potřebuje radioamatér jednou naprogramovat mikrokontrolérové zařízení, je možné si vystačit s jednoduchým programátorem připojeným na COM nebo LPT port. Například nejjednodušší programátor pro čipy AVR je kabel o šesti vodičích a čtyřech odporech (tzv. programátor PonyProg) [2].
Pro radioamatéry podílející se na vývoji firmwaru existují složitější programátory – taková zařízení často obsahují vlastní mikrokontrolér. Takové programátory jsou výhodné, protože po provozu přepnou své výstupy do stavu Z a programovaný obvod lze testovat bez vypnutí programátoru. Takoví programátoři zpravidla pracují s jednou nebo dvěma rodinami čipů [3]. Při samostatné výrobě programátoru této třídy může nastat „problém slepice a vejce“ – pokud obvod programátoru obsahuje mikrokontrolér, musí být naprogramován v nepřítomnosti hotového programátoru [3]. Chcete-li to vyřešit, musíte čip předat majiteli hotového programátoru nebo vyrobit jednoduchý programátor pro připojení k portu COM nebo LPT počítače.
Projekční kanceláře a laboratoře používají univerzální programátory. Protože v takových zařízeních může každý z pinů konektoru (a těchto pinů mohou být až stovky) dodávat mikroobvodu napětí od 0 do 27 V s přesností 0,1 voltu a frekvencí až 40 MHz, mohou být univerzální programátory velmi drahé. – až několik tisíc dolarů. Ale když se objeví nový mikroobvod, stačí přidat jeho podporu na softwarové úrovni [zdroj neuveden 861 dní].
Připojením mikroobvodu
- Paralelní.
- V okruhu.
Paralelní programátory obsahují konektor, do kterého se zasune programovatelný mikroobvod. In-circuit ty jsou vhodné pouze pro ty mikroobvody, které podporují in-circuit programování, ale umožňují flashovat čip bez jeho vyjmutí ze zařízení.
Při nákupu paralelního programátoru byste měli věnovat pozornost kvalitě konektoru, do kterého je mikroobvod instalován. Běžný jednorázový konektor nevydrží dlouho; programátor musí mít kleštinové konektory – nebo ještě lépe ZIF. Drahé programátory mají několik konektorů pro různé typy případů.
Připojením k počítači
První programátoři byli samostatní – pro psaní firmwaru byla klávesnice nebo patch panel. S rozšířením počítačů byly tyto programátory zcela nahrazeny programátory připojenými k počítači – speciální program (také nazývaný programátor) přenáší firmware z počítače a programátor jej může pouze zapisovat do paměti čipu.
Pro připojení programátorů lze použít následující:
- Sériový port.
- Paralelní port.
- Specializovaná deska rozhraní (ISA nebo PCI).
- Usb
- Ethernet
Za zmínku stojí, že u nejjednodušších paralelních a sériových programátorů musí řídicí software přímo řídit logickou úroveň na pinech portu (v elektronickém žargonu „drygonozhestvo“ resp. bitbang). Takové přímé ovládání je ve Windows NT zakázáno, toho je dosaženo instalací specializovaného ovladače; Prostřednictvím adaptérů USB→COM pracují programátoři bitbang extrémně pomalu (několik až desítky bytů za sekundu). Programátory mikrokontrolérů plně podporují protokol portů COM nebo LPT a jsou tedy bez těchto nedostatků.
Specializované desky se před příchodem USB používaly jen zřídka, protože umožňovaly dosáhnout maximální rychlosti výměny dat. Zároveň však učinili programátor stacionárním.
Moderní programátory se připojují přes USB (pouze jednoduchá, levná provedení využívají COM nebo LPT porty). Vysoce výkonní průmysloví programátoři používají Ethernet [příklad?].
Pro další funkce
(Zde jsou uvedeny hardwarové i softwarové funkce.)
- Dostupnost softwaru pro běžné platformy (obvykle Windows a Linux; ostatní operační systémy jsou mezi vývojáři nepopulární).
- Před pokusem o vymazání mikroobvodu zkontrolujte správné připojení.
- Kontrola provozuschopnosti programátoru.
- JTAG adaptéry, vhodné pro programování i ladění firmwaru.
- Samostatné (polní) programátory jsou kompaktní velikosti a obsahují vnitřní paměť pro uložení firmwaru. Tyto programátory jsou navrženy pro servis zařízení přímo v místech, kde je instalováno (někdy těžko dostupné).
- Vestavěný HEX editor, který umožňuje opravit informace zaznamenané v čipu.
- Schopnost nezávisle aktualizovat firmware samotného programátoru.
- Možnost provést jedním kliknutím tlačítka určitou sekvenci akcí – například vymazat, zkontrolovat smazání, zapsat, zkontrolovat správnost záznamu a nastavit konfigurační bity (tzv. automatické programování).
- Programátoři pro hromadné programování mohou využít skriptovací jazyk, ve kterém je možné implementovat například automatické zvyšování sériových čísel – tedy každý čip bude mít jedinečné číslo.
reference
- Programátor pro mikrokontroléry AVR
- Programátorský čip Prog 48
Poznámky
- ↑Programátoři a počítače jako programátoři
- ↑http://atmel.moy.su/publ/13-1-0-89; не указаны токоограничивающие резисторы (на всех проводах, кроме GND) и внешнее питание (обычно берётся с USB).
- ↑ 12fischl.de – USBasp – USB programátor pro regulátory Atmel AVR
8bitové MCS-51 • MCS-48 • PIC • AVR • Z8 • H8 • COP8 • 68HC08 • 68HC11 16bitové MSP430 • MCS-96 • MCS-296 • PIC24 • MAXQ • Nios • 68HC12 • 68HC16 32bitové ARM • MIPS • AVR32 • PIC32 • 683XX • M32R • SuperH • Nios II • Am29000 • LatticeMico32 • MPC5xx • PowerQUICC • Parallax Propeller