DS1302

Problémy s návrhem, konstrukcí, zapojením, realizací elektronických zařízení

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
Uživatelský avatar
ladislav37
Příspěvky: 34
Registrován: 21 kvě 2009, 00:00

DS1302

#1 Příspěvek od ladislav37 »

Dobry den.

Schcem sa Vas spytat ci nemate bahodou niekto skusenosti s tymto RTC obvodom. Snazim sa vytvorit program (ASM - 8051 - 89S8253) na komunikaciu s nim ale ako si mi to nejde a uz som asi vyskusal vsetko co ma napadlo, takl mozno ze napadne este nieco niekoho z Vas.

Za kazud radu dakujem...

Toto je len skusobny program, ide o to aby sa vypisovali sekundy na sedemsegmentovke (P0.7=a az P0.1=g ). Reset ds-ka je na P1.5.
Krystal = 24Mhz, Sclk=2Mhz

org 000h
ljmp start


org 50h
start:
mov dptr, #tab1 ;nahranie tabulky cisel
mov a, #0
mov r0, #0
clr p3.2 ;zapnutie 6 segmentoviek
clr p3.3
clr p3.4
clr p3.5
clr p3.6
clr p3.7

setb p1.5 ;reset ds-ko do log. 1
mov scon, #0 ;inicializacia seriovej linky, mod0, synchronny rezim
clr ti ;premazanie priznaku odoslania
mov sbuf, #10000000b ;volba sekundoveho registra
jnb ti, $ ;cakanie na odoslanie slova...
clr ti
mov sbuf, #10000010b ;zastavenie casu
jnb ti, $
clr ti
mov sbuf, #10000010b ;volba minutoveho registra
jnb ti, $
clr ti
mov sbuf, #00110011b ;nastavenie nejakej hodnoty
jnb ti, $
clr ti
mov sbuf, #10000100b ;volba hodinoveho registra
jnb ti, $
clr ti
mov sbuf, #00000111b ;nastavenie nejakej hodnoty
jnb ti, $
clr ti
mov sbuf, #10000000b ;volba sekundoveho registra
jnb ti, $
clr ti
mov sbuf, #00000010b ;spustenie casu
jnb ti, $
clr ti


nav1:
setb p1.5
clr TI
mov sbuf, #10000001b ;volba sekundoveho registra, mnod citania
jnb TI,$
setb ren ;povolenie prijmu
jnb ri, $ ;cakanie na priznak prijatia
mov r0, sbuf ;presun z bufferu do registra
clr RI ;vymazanie priznaku prijatia
clr p1.5
mov a, r0
anl a, #00001111b ;odstranenie nepotrebneho, zatial stacia iba sekundy
movc a, @a+dptr ;vyber cislice z tabulky (0-9, pre vecsie cislo -)
mov p0, a ;zobrazenie
lcall delay ;pauza 0,5s
ljmp nav1


delay: mov r3, #251 ;0,5s
on3: mov r2, #234
on2: mov r1, #7
on1: djnz r1, on1
djnz r2, on2
djnz r3, on3

ret


tab1:
db 11111100b ;0
db 01100000b ;1
db 11011010b ;2
db 11110010b ;3
db 01100110b ;4
db 10110110b ;5
db 10111110b ;6
db 11100000b ;7
db 11111110b ;8
db 11110110b ;9
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-
db 00000010b ;-

END
Přílohy
DS1302.PDF
(218.92 KiB) Staženo 165 x
Naposledy upravil(a) ladislav37 dne 09 srp 2009, 17:51, celkem upraveno 2 x.
Návštěvník

#2 Příspěvek od Návštěvník »

Nemá v té smyčce čtení sekund být

Kód: Vybrat vše

clr ri ;vymazanie priznaku prijatia

místo

Kód: Vybrat vše

clr ti ;vymazanie priznaku prijatia

?
Uživatelský avatar
ladislav37
Příspěvky: 34
Registrován: 21 kvě 2009, 00:00

#3 Příspěvek od ladislav37 »

Ano ma, dik za postreh, opravene...
Odpovědět

Zpět na „Řešení problémů s různými konstrukcemi“