procesor
51

Program do knihy procesoru..


ZPĚT








PRESTO
UP

2. Nahrávání programu

Procesory se dají dělit na mnoho druhů a podle různých pohledů na věc.
Jeden z pohledů je, jak je procesor rychlý,
s jak velkou šířkou dat umí pracovat,
zda-li jeho programová paměť je na jeho čipu nebo si program volá z jiné externí paměti,
nebo třeba jak široká je škála jeho instrukcí, z kterých se program dá napsat.

My se budeme zabývat speciální skupinou procesorů, kterým se říká jednočipy.
Tyto procesory se vyznačují tím, že jejich programová paměť je na stejném čipu jako procesor.
Dále se tyto procesory vyznačují tím, že na venek svými piny působí už jen jako vstupy nebo výstupy.
Neoplývají velkými rychlostmi zpracování dat, mají nízkou spotřebu
a pracují zpravidla s šířkou dat 8 nebo i 16bitů.

A speciálně se budeme zabývat procesory s jádrem 51.
To znamená, že je mnoho druhů procesorů a každý používá jinou architekturu, instrukční sadu a pohled na skladbu programu.
Pokud chcete dobře programovat, vystačíte zpravidla s jedním druhem procesoru,
aby se vám to v hlavě nezačalo motat do sebe. :o)
I když znáte-li procesor jeden, není to tak těžké vstoupit do tajů procesoru jiného..
Tak tedy procesory 51.

Nyní se od všeho oprostíme, a vzpomeneme si na text prvního článku.
Zapnete napětí na procesoru, proběhne start, v procesorovně se rozsvítí
a procesor otevře programovou knihu (paměť) na straně (adrese) nula.

Program se do programové paměti u procesorů 51 dá naprogramovat tak, že musíte mít k dispozici nějaký programátor s obslužným programem v PC. Programátor zapnete a spustíte jeho obslužný program a zvolíte si v něm ze seznamu jméno vašeho procesoru, který budete chtít programovat. Pak odněkud otevřete připravený program většinou ve formátu .hex
Potom do programovacího hnízda zasadíte procesor pro programování a spustíte programování.
Cykl programátoru zpravidla očuchá, zda je v hnízdě správný procesor, pak ho vymaže, prověří vymazání, nahraje, prověří nahraná data a chcete-li, uzamkne data pro možnost zpětného čtení dat z procesoru.
A tím je procesor naprogramovaný a vy ho přenesete do patice v nějaké vaší elektronice.

Jednoduché, že.. ?
Problém je jen v tom, že pokud program píšete a ladíte, děláte chyby.
Pro každou opravu, úpravu programu, změnu jen jediného čísla, musíte procesor vyňoumnout z patice, dát ho do patice programátoru a po naprogramování opět zpět.. :o( Při takovémto programování ztrácíte spoustu času a ničíte nožičky procesoru..

Proto výrobci procesorů přemýšleli, jak toto obejít.
A vymysleli nahrávání procesorů osazených přímo v tištěném spoji.
Tento způsob je označován jako ISP, tedy z anglicky in system programming, programování na kartě.
Pro programování našeho procesoru s jádrem 51 potřebujeme 6 vodičů na propojení mezi kartou a programátorem. Dva z těchto vodičů jsou napájení GND a +5V. Jeden vodič řídí přímo restart procesoru. A zbylé tři řídí tok dat při sériovém programování. Pokud se rozhodnete programovat touto metodou, nesmíte zapomenout, že při programování nesmíte mít porty P1.7, P1.6 a P1.5 spojené s nulou nebo přitážené natvrdo k plusu. O tomto musíte přemýšlet už při samotném návrhu schematu vašeho zapojení.

Abyste mohli programovat pomocí ISP, musíte mít programátor a program, který to umožňuje. Navrhuju vám pořídit si programátor PRESTO od firmy ASIX. Součástí pořízení programátoru PRESTO je i program UP, pomocí něhož řídíte z PC programování. Na svých deskách jsem si vymyslel systém 6 pinů, pomocí nichž se připojuju kabelem k programátoru. Jestli se chcete připojovat podobně, pak se podívejte na pár aplikací v hotovém. Pro propojení si pak budete muset připravit speciální kabel, jehož nákres je na následujícím obrázku. Na koncích kabelu jsou dutinky, v desce jsou piny a na programátoru PRESTO ASIX také.

CPU

A teď ještě důležitá věc. Procesory firmy Atmel typu 89Sxx (89S52, 89S2051, 89S4051, 89S8253 atd.) jdou programovat stylem ISP. Procesory, kde je místo S písmeno C (89C52, 89C2051 atd.) programovat pomocí ISP nejdou, ty se programují jen po vsazení procesoru do programovací patice programátoru.. Procesory s písmenem S jdou samozřejmě programovat i v programovací patici programátoru stejně jako procesory s písmenem C. A to je pro tento článek zatím všechno :o)))

-b-