RE: 7 szegmenses kijelzo meghajtása ATM128-cal
Laurinyecz Zoltán
lauri at mail.globonet.hu
Wed Jul 6 22:23:00 CEST 2005
> Gyakorlatilag a programmemóriában tárolod le a táblázatodat sorban a 0-tól
> 9-ig, és tovább, ennek van egy kezdőcíme.
> A programban betöltöd a 16 bites Z (ZH és ZL) regiszterbe a táblázatod
> bájtban kifejezett kezdőcímét. Ehhez hozzáadod a kijelezni kívánt
> "karakter" kódját (saját kódolás: 0=0, 1=1, .. 9=9, 0xA=pl. A betű,
> 0x10=pl. mínusz jel, stb...), így a Z-ben most már annak a karakternek a
> címe van, amelyiket ki kell tenned a portra, hogy a kívánt karakter
> jelenjen meg.
Eddig nagyjából világos volt
(ATM128-on a programmemória 17 bites, mivel 128kiB van,
> ezért kell a RAMPZ regisztert is buherálnod, ebben van a 16. címbit, ld
> fent a MACRO felett az R17:ZH:ZL-ben tárolod a 17 bites címet, és ehhez
> adod hozzá az R16 regiszter alsó 4 bitjét; mivel a felső 4 bitet törli az
> [andi R16,0x0F])
> Ezután az lpm (vagy elpm) utasítással betöltöd a Z címen lévő,
> programmemóriában letárolt bájtot, ami az R0 regiszterbe kerül, ezt aztán
> kiírod a portra.
Ezen a részen még egy kicsit dolgoznom kell :-)
> Javaslom kicsit jobban ismerkedj meg a digitális technikával, a
> mikrokontrollerek lelkivilágával,
Azon vagyok :-) Szigorúan hobbiszinten
és nézd meg az ATMEGA128
> utasításkészletét, hogy pl. a fenti utasítások mit csinálnak.
> Ha nagyon nem akarsz elmélyedni az assemblyben, akkor meg programozz
Nem az akarattal van gond hanem a ráfordítható idővel ezért úgy látszik ebben a témában én már
örökre kezdő maradok. Azért ahhoz már elég régen csinálom ezt a szakmát hogy ha sikerélményre
van szükségem mindig megtalálom magamnak az megfelelő terepet. :-)
> C-ben, egyszerűbb, és jobban átláthatóbb, és a legtöbb esetben elég jó
> gépi kódot is generál.
Hát nemigen van kedvem előről kezdeni C-ben.
Köszi a segítséget:lauri
More information about the Elektro
mailing list