Sériový programátor 89S51
Programátorem je možné naprogramovat procesor 89S51 a
89S52.Programovací algoritmus je u obou procesorů téměř totožný. V
případě potřeby je možné pro příbuzné procesory(z hlediska
programování) program upravit.Zdrojové kódy jsou k dispozici níže.
Tento programátor je k PC připojen přes sériový port RS232.Obsahuje
procesor 89S2051, kterému jsou posílána data přes RS232( k převodu
úrovní je použit obvod MAX232) a tyto data jsou posílána přes
třístavový oddělovací obvod 74HCT245. LED diody zobrazují aktivitu na
lince (RxD,TxD), což je užitečné pro lokalizaci případné chyby. Dále
je zobrazována aktivita výstupů programátoru.V klidovém stavu jsou
výstupy ve stavu vysoké impedance, takže programátor je v podstatě
odpojen, k připojení dochází pouze během programování nebo čtení
programovaného obvodu.
Programátor je možné napájet buď z programovaného obvodu, nebo z
napětí většího než cca 6-7 V (je použit stabilizátor 7805, tj. pro
napájení může být použito napětí cca 7-15 V. ).
|
Výkres plošného spoje DPS a schéma programátoru
Zdrojový kód k SW pro použitý
procesor 80C2051. Procesor v podstatě pouze přijímá byty z PC přes
RS232. Přijatý byte je odeslán do programovaného procesoru a zároveň
je přijatá odpověď z procesoru odeslána do PC přes signály MOSI,MISO a
SCK. Během programování je zároveň resetován procesor (k tomu je
použit signál RST). K naprogramování procesoru 89C2051 lze použít např
paralelní programátor připojovaný k PC prostřednictvím paralelního
portu.Pro snadné spuštění programátoru je určen soubor AtmPrg.bat,který
programátoru umožní s využitím knihovny AllowIo.exe přístup k
paralelnímu portu.Součástí souboru je program pro převod formátu hex
na formát bin.Všechny potřebné soubory jsou součástí zip archivu (vlastní program pro
programátor je v souborech file.hex a v binární formě OUT.BIN).
Program pro komunikaci s PC
je spíše polotovar, nicméně pro základní použití - čtení a
programování, použitelný. V případě potřeby je možné jej upravit. Zdrojové kódy jsou vytvořeny v demoverzi C++
Builderu.
Programátor není příliš komfortní, nicméně funkční. Byl vytvořen
poměrně rychle a podnětem k jeho výrobě byly nepříliš dobré zkušenosti
s na internetu volně dostupnými programátory.
Diody D15 a D16 jsou použity k zobrazování stavu na lince RS232,jedna
z diod indikuje připojené napájení a ze zbývající osmice diod je 5
diod použito k indikaci stavu signálů,které jsou výstupními signály z
hlediska procesoru a 3 diody jsou použity k indikaci stavu vstupních
signálů procesoru programátoru (tj. výstupních signálů programovaného
procesoru).
V módu programování musí být propojen jumper J6.Při propojení J5 je
zobrazován stav signálů led diodami. Pokud je jumper J6 rozpojen, část
přijatého bajtu přes RS2323 je pak zobrazena na pětici LED diod, tento
režim slouží k testování linky RS232.
|