Archiwum pl.misc.elektronika na elektroda.pl



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: Robert Niestroj <ODPOWIADAJACUSUNTOrniestroj_at_nospam_go2.pl.invalid>
Date: 2 Mar 2004 21:18:18 +0100


Witam,
mamy w szkole na mikroporcesorach zaprogramować w ASM miernik
częstotliwości na DSM51. Częstotliwość jest podawana do isolated I/O.
Zaprogramowałem już coś w szkole i coś ten program mierzył, bo
wyświetlał liczby HEX na LCDku i zmieniały się one wraz ze zmianą
częstotliwości.
Wykładowca mówił, że to działa źle - ja nie wiem. Chciałbym zrobić
jednak aby to co wyświetla na LCDku pokazywało się w formie liczby
dziesiętnej. Jak zrobić taką konwersję (hex->dec)? Np. mam w rejestrze
wartość A8 - jakbym to robił na papierze to bym pisał 8*16^0 + 10*16^1 =
168. Ale jak rodzielić A8 na dwie części do dwóch rejestrów?
Jest w EPROMIe DSMa podprogram zamieniający HEX na BCD - może ktoś wie
jak z tego potem przejść na DEC? Byłbym wdzięczny za jakiś gotowy kod :-)

Poniżej kod częstotliwościomierza. Jak ktoś widzi w nim jakiś błąd albo
ma lepszy już gotowy to proszę o przysłanie mi go :>

LJMP START
ORG 1BH
LJMP PRZERWA
ORG 100H
START:
LCALL LCD_INIT ;inicjalizacja lcd
LCALL LCD_CLR ;czyszczenie lcd
SETB EA ; ustawienie
SETB ET1 ; przerwań
MOV TMOD,#00011100B ;ustawienie liczników t1 i t2
MOV TH1,#78 ;Timer 0 na 50ms
MOV TL1,#0
SETB TR0 ;start Timera TR0
SETB TR1 ;start Timera TR1
WYSW:
MOV A,R5 ;czestotliwość do A
LCALL WRITE_HEX ; wyswietlenie
MOV A,#10 ; na
LCALL DELAY_100MS ; 1 sekundę
LCALL LCD_CLR ;czyszczenie lcd
LJMP WYSW
PRZERWA:
MOV R5,TL0 ;zliczona czestotliwość do R5
MOV TL0,#0 ;zerowania TL0
KONIEC:
RETI

--
[ : Robert Niestroj ::::::: member of rally.pl te_at_nospam_m OPOLE :::::::::::: ]
[ : [JID: rniestroj_at_nospam_jabberpl.org] : [GG: 1734202] : [ICQ: 162506105] : ]
[ : :::: [ http://mozillapl.org ] :::: [ http://rallyonline.pl ] ::::: ]
[ : "W porównaniu z nami Formuła 1 to przedszkole", Colin McRae 2001 : ]

========
Path: news-archive.icm.edu.pl!news2.icm.edu.pl!newsfeed.silweb.pl!news.open.net.pl!not-for-mai