HC08
Jak s nimi začít

0. krok
Proč právě HC08?
Protože: -na rozdíl od ATMEL Tiny, PICů atd je to plnohodnotný procesor.
              -je k němu zdarma dodáváno plnohodnotné vývojové prostředí, kde se celý návrh od zápisu assambleru, přes simulaci po zapsání programu do Flash
               provádí v jednom vývojovém prostředí
              -simulace je možná v in-debug režimu, což je režim, ve kterém již v mikroprocesoru běží program, my však na PC vidíme obsah celé paměti a všech
                registrů, případně je můžeme i měnit
              -k HC08 je zdarma dodáván překladač pro C (je omezen na 4 Kb)
 
 
 
 

1.Krok
              Něco málo o Nitronu
               Do rodiny HC08 patří i mikroprocesory Nitron. Jedná se o velmi jednoduché (a levné, cena kolem 60 Kč) procesory z klanu HC08. Zde je jejich popis (česky).  Právě Nitronům se budeme věnovat. Jejich programování nám umožní Janus Kit. Za 450 Kč se dá koupit například u firmy Beta Controls. Kit obsahuje jeden mikroprocesor Nitron, desku s plošným spojem a součástky. Vlastní spájení programátoru musíme provést sami. Dále je pak součástí dodávky jedno CD s assamblerovským vývojovým prostředím (P&E Micro)  jedno s prostředím C (CodeWarrior). Dále lze na CD nalézt i mnodo technické dokumentace k HC08. U CodeWarrior je omezena výsledná velikost programu na 4kb, pro zrušení tohoto omezení je nutno zaplatit. Nám to až tak moc nevadí, maximální paměť Nitronu je právě 4kb. Při bližším zkoumání se dá zjistit, že není problém Janus kit postavit. Že je to asi naprosto legální se dá odpozorovat z toho, že schéma plošného spoje je i s poznámkami ke stavbě umístěno na českých stránkách Motoroly.
 
 

Janus Kit vypadá asi takto:

Následující tabulka nám ukazuje typy a parametry Nitronů. Kit Janus umí všechny programovat.

Obrázek s rozmístěním vývodů u nejpoužívanějšího Nitronu HC908QT4. Tento je i součástí dodávky Janus Kitu. Pozor, pin PTA2 je pouze vstupní.

 

Nyní základní parametry HC908QT4:
        -4 kb paměti Flash (určitou fintou je možno ji programovat i za běhu programu)
        -128 bytu RAM
        -pracuje od 3V do 5V
        -maximální frekvence je 8Mhz pro 5V, 4MHz pro 3V
        -interní oscilátor 3,2MHz, jeho přesnost 5% po kalibraci provedenou v továrně, tuto kalibraci si člověk většinou omylem smaže, pak 25%
        -pět vstupů pro vnější přerušení
        -čtyři A/D převodníky
        -mnoho a mnoho dalšího
 

2. krok Programujeme
    Celý postup je velmi pěkně popsán zde (česky). (Je tu např i návod, jak napravit špatně pojmenovaná tlačítka, viz dále).
    Spustíme poprvé program PE Micro. Prostředí vypadá velmi standartně. V levém horním rohu jsou čtyři tlačítka: Kompilace, Simulace, In-Debug, Flash programing. Občas jsou pojmenována špatně.  Postup vývoje je jednoduchý a opět standartní, napíšeme program, zkompilujeme, v simulátoru odsimulujeme, do procesoru naprogramujeme. Pěkné je, že se vše děje v rámci jednoho programu, tedy žádné přepínání do příkazové řádky MS-DOSu, žádné zašifrované vzkazy pro programátor o zapnutí napájecího napětí, které jsou tolik podobné příkazu mazání. Zde má uživatel takový komfort, že se stydí, takto vyspělé prostředí zatěžovat programováním blikače a je vlastním svědomím nucen ochočit alespoň A/D převodník.

3.První  program
    "První program musí blikat. Programy, které jen svítí nikoho neohromí."
 
 
 

Pouzit program z webu www.hc08.cz, trosku jsme ho upravili. Vlastni smycka blikani je cervene.
Zde je sbírka několika programu.
RAMStart     EQU  $0080
RomStart     EQU  $F800

$Include 'qtqy_registers.inc'

PTA     EQU     PORTA
        org     RomStart

Main:
        rsp                  ; nastaveni SP na adresu $FF (zde konec RAM)
        clra                 ; inicializace registru
        clrx
        mov     #$31,CONFIG1 ; konfigurace MCU: watchdogy COP a LVI vypnute

        mov     #$FF,PTA     ; inicializace brany A, PORTA = FF
        mov     #$02,DDRA    ; nastaveni smeru jednotlivych bitu brany A: bit 1 je
                             ; vystupni, ostatni bity vstupni
 

main_loop:                   ; nekonecna smycka blikani zlute LED
        bclr    1,PTA        ; rozsvit LED (pin 6 - PTA1 - zluta LED)
        bset    1,PTA        ; zhasni LED
        bra     main_loop    ; skok zpet
 

        org     $FFFE
        dw      main            ; FFFE - Reset Vector
 

Závěr:

     O PICech vyšla první knížka v roce 1996. Proto je v Čechách velmi rozšířen. Motorola dlouho na drobného kutila kašlala. Nyní se její strategie změnila, při uvádění Nitronů na trh zasílala Janusy zdarma, totéž se opakovalo, když vyhlásila soutěž o nejlepší konstrukci na Nitronu. Vývojové prostředí lze zdarma stáhnout z internetu, Janus levně postavit. I knížka vznikla (v důsledku velkého zájmu o soutěž Motoroly o nejlepší konstrukci na Nitronu, kdy bylo zdarma rozesláno prý několik stovek Janusů)  Pravdou ale zůstává, že v GM Nitrony nadále nevedou.