Mikrořadiče a jejich aplikace v jednoduchých mikropočítačích (4)

Pavel Tišnovský 17. 8. 2010

V dnešní části seriálu o architekturách počítačů dokončíme popis osmibitového mikrořadiče Intel 8051, neboli MCS-51. Popíšeme si kity, které lze při programování a ladění těchto mikrořadičů použít, mikropočítače založené na MCS-51 i to, jakým způsobem je u nich řešeno zobrazování informací na (textových) displejích z tekutých krystalů (LCD).

Obsah

1. Vývojové kity s mikrořadičem MCS-51

2. Prapředek vývojových kitů pro MCS-51 – Intel SDK-51

3. Displej vývojového kitu SDK-51, konfigurace jeho pamětí a práce s breakpointy

4. Jednoduché mikropočítače založené na MCS-51

5. Příklad amatérsky zkonstruovaného mikropočítače s MCS-51

6. Ovládání textových LCD mikrořadičem

7. Řadič textových displejů HD44780

8. Obsah následující části seriálu

9. Odkazy na Internetu

1. Vývojové kity s mikrořadičem MCS-51

V dnešní části seriálu o architekturách počítačů si popíšeme, jakým způsobem byly konstruovány vývojové kity a taktéž více či méně sofistikované mikropočítače, které byly založené na osmibitovém mikrořadiči Intel 8051 nebo na některé jeho variantě (například čipu Intel 8031). Kromě standardních způsobů použití tohoto mikrořadiče si řekneme například i to, jakým způsobem se někteří konstruktéři mikropočítačů snažili o programové generování obrazového signálu s využitím MCS-51 (přesněji řečeno některé jeho modernější a tím pádem i rychlejší varianty). Začněme nejdříve u vývojových kitů, tj. více či méně složitých hardwarových nástrojů s mikrořadičem 8051, které umožňují přímé spouštění a ladění programů na tomto mikrořadiči, většinou i s možností zobrazení stavu běžících programu pomocí LED, alfanumerických displejů či dokonce displejů zobrazujících rastrová data. Vývojových kitů pro platformu 8051 již dnes existuje nepřeberné množství, od těch velmi jednoduchých, které se příliš neliší od prostých programátorů EPROM, EEPROM či Flash pamětí umístěných na mikrořadičích, až po vývojové kity vybavené plnohodnotnou klávesnicí, několikařádkovým displejem a velkou sadou různých periferních zařízení. Tyto kity se již v některých případech podobají plnohodnotným mikropočítačům.

Obrázek 1: Jeden z dostupných vývojových kitů s mikrořadičem 8051, který je vybavený klávesnicí, dvouřádkovým displejem, sériovým portem kompatibilním s RS-232C, programátorem pamětí EPROM i EEPROM a samozřejmě i monitorem, tj. základním programovým vybavením, pomocí něhož může uživatel s vývojovým kitem pracovat.

Velmi oblíbené jsou mezi programátory vývojové kity, které pro komunikaci s uživatelem využívají běžný osobní počítač (PC), který je s kitem propojen většinou pomocí sériového portu (někdy též přes USB). Jedním z těchto typů kitů je i tuzemský kit RD2 (pozor – nejedná se o Red Dragon 2 :-) vybavený moderní rychlou variantou mikrořadiče 8051 s pamětí Flash, indikačními LED, tlačítkem RESET, konektorem typu DB-9 pro připojení kitu k osobnímu počítači s využitím sériového portu, desetipinovým konektorem pro připojení displeje z tekutých krystalů (LCD), dvacetipinovým konektorem, na nějž jsou vyvedeny dva volné porty mikrořadiče a konečně 40pinovým konektorem, na který jsou bez dalších úprav vyvedeny všechny vstupní či výstupní signály 8051. Jednou z předností takto pojatého vývojového kitu je jeho jednoduchá a tím pádem i poměrně levná konstrukce. Na druhé straně spektra stojí vývojové kity pracující samostatně, tj. bez nutnosti používat osobní počítač. Dnes již klasického zástupce tohoto typu si představíme v následujících dvou kapitolách.

Obrázek 2: Tuzemský vývojový kit RD2.

2. Prapředek vývojových kitů pro MCS-51 – Intel SDK-51

Prvním vývojovým kitem, který se zejména v minulosti používal pro tvorbu programů určených pro osmibitové mikrořadiče řady MCS-51, byl kit vyráběný přímo firmou Intel pod názvem Intel SDK-51. Mimochodem: firma Intel svým zákazníkům nabízela i další podobně nazvané vývojové kity určené pro mnohé typy svých osmibitových i šestnáctibitových mikrořadičů a mikroprocesorů; například je jedná o kity Intel SDK-80 s mikropro­cesorem 8080, Intel SDK-85 s procesorem 8085, Intel SDK-86 použitelný s procesory 8086 i 8088 (právě tento slavný procesor zahájil vznik platformy PC) atd. Vývojový kit Intel SDK-51 začal být zákazníkům nabízen již v roce 1982, tj. cca dva roky po zahájení výroby vlastního mikrořadiče MCS-51. Jednalo se o velmi dobře vybavený vývojový nástroj (čemuž ovšem odpovídala i jeho poměrně vysoká cena – 1200 dolarů), který byl navíc značně flexibilní, protože umožňoval některé své moduly překonfigurovat, popř. přímo odpojit, což bylo důležité ve chvíli, kdy programátor potřeboval nějaký pin mikrořadiče MCS-51 využít pro svoje účely, například pro připojení vlastního periferního zařízení.

Obrázek 3: Vývojový kit Intel SDK-51.

Pojďme si nyní říci základní technické parametry tohoto vývojového kitu. Jeho nejdůležitější součástkou byl samozřejmě samotný mikrořadič, zde se konkrétně jednalo o variantu Intel 8031, tj. o mikrořadič se 128 bajty interní paměti údajů (RAM), který však nebyl vybaven žádnou interní pamětí programu (ROM). Hodinová frekvence 12 MHz byla řízena běžným krystalovým oscilátorem. Vývojový kit SDK-51 dále obsahoval plnohodnotnou alfanumerickou klávesnici (podobnou klávesnici ZX-80), která se rozložením kláves příliš nelišila od klávesnic osmibitových mikropočítačů (a vlastně ani od IBM PC XT, mimochodem klávesa Control byla umístěna nad levou klávesou Shift, což je mnohem přirozenější a praktičtější umístění než pod touto klávesou). Jedním z viditelných rozdílů byla absence kurzorových kláves (které stejně neměly valný význam) a navíc přítomnost dvanácti funkčních kláves. Zajímavostí byla zdvojená klávesa RESET. Stlačení (třeba i neúmyslné) pouze jedné klávesy RESET nemělo žádný efekt, pouze obě klávesy stlačené současně inicializovaly kit do původního stavu (možná že právě zde leží prvopočátky známého „trojhmatu“?).

Obrázek 4: Další varianta vývojového kitu Intel SDK-51.

3. Displej vývojového kitu SDK-51, konfigurace pamětí a práce s breakpointy

Zajímavým a z dnešního pohledu možná poněkud neobvyklým způsobem byl řešen displej, který dokázal zobrazit jeden textový řádek s maximálně 24 znaky. Jednotlivé znaky byly zobrazovány pomocí segmentů složených z LED. Jedná se o jednu z rozšířených variant klasického sedmisegmentového displeje, který ovšem nedokáže (čitelně) zobrazit všechny potřebné znaky. Z tohoto důvodu se původních sedm segmentů rozšířilo na segmentů šestnáct, viz následující ilustrační obrázek.

Obrázek 5: Možnosti zobrazení znaků na šestnáctisegmen­tovém displeji.

Podle podobnosti s křížem na vlajce Spojeného království (spojené různobarevné kříže Anglie, Skotska a Irska) se tomuto typu displeje také přezdívá Union Jack. Z 216 kombinací, které je možné na tomto typu displeje zobrazit, bylo ve vývojovém kitu SDK-51 použito pouze 63 kombinací představujících znaky velké abecedy, číslice a některé speciální znaky (zavináč používaný v assembleru 8051 atd.). O tom, jakým způsobem se jednotlivé znaky zobrazovaly, si můžete udělat představu po shlédnutí následujících obrázků:

Obrázek 6: Znaková sada použitá vývojovým kitem SDK-51.

Obrázek 7: Speciální znaky ve znakové sadě vývojového kitu SDK-51.

K mikrořadiči Intel 8031 byla připojena externí paměť RAM o kapacitě jeden kilobajt (použitá ovšem pro programy, nikoli pro data), která byla sestavená z dvojice paměťových modulů 2114, což je naprosto stejná konfigurace, jakou se pyšnil například i československý mikropočítač PMI-80. Kromě této paměti byla k mikrořadiči připojena i externí paměť ROM mající kapacitu 8 kB. V ROM byl uložen monitor mapovaný na adresový rozsah 0×e000 až 0×ffff umožňující zadávání programů, jejich modifikaci, ladění, nastavení breakpointů, výpis obsahu paměti či registrů speciálních funkcí, změnu konfigurace sériového portu atd. Možnosti monitoru byly poměrně velké (připomínají spíše program DEBUG z MS-DOSu) a způsob komunikace s ním se příliš nelišil od „konverzačního režimu“ používaného například u plnohodnotných mikropočítačů. Kromě pamětí zmíněných výše bylo možné do vývojového kitu nainstalovat dalších 8 kB paměti ROM pro neměnitelné uživatelské programy a až 15 kB paměti RAM, v závislosti na tom, jak rozsáhlou aplikaci programátor vyvíjel.

Obrázek 8: Některé příkazy monitoru vývojového kitu SDK-51.

Vývojový kit Intel SDK-51 taktéž obsahoval čtyři kilobity (ne kilobajty!) paměti RAM s organizací 4096×1, která však nebyla přímo dostupná pro zápis dat ani jako paměť, v níž mohly být uloženy programy. Tato RAM totiž sloužila pro nastavení breakpointů, což je velmi užitečná pomůcka při ladění programů. Systém breakpointů byl řešen na hardwarové úrovni a to poměrně jednoduše – jakmile se na externí adresové sběrnici objevila taková adresa, pro níž byl v „breakpointové“ RAM nastaven příslušný bit, byl mikrořadič zastaven a uživatel měl možnost si prohlédnout obsah interní i externí paměti RAM, stav speciálních funkčních registrů atd. Pozornějšímu čtenáři pravděpodobně neuniklo, že 4096 bitů (tj. 4096 příznaků, zda je či není na dané adrese nastaven breakpoint) postačuje pokrýt pouze adresový rozsah čtyř kilobajtů paměti programu (programátor musel pomocí jumperů nastavit, o které čtyři kilobajty se jedná), ovšem do vývojového kitu bylo možné nainstalovat ještě jeden paměťový modul o kapacitě čtyř kilobitů, takže se breakpointy mohly nastavit pro jakoukoli adresu paměti, v níž byly umístěny uživatelské programy.

Obrázek 9: Blokové schéma vývojového kitu SDK-51.

4. Jednoduché mikropočítače založené na MCS-51

Kromě vývojových kitů určených především pro vývoj programů, které se měly později využívat v různých specializovaných elektronických zařízeních, vzniklo i mnoho různých mikropočítačů (zkonstruovaných většinou amatéry), v nichž byl namísto univerzálního mikroprocesoru využit právě mikrořadič MCS-51 jako jejich ústřední řídicí prvek. Volba tohoto typu mikrořadiče pro amatérsky konstruované mikropočítače je poměrně logická, když si uvědomíme, že tyto čipy bylo možné používat bez nutnosti přidávání většího množství podpůrných obvodů. V tom nejjednodušším případě postačovalo k mikrořadiči MCS-51 pouze připojit napájení a krystalový oscilátor, protože MCS-51 obsahoval jak paměť RAM i ROM/EPROM/EEPROM (i když s poměrně malou kapacitou), tak i čtveřici osmibitových paralelních portů, sériový port s konfigurovatelnou rychlostí přenosu i čtyřmi režimy činnosti, dvojici či trojici čítačů, dva vstupy pro připojení externích přerušovacích signálů atd.

Obrázek 10: Amatérský mikropočítač postavený na základě mikrořadiče 8051, jehož funkce bude popsaná v následující kapitole.

Na druhou stranu například osmibitový mikroprocesor Intel 8080 vyžadoval minimálně pět dalších čipů pro alespoň minimalistickou konstrukci mikropočítače – jedná se o pomocné čipy 8224 a 8228, paměť ROM, paměť RAM a alespoň jeden čip 8255 umožňující připojení klávesnice. Osmibitové mikroprocesory MOS 6502 či Zilog Z80 taktéž vyžadovaly alespoň připojení RAM a ROM na datovou a adresovou sběrnici a pro připojení dalších zařízení obdobu čipů 8255 a 8251. Některé z mikropočítačů založených na mikrořadiči MCS-51 skutečně využívaly pouze interní paměť údajů (RAM) i paměť programu (ROM) bez dalších přídavných pamětí.

Obrázek 11: Drátové propojky použité u mikropočítače popsaného v následující kapitole. Podle slov autora tohoto počítače jsou drátové propojky lepší než jiná technologie v tom ohledu, že se zapojení snáze upravuje než v případě použití plošného spoje nebo nepájivého kontaktního pole.

Ovšem především kapacita paměti údajů je pro universální mikropočítače nedostatečná, proto začaly vznikat (především po snížení cen paměťových čipů) takové mikropočítače s MCS-51, jejichž architektura se příliš nelišila od mikropočítačů vybavených jiným typem mikroprocesoru. Samozřejmě že další výhody MCS-51, například přítomnost sériového portu, čítačů, dvou přerušovacích vstupů nebo jednoho či dvou volných paralelních portů, nezůstaly u těchto mikropočítačů nevyužity.

Obrázek 12: Standardní způsob připojení externí paměti programu a externí paměti údajů k mikrořadiči Intel 8051. Povšimněte si především použití záchytného registru pro spodních osm bitů adresy a taktéž toho, že čtení z externí paměti programu se uskutečňovalo pomocí signálu PSEN a čtení/zápis do externí paměti dat pomocí signálu RD a WR (všechny uvedené signály jsou negované).

5. Příklad amatérsky zkonstruovaného mikropočítače s MCS-51

Pojďme si nyní jednu z mnoha variant mikropočítačů založených na mikrořadiči MCS-51 představit. Na následujícím obrázku je vyobrazeno schéma tohoto mikropočítače s mikrořadičem Intel 8031 (tj. variantou MCS-51 bez interní paměti ROM a se 128 bajty paměti údajů) taktovaným na 12 MHz popř. na 11,059 MHz, k němuž je připojeno větší množství podpůrných čipů. Především se jedná a dva paměťové moduly RAM (jeden s kapacitou 8 kB a druhý s kapacitou 32 kB), paměťový modul ROM s kapacitou 16 kB, obvod MAX232 použitý jako konvertor mezi sériovým portem MCS-51 a standardem RS-232C (odlišné napěťové úrovně) a volitelně též řadič textového displeje s tekutých krystalů (LCD) a dokonce i řadič pevných disků popř. dalších zařízení připojovaných na rozhraní IDE. Vzhledem k tomu, že připojení LCD a IDE vyžaduje větší množství pinů než nabízí čtyři porty mikrořadiče Intel 8031, je v zapojení použit obvod 8255, který pracuje nejenom jako další tři osmibitové vstupně/výstupní brány, ale i jako záchytný registr (latch).

Obrázek 13: Schéma mikropočítače s mikrořadičem Intel 8031 v základní sestavě, tj. bez řadiče LCD a rozhraní IDE.

Na schématu mikropočítače je zajímavých hned několik věcí. První z nich představuje paměťový subsystém. Vzhledem k tomu, že mikrořadič MCS-51 je založený na Harvardské architektuře, má plně oddělenou paměť programu od paměti dat, a to i v případě, že jsou tyto paměti připojeny k mikrořadiči jako externí paměťové moduly. I když se pro obě paměti používá společná adresová a datová sběrnice, řídicí signály jsou odlišné – čtení z paměti programu je řízeno negovaným signálem PSEN a čtení či zápis do paměti dat dvojicí (opět negovaných) signálů RD a WR. U univerzálních mikropočítačů je však mnohdy výhodnější použití procesoru s von Neumannovou architekturou, která je v případě popisovaného mikropočítače simulována tím, že jsou oba „čtecí“ signály RD a PSEN logicky spojeny, takže se tentýž paměťový čip může používat jak pro uložení programů, tak i pro data. Jednou z nevýhod tohoto řešení je zmenšení adresového rozsahu ze 128 kB (64 kB RAM + 64 kB ROM) na 64 kB, což ovšem pro popisovaný mikropočítač není nikterak omezující.

Obrázek 14: Druhá (variantní) část mikropočítače s řadičem LCD a rozhraním IDE.

O tom, jaký paměťový čip či jaké periferní zařízení bude v danou chvíli adresováno, je rozhodnuto na základě nejvyšších tří bitů adresy A13 až A15, tedy celkem osmi možných kombinací (viz část schématu s čipem 74138). Obsazení čtyř osmibitových portů mikrořadiče Intel 8031 je v tomto mikropočítači následující: port číslo 0 slouží jako spodních osm bitů multiplexované adresové a datové sběrnice řízené signálem ALE (address latch enable), port číslo 1 je určen pro řízení LCD displeje a IDE rozhraní (pokud jsou tyto dva moduly použity, je na tento port připojen obvod Intel 8255), port číslo 2 slouží jako horních osm bitů adresové sběrnice a konečně všechny piny portu číslo 3 jsou využity ke svým alternativním funkcím, tj. jako sériový port (RXD, TXD), řízení externích pamětí (RD, WR), vstupy přerušení (INT0 – použito u rozhraní IDE, INT1) a vstupy obou čítačů/časovačů (T0, T1).

Obrázek 15: K popisovanému mikropočítači lze připojit i displej z tekutých krystalů s vlastním řadičem. Zde je na displeji zobrazen výpis části programu napsaného v BASICu, jehož interpret i překladač je pro MCS-51 dostupný.

6. Ovládání textových LCD mikrořadičem

Zatímco u většiny jednodušších vývojových kitů (především jejich starších variant) se kromě několika LED nevyskytovala žádná další periferní zařízení, která by uživatelům signalizovala stav mikrořadiče popř. stav běžícího programu, v případě výstavby celého mikropočítače založeného na mikrořadiči MCS-51 je situace značně odlišná, protože u prakticky každého mikropočítače se dnes za standard považuje alespoň možnost zobrazení několika řádků textu a většinou je preferovaný i grafický výstup. Poměrně velké množství podomácku konstruovaných mikropočítačů založených na mikrořadiči MCS-51 obsahuje monochromatický displej vyrobený z tekutých krystalů (LCD) nabízejících možnost zobrazení jednoho či více řádků textu. Připojení těchto typů displejů k mikrořadiči je velmi jednoduché, protože pro ovládání LCD se vyrábí specializované řadiče s vlastní RAM, které jsou většinou značně univerzální, co se týče množství podporovaných typů displejů – typicky jsou podporovány displeje s jedním až čtyřmi řádky textu, přičemž počet znaků na řádku může dosahovat hodnot 8, 16, 20, 24, 32 nebo 40.

Obrázek 16: LCD zobrazující dva řádky textu po 16 znacích, jehož řadič se k MCS-51 připojuje přes sériové rozhraní.

Některé modely řadičů LCD jsou vybaveny standardním sériovým rozhraním podporujícím (většinou) asynchronní přenos dat, tj. jednotlivých znaků, které se mají zobrazit, i některých řídicích kódů, kterými se ovládá například pohyb kurzoru, smazání displeje, inverzní výpis znaků atd. Při asynchronním přenosu se většinou používá formát 8N1 a přenosová rychlost 2400 Bd popř. 9600 Bd (většinou je však možné nastavit i jiné hodnoty). Ovšem existuje i řada řadičů LCD s rozhraním paralelním a to buď čtyřbitovým nebo osmibitovým (popř. lze mezi oběma šířkami paralelního rozhraní volit). Jedním z velmi známých a často používaných řadičů textových LCD je čip HD44780 stručně představený v následující kapitole.

Obrázek 17: Textový LCD se dvěma řádky textu po 20 znacích na řádku.

7. Řadič textových displejů HD44780

Řadič textových displejů prodávaný pod označením HD44780 je navržen takovým způsobem, aby komunikace s ním byla co nejsnazší a současně nevyžadovala uložení zobrazovaných řetězců v paměti mikrořadiče, což by mohl být pro čipy s pouhými 128 bajty RAM poměrně složitě řešitelný problém. Z tohoto důvodu řadič obsahuje i „obrazovou“ paměť RAM s kapacitou pro uložení 80 znaků, což odpovídá dvouřádkovému displeji se 40 znaky na řádek nebo čtyřřádkovému displeji s 20 znaky na řádek. Pro další často používanou kombinaci 4×40 znaků sice již kapacita 80 znaků nedostačuje, ovšem je možné dva řadiče HD44780 spojit do současně pracující dvojice.

Obrázek 18: Čtyřřádkový textový LCD.

Tento řadič LCD taktéž obsahuje paměť ROM, v níž je uloženo celkem 208 znaků definovaných v rastru 5×8 pixelů a 32 znaků v rastru 5×10 pixelů (většinou bývá devátý mikrořádek prázdný a desátý mikrořádek je využitý pro zobrazení kurzoru). Navíc je možné v případě potřeby tvar osmi znaků definovat uživatelsky, čehož se využívá například pro zobrazení národních znaků s akcenty nebo pro zobrazení zjednodušeného loga popř. různých ikon. Vzhledem k tomu, že tvary těchto osmi znaků jsou uloženy v RAM řadiče (po vypnutí napájení se jejich tvary ztratí), lze je kdykoli změnit a vytvořit tak velmi jednoduchou formu animace, popř. se přepínat mezi několika národními znaky. Kromě běžnější varianty řadiče LCD HD44780 se znaky latinky a azbuky (cyrilice) existuje i verze řadiče mající v ROM vypáleny zjednodušené znaky japonské abecedy. Vzhledem k tomu, že tento řadič podporuje osmibitový i čtyřbitový přenos dat, může být k MCS-51 propojen buď osmibitovou nebo čtyřbitovou sběrnicí vytvořenou například pomocí portu číslo 0. Navíc je nutné k řadiči připojit minimálně i signál pro povolení zápisu WR a jeden vodič sloužící pro přepínání mezi zápisem do řídicího registru IR a datového registru DR.

Obrázek 19: Grafický LCD s rozlišením 128×64 pixelů; způsoby ovládání těchto displejů si popíšeme příště.

8. Přímé generování video signálu

V následující části seriálu o architekturách počítačů si popíšeme některé způsoby ovládání displejů z tekutých krystalů (LCD) umožňujících práci s rastrovou grafikou, i když většinou pouze monochromatickou. Zatímco „textové“ LCD je možné pomocí mikrořadičů ovládat celkem snadno, u některých řadičů grafických displejů je již zapotřebí vyvinout větší úsilí. Pravě z tohoto důvodu vzniklo několik programových knihoven (nejenom) pro mikrořadiče MCS-51, které práci s grafickými LCD zjednodušuje. Taktéž se budeme zabývat několika projekty, jejichž cílem bylo generování obrazu přímo na televizní obrazovce nebo na obrazovce monitoru. Pro tyto účely je nutné použít některou modernější variantu mikrořadiče MCS-51, který má dostatečný výkon na to, aby dokázal v reálném čase generovat všechny potřebné signály, které se před posláním do televizoru posléze sloučí do signálu jediného (v případě použití anténního vstupu navíc následuje modulace signálu). Tento princip generování obrazu bez použití framebufferu a specializovaných čipů (které v podstatě serializují data z framebufferu a přidávají k nim synchronizaci) se využívá jak u zmíněného MCS-51, tak i u dalších mikrořadičů, například rychlých variant čipů AVR.

Obrázek 20: Další grafický LCD s rozlišením 128×64 pixelů, který je navíc vybavený ovladačem se sériovým rozhraním.

widgety

Příště se taktéž začneme zabývat dalším – a to velmi rozšířeným – typem osmibitových mikrořadičů. Jedná se o mikrořadiče řady PIC, které jsou vývojářům nabízeny v takřka nepřeberném množství variant lišících se jak kapacitou pamětí, tak i výkonem, počtem pinů, dostupnými moduly a samozřejmě i cenou. Vysvětlíme si rozdíl v instrukčních sadách jednotlivých řad osmibitových mikrořadičů PIC (způsobený především rozdílnou maximální kapacitou paměti údajů), funkční moduly, které na těchto mikrořadičích mohou být přítomny i způsob použití těchto čipů v různých zapojeních, samozřejmě opět s důrazem na jejich aplikaci v mikropočítačích.

Obrázek 21: Připojení grafického LCD k mikrořadiči MCS-51.

9. Obsah následující části seriálu

  1. Graphic LCD interfacing with AT89C51
    http://www.8051pro­jects.info/tag­s.asp?tag=grap­hic+lcd+inter­facing+with+at89c51
  2. Interfacing LCD made easy
    http://www.8051pro­jects.info/blog­s.asp?view=plin­k&id=188
  3. RD2 Kit – HW Description
    http://hw-server.com/con­strc/rd2kit.html
  4. Programujte v C – RD2 Kit
    http://hw.cz/Pro­dukty/ART130-Programujte-v-C---RD2-Kit.html
  5. LCD Interfacing and Microcontroller
    http://lcdinter­facing.blogspot­.com/2009/11/ks0108b-graphic-lcd-interfacing.html
  6. Serial Graphic LCD 128×64
    http://www.spar­kfun.com/commer­ce/product_in­fo.php?produc­ts_id=9351
  7. Crystalfontz Liquid Crystal Displays
    http://www.crys­talfontz.com/pro­ducts/index-ser.html
  8. Připojení inteligentního displeje k 8051
    http://www.dhser­vis.cz/lcd.htm
  9. Ovládání znakových LCD s řadičem HD44780
    http://elektro­nika.kvalitne­.cz/ATMEL/neco­teorie/LCDmati­ce.html
  10. SOH protokol – text a grafika
    http://www.ac­scontrol.com/In­dex_LcdTerminal­.asp?Page=/Pa­ges/Products/Lcd/128×6­4%20LCD_Displa­y_Terminal_SOH_Pro­tocol.htm
  11. Serial EEPROM (93C46 / 93CS46) Routines
    http://www.pjrc­.com/tech/8051/se­rial-eeprom.html
  12. 93CS46 (serial EEPROM) data sheet
    http://www.pjrc­.com/tech/8051/93CS46­.pdf
  13. Microcontroller
    http://en.wiki­pedia.org/wiki/Mi­crocontroller
  14. Great Microprocessors of the Past and Present (V 13.4.0)
    http://jbayko­.sasktelwebsi­te.net/cpu.html
  15. Intel 8048 Microcon­troller Oral History Panel
    http://www.com­puterhistory.or­g/collections/ac­cession/102658328
  16. IMSAI® History: The 8048 Control Computer
    http://www.im­sai.net/histo­ry/imsai_histo­ry/imsai_8048_con­trol_computer­.htm
  17. 8048
    http://coproli­te.com/8048.html
  18. IMSAI 8048
    http://www.old-computers.com/mu­seum/computer­.asp?st=1&c=564
  19. Intel 8048
    http://en.wiki­pedia.org/wiki/8048
  20. Tesla Eltos Mikropočítačová stavebnice Petr
    http://sites.go­ogle.com/site/com­puterresearchltd/Ho­me/stare-stroje/tesla-eltos-mikropocitacova-stavebnice-petr
  21. Mikropočítačová stavebnice Petr
    http://dex.blo­guje.cz/770366-mikropocitacova-stavebnice-petr.php
  22. Kosmos CP1
    http://de.wiki­pedia.org/wiki/Kos­mos_CP1
  23. KOSMOS: CP1 / Computer Praxis
    http://www.old-computers.com/mu­seum/computer­.asp?st=1&c=494
  24. Great CPU: Part VIII: Intel 8051, Descendant of the 8048 (around 1977?)
    http://jbayko­.sasktelwebsi­te.net/cpu1.html#Sec1Par­t8
  25. Intel 8051 – Wikipedie EN
    http://en.wiki­pedia.org/wiki/8051
  26. Intel 8051 – Wikipedie CZ
    http://cs.wiki­pedia.org/wiki/In­tel_8051
  27. Popis mikroprocesoru 8051
    http://www.dhser­vis.cz/popis8051­.htm
  28. Jak se naučit programovat (nejen jednočipy)
    http://www.dhser­vis.cz/dalsi1/ob­sah_popis.htm
  29. 89C1051 series datasheets
    http://www.chip­docs.com/datashe­ets/datasheet-pdf/Atmel-Corporation/89C1051­.html
  30. 8051 microcon­troller FAQ
    http://www.faq­s.org/faqs/mi­crocontroller-faq/8051/
  31. ABOUT THE 8051
    http://www.esa­cademy.com/as­sets/faqs/8051/2­.htm
  32. Mikroprocesor 8051
    http://8051.go­dlike.cz/
  33. Intel SDK
    http://en.wiki­pedia.org/wiki/In­tel_SDK
  34. Old Computer Museum: SDK-51 (MCS-51)
    http://oldcom­putermuseum.com/in­tel_sdk51.html
  35. Embedded Systems Development Nexus
    http://hypercon­tinuum.tripod­.com/
  36. 80×51 Microcontrollers webring
    http://nav.we­bring.org/cgi-bin/webring?rin­g=80×51;home
  37. Intel 8051 Java Simulator/Debugger
    http://www.vi­ara.eu/en/j51/
  38. Intel 8051 Java Simulator/Debugger – download page
    http://www.vi­ara.eu/en/j51/#DOW­NLOAD
  39. Silicon Labs Pipelined 8051 Microcon­trollers
    http://www.si­labs.com/produc­ts/mcu/Pages/8051-microcontroller­.aspx
  40. My home-built 8051 Computer
    http://roger.tri­deja.com/8051/80­51.html
  41. 8390 Ethernet Tutorial
    http://www.8052­.com/tcpip/
  42. Zylogic Semiconductor Corporation
    http://www.zy­logic.com.cn/en­glish/tools03­.htm
  43. 8051 Television Video
    http://www.8052­.com/users/phi­llipmgallo/
  44. 128×64 Graphical LCD
    http://www.pjrc­.com/tech/8051/bo­ard5/lcd_128×6­4.html
  45. 8051 FAQs
    http://www.8052­.com/faqs
Našli jste v článku chybu?
Vitalia.cz: Voda z Vltavy před a po úpravě na pitnou

Voda z Vltavy před a po úpravě na pitnou

120na80.cz: Tipy jak zvládnout školku

Tipy jak zvládnout školku

Lupa.cz: Patička e-mailu závazná jako vlastnoruční podpis?

Patička e-mailu závazná jako vlastnoruční podpis?

DigiZone.cz: Přelaďte si Šlágr TV u Skylinku

Přelaďte si Šlágr TV u Skylinku

Vitalia.cz: Tahák, jak vyzrát nad zápachem z úst

Tahák, jak vyzrát nad zápachem z úst

Vitalia.cz: Jsou vegani a vyrábějí nemléko

Jsou vegani a vyrábějí nemléko

Podnikatel.cz: Nemá dluhy? Zjistíte to na poště

Nemá dluhy? Zjistíte to na poště

Lupa.cz: Adblock Plus začal prodávat reklamy

Adblock Plus začal prodávat reklamy

Lupa.cz: Blíží se konec Wi-Fi sítí bez hesla?

Blíží se konec Wi-Fi sítí bez hesla?

Vitalia.cz: Muž, který miluje příliš. Ženám neimponuje

Muž, který miluje příliš. Ženám neimponuje

Podnikatel.cz: Letáky? Lidi zuří, ale ony stále fungují

Letáky? Lidi zuří, ale ony stále fungují

120na80.cz: Co je padesátkrát sladší než cukr?

Co je padesátkrát sladší než cukr?

Vitalia.cz: Tohle jsou nejlepší česká piva podle odborníků

Tohle jsou nejlepší česká piva podle odborníků

DigiZone.cz: Budoucnost TV vysílání ve Visegrádu

Budoucnost TV vysílání ve Visegrádu

DigiZone.cz: Sat novinky: NASA Ultra HD (4K)

Sat novinky: NASA Ultra HD (4K)

Vitalia.cz: Tesco nabízí desítky tun jídla zdarma

Tesco nabízí desítky tun jídla zdarma

Podnikatel.cz: Udělali jsme velkou chybu, napsal Čupr

Udělali jsme velkou chybu, napsal Čupr

Lupa.cz: Další Češi si nechali vložit do těla čip

Další Češi si nechali vložit do těla čip

DigiZone.cz: Parlamentní listy: kde končí PR...

Parlamentní listy: kde končí PR...

120na80.cz: Nejsilnější alergeny jsou pryč

Nejsilnější alergeny jsou pryč