Jaky procesor (AVR) - long

Jiri Bezstarosti jiri
Středa Březen 17 14:55:05 CET 2004


Zdravicko.

Predem prosim, pokud na tohle nekdo odpovi, at to umazne,
protoze tohle nemuze byt uplne kratke :).

Pokud se Vam 51 libi, radeji investujte 2 vecery a udelejte
programator (myslim 2 vecery i s deskou podle nejakeho
navrhu na webu). AT89C51, AT89C52 a AT89C2051 jsou
dnes lacine a ledaskam bohate staci. MCU jsou o elektronice
a tak verim, ze pokud se jim chcete venovat ci je jen bezne
pouzivat, ze si lehce poradite s docela jednoduchou deskou
programatoru (at uz jakehokoli). Pokud budete v budoucnu
potrebovat slusny vykon, ani tam nejste s 51 ztracen, protoze
se delaji ruzne i dost rychle klony s ruznymi vymozenostmi.
Napr. DS80C400 je snad schopna bezet na 75MHz a ma
4 faze pro instrukcni cyklus, tedy odpovida klasicke 51
na 225MHz a navic ma rovnou firmware pro "sitovani" a obri
adresni prostor. Na http://www.maxim-ic.com/
nabizeji vzorky a dokonce Vam i realne prijdou. Dalsi perlou
je DS89C420, ktery jsem ovsem jeste v ruce nemel - delo to
ale v kazdem pripade bude. Dale jsou hezke ADuC812, 816, 824
a dnes uz asi i dalsi, ktere maji sice jadro klasicke 51, ale
jsou vylepseny o ADC a DAC a pristupy do rozsahleho externiho
adresoveho prostoru, coz je jiste bomba zalezitost a s jejich
naprogramovanim byste problem mit nemel. Jen jsou trochu
drazsi, ale zase muzete dostat od Analog Devices vzorky a diky
firme AMTEK nejsou ani tyto typy u nas nedostupne.
Pak je moznost pouzivat 80C31, 80C32 a klony jako TS80C32X2,
ktere umi instrukcni cyklus za 6 misto12 fazi oscilatoru a stoji stejne
jako bezne 80C32, tedy vlastne skoro nic a v GM maloobchode
v Praze jich meli jeste nedavno plne suple :). Jen je nutne jim
prepnout prislusny bit pro zruseni delicky dvema na vstupu hodin
- jak ja se kdysi divil, ze to nebezi 2x tak rychle samo (nez jsem to
odhalil) :). K nim ale potrebujete FLASH pamet a tu musite
naprogramovat - tedy ani programator FLASH neni od veci.
Ale to neni jen tady, programovat FLASH se hodi vzdycky.
Pak je tady hromada dalsich podstatne drazsich klonu 51, o kterych
by Vam asi nejlepe poreferoval pan M. Kostomlatsky z MCU serveru.
No a pak je tady jeste "par" klonu od Philips, protoze to byl v urcite
dobe jeden z nejvetsich inovatoru 51 a tak ani hromady I/O bran
nejsou problemem a ADC na chipu taktez - 80C552. Tech vyrobcu
je ale docela hodne a ruznych vylepseni jak by smet. Nakonec jako
bombonek jsem u ATMELu zahledl AT8xC51SND1A s MP3
dekoderem (ovsem nevim do jake miry jde o fikci, nebo zda jiz
realne existuje).

Proste 51 se ujala a je jich vsude plno od tech nejstarsich
vyprodejnich jeste neCMOS leckdy i za 10Kc az po ty
supermoderni za rozumne ale i dlouhe penize. Navic si
prictete tuny materialu dostupnych na webu, kompilatory
a simulatory (prostredi od Analog Devices je tady nadherne
vybrousenym diamantem a je volne ke stazeni).

Kdyz Vam navic bude u 51 chybet pamet dat ci programu,
neni problem je pridat - to neni vsude samozrejme. Kdyz
budete chtit pamet dat a programu v jednom prostoru,
klidne si je jednoduse sloucite. Kdyz budete chtit hromady
portu, navesite je do adresoveho prostoru pameti dat.

A toho vseho se chcete vzdat, navic kdyz je ovladate jen proto,
abyste se musel ucit dele, nez stavet programator a jeste nejaky
ten patek pote stale hledal v PDF ? 

Mohu rici, ze mam velice rad PIC. Neni to MCU pro kazdeho,
spise takova zradna "mrcha", do ktere kdyz se jednou zamilujete
a zkrotite ji, rad sve mysleni casem preklopite :). Ale i tak obcas
pouzivam klony 51. Ono je vubec fajn moci si vybrat a proto rvu
stale do hlavy vsechno kolem ceho byt jen projdu :))).

Mohu Vam ale s naprostou jistotou rici to, ze vetsina aplikaci
vystaci s docela pomalym MCU a jen jakasi spicka ledovce
potrebuje sileny vykon. Ale spickove optimalizace na vykon,
to uz asi neni pro zacatek, protoze tam se zvazuje navaznost
kazde instrukce a jeji vhodnost, aby se nedelo cokoli zbytecne,
kdyz to jde jednoduseji a pocitaji se casto presne casy pro beh
v realnem case. Instrukce rovnou s podminkou, silne omezeny
pocet superrychlych instrukci u RISC ci instrukce, ktere provedou
vlastne 3 veci zaraz a stale jsou soucasti RISC instrukcniho
souboru (napr. posunou pointery a jeste neco od nekud nekam
prehodi) jsou nadherna vec a davaji tomu vsemu vyssi smysl
- uz jen to ovladat, pro ten pocit, je duvod to delat. Ale to vsechno
vyzaduje tvrde se porad ucit a to zacatecnika muze snadno smest
ze sceny. Je lepe mit "pocit boha" nad blikajici LEDkou,
nez rozpacity oblicej nad nefungujici "lahudkou" s 32bit CPU
s 200MIPS a prikonem pod 1W.

Nechci vyrabet zadny flame a tak nebudu presvedcovat ani
o vyhodach ci nevyhodach cehokoli - vsechno ma svoje.
Byt Vami, vratim se nejprve do 51, protoze tam uz umite
a neni to k zahozeni je umet i kdyby to casem pro Vas mel
byt jen az druhy ci nekolikaty typ. To se Vam jiste neztrati.

Citace ze je tam "jen" 51 nesvedci o dobre predstavivosti toho
kdo kdy co hodnoti, ale uz i to jsem na adresu 51 slysel.
Neni umeni udelat s drahym MCU jednoduchou aplikaci - to umi
kazdy - je umeni udelat ji na nejlacinejsim MCU jak to jde.
A tak nekdy pri ofrnovani se nad "jen 51" nemam zrovna nejlepsi
poctit z lidi co tohle dokazi "vypustit". Proste i 51 vyzaduje cit a
umeni a to ze ji umi spousta lidi neni nejaka degradace, ale
naopak prokazani kvalit. Vzdyt jen jak dlouho se drzi na vysluni
a jak dlouho jeste asi bude :). Bohuzel lidi co nemaji schopnost
veci domyslet je mnoho :(.

V kazdem pripade zacnete ted hned ! Kdyz budete zacinat tak jako
jeden muj znamy 2 roky v kuse, vysledek nebude zadny a stanete
se vecnym zacatecnikem - hruzna to predstava :).

Doufam, ze jsem Vam alespon trochu vlil chut programator pro
ony 51 postavit :). Az nas bude hodne, pujdeme pred ministerstvo
(kdyz ho zridili) vysypat nakladak jednochipu a chtit dotace
na kazdou napsanou instrukci :))).

--
Jiri Bezstarosti












Další informace o konferenci Hw-list