Jste zde

LudaSPI programátor pro AT89LS8252

LudaSPI je program pro PC, který umožnuje naprogramování AT89LS8252 po sériovém rozhraní ISP. Tento

jednočip je x51 kompatibilní. K naprogramování potřebujete pouze RS232 a tři zenerovy diody.

Proč právě AT89LS8252

  • 8-Bit Microcontroller with 8K Bytes Flash AT89LS8252 Features:
  • Compatible with MCS-51™Products
  • 8K Bytes of In-System Reprogrammable Downloadable Flash Memory
  • SPI Serial Interface for Program Downloading
  • *Endurance: 1,000 Write/Erase Cycles
  • 2K Bytes EEPROM
  • *Endurance: 100,000 Write/Erase Cycles
  • 2.7V to 6V Operating Range
  • Fully Static Operation: 0 Hz to 12 MHz
  • Three-Level Program Memory Lock
  • 256 x 8 bit Internal RAM
  • 32 Programmable I/O ULnes
  • Three 16 bit Timer/Counters
  • Nine Interrupt Sources
  • Programmable UART Serial Channel
  • SPI Serial Interface
  • Low Power Idle and Power Down Modes
  • Interrupt Recovery From Power Down
  • Programmable Watchdog Timer
  • Dual Data Pointer
  • Power Off Flag

Popis propojení AT89LS8252 s PC

Jednočipový mikropočítač umístíme například do nepájivého pole. Musíme zajistit jeho napájení vhodným zdrojem. O programování  se stará jednočip sám, musí proto běžet s připojeným krystalem. Vzorový obrázek programování se chématem jak zapojit diody omezující napětí z RS232 na 5V a na který pin co připojit.

Popis programu LudaSPI

Na začátku vyberete buď to (choose source file) program psaný v jazyku, který potřebuje ješte kompilaci do binární podoby (vhodné pro vypalovaní do jednočipu a ten poté zkompilujete tlačítkem compile source). Nebo již máte přímo binární soubor a tak jej můžete otevřít přímo (choose binary file).

Dále volíte COM1 případně COM2, podle toho, kam jste připojili jednočip. Následuje volba cílové paměti pro vaš binární soubor, neboť tento procesor obsahuje jak paměť pro program (Code memory) tak paměť pro data(Data memory).

Pokud máte již vše nastaveno, stačí odblokovat check button (writing blocked) a poté zvolit vypalování (Write and Verify).
Dále je možné nastavit příslušné lockBity (viz dokumentace níže) A také smazat celý čip.

Pomocí (Read Chip Memory) lze uložit obsah celé paměti na disk (Save Binary File) (podle toho kterou paměť zvolíte). Zde se čte vždy celá délka paměti, narozdíl od přesné délky vypalovaného souboru.



Do LOGu je zapisována každá operace a její výsledek. Jelikož mnoho kompilerů produkuje soubory, které je nutno ještě dodatečne konvertovat (např HEX->BIN ...), lze ješte definovat tento konvertor. Všechny tyto pomocné programy (compiler, konvertor) musí být v aktuálním adresáři. Nastavení se neukládá. Je zde nutné specifikovat přípony souborů vstupních i výstupních. Check boxy (enabled) je možné aktivace či deaktivace příslušného pomocného programu. Pomocné programy se zavolají při stisku volby kompilace (Compile source) na předchozí stránce.



Hlavním problémem který při konstrukci nastal, je časté selhání procesu komunikace mezi PC a jednocipem. Této chyby je si vědom i výrobce. Tuto chybu jsem v podstatě odstranil kontrolovaným čtením a při zapisovýní do paměti jednočipu. Pokud chyba nastane, opakuje se inicializace komunikace a tím se ve 100% případů provede úspěšný zápis. Pokud by se tato situace opakovala neúnosně často a což by znemožnilo uspěšné dokončení operace, uživatel se vždy o tomto stavu doví.

Tuto metodu však nelze použít pro oveření ČTENÍ obsahu paměti jednočipu a to je proto VŽDY bez záruky s častou frekvencí chyb ze strany jednočipu!!!
 

DOWNLOAD, Řešené problémy, odkazy na další zdroje

     

    Luděk Holoubek
Hodnocení článku: