RE: 7 szegmenses kijelzõ meghajtása ATM128-cal

Laurinyecz Zoltán lauri at mail.globonet.hu
Wed Jul 6 18:17:44 CEST 2005


	> >
	> > A kérdés nagyjából adott a tárgyban. A PORTB-re rá van téve egy
	> hétszegmenses kijelzõ
	> > (PB0-PB7)illetve van egy regiszter aminek az értéke 0-9-ig változik. Milyen
	> bevált megoldás
	> > létezik amivel a regiszter értékét át lehet konvertálni olyan formátumra
	> amit kiküldve a portra
	> > megjelenik a szám?
	> >
	> > Az elvileg mûködik a kõbaltás módszer hogy megnézem hogy mely szegmenseknek
	> kell bekapcsolva
	> > lenniük, majd minden számhozhozzárendelem az így kialakult értéket és

	>Szia!

	>Nem tudom, ez miért fapados, szerintem ennél egyszerubben meg sem lehet
	>csinálni...
	>RI

	>Amit leírtál, az a módszer, mert másképp hogy számolod ki, hogy melyik
	>szegmenst hova kötötted. A másik, hogy ennél gyorsabb és rövidebb
	>rutin nincs.Best regards,Pintér


Olvasva ezeket a válaszokat kezdem azt érezni hogy mégsem vagyok teljesen reménytelen eset
tekintve hogy én is azt láttam legegyszerubbnek ami valójában az is. Csak valamiért azt
gondoltam hogy van valami ettol is profibb megoldás.




            > 10 elemu tablazat, amiben 0..9-ig szerepelnek a "dekodolt" szegmensek.
	> Kereses meg a binaris szam hozzaadasa a tablazat cimehez. Gyors es
	> egyszeru.
	>
	> R16-ban legyen a szamod
	>
	> ldi ZL,low(tabla*2)
	> ldi ZH,hi(tabla*2)
	> ldi R17,(tabla/32768)
	> clr R0
	> andi R16,0x0F
	> add ZL,R16
	> adc ZH,R0
	> adc R17,R0
	> out RAMPZ,R17
	> elpm R0,Z
	> out portb,R0


            >.MACRO _Display		;@0
		>ldi	R17, at 0		;i <- aktualis karakter kodja
		>_ldi16	ZH,ZL,PLed	;Z <- karakter-tabla cime
		>_add16	ZH,ZL,R17	;Z <- Z+i
		>lpm				;R0 <- prg(Z)	(karakter formaja)
		>out	PORTB,R0		;karakter kiir
	>.ENDMACRO	;_Display

Átnézve más forrásokat is gyakorlatilag a fenti két rutinhoz hasonló megoldásokat találtam. A
közös bennük hogy egyiket sem igazán értettem meg t.i. hogy melyik sor mit csinál és legfoképpen
hogy hogyan.

El tudná-e magyarázni valaki a rutinok muködését egy kicsit bovebben olyasvalakinek aki épp csak
hogy túl van az elso villogó led meg futófény programján?  (ez vagyok én)

köszi: lauri







More information about the Elektro mailing list