Jste zde

Programujte v C - RD2 Kit

Naučte se snadno programovat v Jazyku C na x51 procesorech. RD2 Kit obsahuje 2x 40

odladěných příkladů, úvod do programování v C, řadu zdrojových kódů atd.. RD2 Kit je určen zčátečníkům,

ale hlavně profesionálům, kteří chtějí začít s vývojem aplikací v C.

RD2 je x51 kompatibilní procesor s 64 kB FLASH, 1kB RAM, sériovým programováním, podporou bootloaderu atd.. Na tomto procesoru jsme postavili výukový KIT který vám pomůže zorientovat se v problematice programování aplikací pro jednořipy v jazyku C. S kitem by se měl spřátelit houževnatější začátečník, ale hlavně je určen pro vývojáře, kteří již mají zkušenosti ve vývoji aplikací v ASM a chtějí přejít na vyšší programovací jazyky. 

Umíte ASM – začněte programovat i v C
Pro vývoj aplikací v C lze použít řadu platforem,  vývojových  kitů atd.. Vzhledem ke specifické situaci v ČR, kde je stále ještě většina běžných vývojářů používá ASM  a cca 50% lidí programuje x51 kompatibilní procesory jsme připravili dále popsaný vývojový kit, který je cílen především na usnadnění migrace od assembleru k jazyku C pro x51 procesory. 
 

Čím je zajímavý RD2 Kit :

  • Jednoduchý HW, snadno lze libovolně modifikovat..
  • x51 CPU T89C51RD2 - jednočipové řešení C programu.
  • Cca 40 příkladů, které demonstrují základní funkce a rychle Vás vtáhnou do problematiky.
  • Všechny příklady jsou k dispozici pro Keil C i SDCC které je k dispozici zdarma.
  • Aplikace nejsou omezeny pouze na jedno C konkrétního výrobce.
  • Součástí dokumentace je i popis rozdílů jednotlivých kompilerů C.


 

Popis HW řešení RD2 Kitu

Pouzdro DIL u Jednočipového Mikroprocesoru bylo zvoleno pro možnost náhrady za jiný pinově kompatibilní CPU a pro snadné programování obvodů v pouzdře DIL 40. Celý RD2-kit byl od počátku koncipován jako prostředek určený pro výuku a vývoj nových aplikací. Pokud vystane nutnost naprogramovat MCU v klasickém programátoru není třeba speciálních konvertorů pouzder. 

Podrobné schéma zapojení RD2 Kitu najdete ve specializovaném článku RD2 Kit - popis HW řešení kitu

K práci s RD2 Kitem nepotřebujete žádný programátor

RD2 Kit je jednoduchý a levný vývojový prostředek pro rychlý vývoj nových aplikací a výuku programování v jazyce C. Kit je osazen jednočipovým mikropočítačem T89c51RD2 a základními periferiemi. Programování interní paměti FLASH a EEPROM v procesoru je řešeno ISP programováním. U procesorů RD2 je programování v aplikaci (In Systém Programming) řešeno malým programem (loader) který je umístěn na posledním 1 kB kódu programu. takže na aplikace zbývá 63 kB (0000h – FC00h).  Loader je spuštěn skokem na nastavenou adresu FC00h, pokud je při resetu nastavena určitá kombinace na pinech MOVC, ALE a hlavně PSEN=0V. V RD2 Kitu je tak procesor RD2 programován prostým přizemněním pinu PSEN a následným resetem. V CPU spuštěný program loader se po sériové lince RS232 dohodne s programovacím programem v PC „Flasher“, ten mu pošle program pro jednočipový procesor v HEX formátu a loader tento program naprogramuje do spodních 63 kB interní FLASH procesoru RD2.  Námi dodávaný loader a flasher je kompatibilní s originální a navíc umí i obsluhovat interní EEPROM procesoru. 

Pro práci s RD2 Kitem tak nepotřebujete žádný programátor, ani spoustu kabelů na stole. Stačí vám PC se sériovým portem RS232, editor a jeden z popsaných C kompilerů, napáječ a RD2 Kit. 
 

Základní parametry CPU

  • 80C51 CPU jádro
  • FLASH paměť na čipu je programovatelná programem vlastního procesoru. 
  • ISP (In-System Programming)  a IAP (In-Application Programming) kompatibilní
  • Při dodávce obsahuje FLASH již LOADER pro naprogramování obvodu procesoru z UARTu.
  • Parallelní programování je kompatibilní s 87C51 programátory
  • 6 hodinových taktů cyklu, místo standardních 12 - Vnitřní násobička dvěmi se přepíná softwarově v systémovém registru. 
  • Rychlost CPU do 20 MHz (6 taktů/ cyklus) nebo 40 MHz - úměrné výkonu 33 MHz standardní x51.
  • Plně statické operace
  • 1kb interní RAM v MOVX navíc ke standardním 256 bytům. RAM je rozšiřitelná na 64 kB.
  • 7 zdrojů přerušení ve 4 úrovních priority.
  • Čtyři 8-bit I/O porty, duplexní rozšířený UART. 
      Existuje i verze v PLCC 68 se dvěma 8. bitovým porty  navíc. 
  • Podpora úporných režimů, CLOCK lze zastavit a zase spustit..
  • Programovatelný výstup hodin
  • druhý DPTR registr
  • Možno dealtivovat pulsy na ALE (Low EMI )
  • PCA čítač (Programmable Counter Array)
  • 2 kB EEPROM pro 100 K zápisových cyklů (pouze T89C51RD2)
  • Watchdog v procesoru


Naučíme vás pracovat s prostředím kompilátoru C

V dokumentaci je velmi podrobně popsáno, jak se naučit zkompilovat svůj první projekt v KEILU ale i SDCC. Nemusíte tedy zbytečně dlouho procházet desítky stran manuálů... Projekt BLIK si zkompilijete během pár minut, ostatní máte připraveny ve spustitelné i zkompilovatelné podobě a pak již stačí upravovat stávající příklady...

Něco málo o C kompilerech a jejich porovnání najdete na HW serveru

  • Jak by měl vypadat nástroj pro vývoj aplikací v C
    Pokud hodláme investovat nemalé peníze do nákupu vývojového prostředí měli-by jsem si uvědomit co od daného produktu chceme a k čemu ho budeme používat.. Článek porovnává jednotlivé existující C kompilátory na x51 a upozorňuje na přehlížené ale důležité vlastnosti jednotlivých kompilátorů..
  • Překladače jazyka C pro mikroprocesory řady x51
    K vývoji aplikací pro jednočipové mikropočítače lze použít celou řadu programovacích jazyků (jazyk symbolických instrukcí, C, Pascal, java, Basic, atd.). Dominantní postavení si stále udržuje jazyk symbolických instrukcí s více než 50 %. Současný trend však stále více směřuje, k použití vyšších programovacích jazyků, jmenovitě jazyka C..


2x 40 řešených příkladů 

To nejcenější na tomto kitu jsou odladěné a zdokumentované příklady, které vás vtáhnou do světa programování v C

Pro studijní účely a pochopení základních principů návrhu jednočipových aplikací s procesory řady 8051 je RD2-kit vybaven sadou příkladů v jazyce C. Ukázkové příklady jsou určeny pro vývojové nástroje Keil C51 evaluation version a SDCC. Porovnáním těchto dvou nástrojů máme možnost si vytvořit konkrétní náhled na problematiku vývoje jednočipových aplikací ve vyšším programovacím jazyce. Naprogramování vytvořené aplikace do JM z PC se provádí metodou ISP přes sériové rozhraní. Tato metoda nevyžaduje žádný další podpůrný hardware a zcela eliminuje použití klasického programátoru.

Kromě zdrojových kódů najdete na CD také .HEX soubory, které lze pomocí Flasheru nebo programu FLIP rovnou nahrát do aplikace a spustit.


Jednotlivé příklady jsou členěny do několika tématických skupin

Úvodní program v C na T89c51RD2
- popis překladu a sestavení jednoduchého programu v jazyce C, naprogramování JM metodou ISP.

Sériový kanál
- nastavení 8-bitové sériové komunikace, vlastní funkce pro čtení a zápis dat přes sériový kanál,
-  použití standardních funkcí jazyka C pro formátovaný vstup/výstup dat přes sériový kanál,
- celočíselný kalkulátor.

LCD displej 2 x 16 znaků v 4-bitovém režimu komunikace
- nastavení 4-bitového režimu komunikace, funkce pro čtení a zápis dat na LCD displej,
- uživatelská znaková sada, posuvy textu a animace,
- zasílání příkazů LCD displeji přes sériový kanál,
- přesměrování standardního výstupu funkce printf na LCD a sériový kanál.

Maticová klávesnice 4 x 3
- funkce pro čtení klávesnice, diagnostika klávesnice s výstupem na sériový kanál,
- sdílení datové sběrnice LCD displeje s klávesnicí, výstup dat na LCD.

Systém přerušení
- časovač T2 s obvodovým 16-bitovým přednastavením, obsluha led diody v rutině přerušení,
- hodiny reálného času s časovačem T2,
- obsluha vnějšího přerušení INT0.

Časovač watchdog
- ovládání časovače watchdog a jeho použití při kontrole běhu aplikace,
- řízené nulování JM časovačem watchdog.

Čítačem podporované programovatelné pole PCA, časovač T2
- 8-bitová pulsně šířkové modulace, 
- měření délky pulsu,
- programovatelný generátor pulsů.

Paměť programu FLASH
- ověření integrity kódu programu na základě výpočtu kontrolního součtu souvislého bloku paměti FLASH,
- volání API funkcí uživatelského zavaděče pro práci s pamětí FLASH,
- přístup do paměti XAF (eXtra Array Flash).

Paměť EEPROM
- obsluha paměti EEPROM, čtení, zápis a výpis obsahu paměti přes sériový kanál.

Vnější paměť dat XRAM
- nastavení dostupné velikosti vnější paměti dat XRAM,
- test paměťových buněk a výpis obsahu paměti přes sériový kanál.

Speciální funkce procesoru
- vypnutí generování signálu ALE,
- režimy se sníženou spotřebou (Idle Mode, Power-Down Mode),
- programové přepínání násobičky hodin (X2 - Mode).

Diagnostika JM
- ověření funkčnosti jednotlivých bloků JM a připojených periferií.

Pokročilé použití vývojových nástrojů
- vkládání instrukcí jazyka symbolických adres do zdrojového kódu jazyka C,
- sestavení výsledného programu na uživatelem definovaných adresách.

Stáhněte si podrobnější popis těchto příkladů : rd2kit_40examples.pdf


 

Co najdete na RD2Kit CD

V dodávce RS2 Kitu jsou přiloženy 2 CD. Jedno obsahuje demoverzi KEIL s řadou dalších zajímavých utilit a aplikací.
Na druhém CD najdete dále popsané utility a užitečné příklady související s RD2 Kitem.
 
V rootu našeho RD2 Kit CD najdete podrobnou dokumentaci k celému Kitu a 4. stránkový manuál "RD2 Kit - rychlý start" v .PDF formátu.

Adresář Datasheets
Obsahuje katalogové listy a Errata reports k procesorům RD2 od Atmelu a Philipsu

Adresář Examples
2x 40 řešených příkladů se  dále dělí na rd2.src.keil a rd2.src.sdcc kde najdete zdrojové kódy příkladů a jejich zkompilované podoby pro Keil a SDCC. 

Adresář Flasher
Vše co souvisí s nahráváním aplikací do RD2 CPU. instalace FLIPu od Atmelu, WinISP od Philipsu a našeho RD2 Flasheru. Stejně jako .HEX kód upravaného loaderu pro obsluhu EEPROM..

Adresář sdcc
Instalace kompileru sdcc.2.3.2.win32 a include soubor 89c51rd2.h

Adresář Sw
Veškeré potřebné utility a rutiny (Acrobat Reader, šikovný RS232 terminál, SourceEdit12 a Teraterm)

Až si budete instalovat demoverzi KEILu projděte si podrobně celé CD. Kromě řady velmi zdařilých presentací použití prostředí mVision obsahuje i spoustu dokumentací, cca stovku příkladů řešení různých algoritmů a omsluhy periférií atd.. Najdete zde také řadu hlavičkovýh souborů pro různé verze x51 procesorů, databázy nejčastějších dotazů a odpovědí a podobně... 

Hodnocení článku: