DEVx51 Vývojový přípravek

Motivace: potřeba rychle (i několikrát za sebou) vyzkoušet program pro x51 bez nutnosti vypalovat EPROM či FLASH pamět a nutnosti manipulace s obvodem v němž bude uložen testovaný program. A pokud možno co nejméně snížit použitelnost pro různé aplikace.

Řešení:

  • použít obvod x51 s rozhraním SPI (programování v aplikaci), např.: AT89S8252, není to špatné, žádná omezení, ale není nejlevnější
  • použít některý z prodávaných vývojových kitů, omezení dané zapojením, obsahuje většinou slušný obslužný software, ale cena je cca okolo 5kKč
  • použít přípravek DEVx51, viz dále

Funkce:
Ze schematu je vidět připojená externí pamět RWM 32kBx8, která je pomocí IO4A-B mapována jako externí pamět programu i dat. To sice přináší nevýhodu, ale ne nepřekonatelnou, výhodou je, že do stejného adrsního prostoru lze zapsat program jako data, a ta číst i jako program. Pro další externí obvody nám zůstává adresní prostor horních 32kB.

Klikni pro zvetseni

Seznam součástek

Sekvence použití:

  • přepínač S1 ve výchozí poloze, určuje použít vnitřní pamět programu
  • zapneme (nebo stačí reset pomocí tlačítka S0)
  • pomocí interního programu nahrajeme přes sériové rozhraní DATA do externí RWM (vlastně námi vyvíjený program)
  • pošleme povel ukončení, vnitřní program skočí na adresu 7FF0h, kde bude instrukce JMP $ (skok sám na sebe), tím dojde automaticky k používání externí paměti programu (jednochipy x51 mají běžně 2, 4, 8 a 20kB pro vnitřní program)
  • přepínač S1 přepneme do polohy vnější pamět programu
  • stikneme tlačítko S0 a už nám běží náš uploadnutý program

Povely a odpovědi uploadovacího programu: (dle diagramu programu)

  • po zapnutí posílá znaky 55h AAh 55h ....., až do chvíle než obdrží znak 'S' jako start, na který odpoví znakem 'N' jako next-další a je připraven přijímat další příkazy
  • zápis byte na adresu: 'W' jako write-zapiš, horní byte adresy, dolní byte adresy, data, pak odpoví znakem 'N'
  • čtení byte z adresy: 'R' jako read-čti, horní byte adresy, dolní byte adresy, pak odpoví obsahem byte na zaslané adrese
  • jinak pošle znak 'E' jako error-chyba
  • odskok na adresu 7FF0h, kde bude nekonečná smyčka sama na sebe se provede příkazem 'G', jako go-jdi

Download:

  • DEVx51.asm - zdrojové texty pro uploadovací program do jednochipu
  • DEVx51.hex - přeložený program
  • seznam.txt - seznam potřebných součástek
  • Devx51.exe - jednoduchý klient pro upload programu, sám zapíše na adresu 7FF0h instrukce nekonečné smyčky před posláním příkazu 'G'
Předešlá verze je určena pro stavbu na kontaktním poli, já jsem to měl na kontaktním poli postaveno 1,5 roku a to si to každou chvíli někdo na koleji půjčoval, a vše bylo bez problémů.
Nová verze je obohacena o LED monitory portů a je postavena na desce plošných spojů.

Download pro novější verze (plošný spoj a monitor portů):