Popis činnosti:
Programovanie sa vykonáva pomocou štyroch signálov RST, CLK, MISO, MOSI. Signál RST (okrem iného) aktivuje programovací režim aktívnou logickou úrovňou. Tá sa lýši podľa typu mikroradiča. Obvody kompatibilné a 8051 majú aktívnu úroveň logickú nulu a obvody z rodiny AVR majú aktívnu úroveň RESET logickú jednotku. Aktívna úroveň RESET spôsobí zastavenie normálnej činosti mikroradiča a jeho vynulovanie do východiskového stavu. Okrem iného sa počas celej doby RESET deaktivujú všetky výstupné vývody a prejdú do neaktívneho stavu. Synchronné sériové rozhranie ktoré je zabudované v mikroradiči sa nastaví do režimu slave a čaká na inštrukciu, ktorá povoľuje sériové programovanie. Celý protokol je popísaný v dokumentácii každého obvodu. Uvediem odkaz napríklad na dokumentáciu AT89S8252 kde popis programovania začína v kapitole Serial Downloading. Pri prenose sa používajú signály MISO a MOSI na prenos dát a signál CLK na generovanie hodinového signálu. Ide o synchrónny obojsmerný sériový prenos. Správne priebehy signálov sú generované paralelným portom PC prostredníctvom vhodného programovacieho software. Úlohou programátora je iba tieto signály zosilniť a vhodným spôsobom aktivovať a deaktivovať tak, aby činnosť programovaného zariadenia bola čo najmenej programátorom ovplyvňovaná. K paralelnému portu sa programátor pripája konektorom X1.
Programátor obsahuje obvod 74LS244 čo je osembitový trojstavový budič. Pri programovaní zosilňuje a oddeľuje digitálny signál z paralelného portu. V čase keď sa neprogramuje dokáže uviesť signály do vysokej impedancie aby programátor neovplyvňoval činnosť mikroradiča v obvode. Zariadenie s mikroradičom musí byť tak konštruované, aby počas aktívneho signálu reset neovplyvňovalo signály MISO, MOSI, CLK. Najlepšie je ak tieto signály nie sú v zariadení vôbec použité.
Obvod 74LS244 sa skladá z dvoch rovnakých častí IC1a a IC1b. Každá časť má samostatný povoľovací vstup EN, ktorý uvádza výstupy Q0 až Q3 do neaktívneho stavu vysokej impedancie. Toto umožnuje nezávislé riadenie neaktívneho stavu signálov MISO, MOSI, CLK a zvášť signálu RST. V prípade potreby je možné blokovať signály MISO, MOSI, CLK, ale signál RST nechať naďalej povolený. To dovoľuje, aby RESET mikroradiča bol neustále ovládaný pomocou programátora. Tak sa môže vykonávať reset pripojeného zariadenia z PC (čo je veľmi pohodlné) a súčasne neovplyvňovať signály MISO, MOSI, CLK.
Signály sú vyvedené na 10 pinový konektor X2, do ktorého sa zasúva plochý 10 žilový kábel. Jednotlivé signály sú navzájom tienené vodičom pripojeným na GND.
K napájaniu je potrebné priviesť z programovanej aplikácie napájacie napätie 5V. Programátor je chránený proti prepólovaniu napájacieho napätia diodou D1. Kondenzátor C1 blokuje napájacie napätie.