tlc5920 16x8 led driver/controller
Daniel Valuch
balu na k-net.fr
Úterý Srpen 28 07:32:06 CEST 2018
pisal som to pred 10 rokmi, ale reverznut by nemalo byt tazke :-)
hodiny equ 30h ;aktualny cas
minuty equ 32h
sekundy equ 34h
medzi_low equ 36h
medzi_high equ 37h
GPS_status equ 38h
sek_tmp1 equ 39h
sek_tmp2 equ 3Ah
timeshift bit 7Ch ;time shift with respect to GMT. 0 = GMT+1, 1 = GMT+2
timeshift_in bit p3.5 ;timeshift input
text equ 40h ; zaciatok 32B bloku s aktualnym textom
disp equ 40h ;zaciatok pamate s datami pre displej
disp1 equ 40h ; znak1 H displeja 1
disp2 equ 48h ; znak1 H displeja 2
disp3 equ 50h ; znak1 H displeja 3
disp4 equ 58h ; znak1 H displeja 4
disp5 equ 60h ; znak1 H displeja 5
disp6 equ 68h ; znak1 H displeja 6
disp7 equ 70h ; znak1 H displeja 7
disp8 equ 78h ; znak1 H displeja 8
znak1 equ 80h ; zaciatok dat (bit 0) pre znak1
znak2 equ 90h ; zaciatok dat (bit 0) pre znak2
znak3 equ 0A0h ; zaciatok dat (bit 0) pre znak3
znak4 equ 0B0h ; zaciatok dat (bit 0) pre znak4
latch bit P2.7
blank bit P2.5
sclk bit P2.6
csel0 bit P2.4
csel1 bit P2.3
csel2 bit P2.2
RCAP2H equ 0CBh
RCAP2L equ 0CAh
T2MOD equ 0C9H
T2CON equ 0C8H
TR2 bit 0C8h.2
task1flag bit 78h
task2flag bit 79h
task3flag bit 7Ah
task4flag bit 7Bh
pocet_znakov equ 32 ; pocet znakov na displeji
org 0
jmp init
;interrupt handles
org 0bh ;------- timer 0 interrupt handle
mov TL0,#Low T0_const
mov TH0,#High T0_const
push 0h ;push registra R0
push 1h ;push registra R1
jb task1flag,task1
jb task2flag,task2
jb task3flag,task3
jb task4flag,task4
setb task1flag
clr task2flag
clr task3flag
clr task4flag
jmp von_z_int
task1:
clr task1flag
setb task2flag
clr task3flag
clr task4flag
;
mov R0,#znak1
mov R1,#16
; setb blank
loop3: mov P0, na R0
setb sclk
inc R0
clr sclk
djnz R1,loop3
setb latch
clr latch
clr csel0
clr csel1
clr csel2
; clr blank
jmp von_z_int
task2:
clr task1flag
clr task2flag
setb task3flag
clr task4flag
;
mov R0,#znak2
mov R1,#16
; setb blank
loop4: mov P0, na R0
setb sclk
inc R0
clr sclk
djnz R1,loop4
setb latch
clr latch
setb csel0
clr csel1
clr csel2
; clr blank
jmp von_z_int
task3:
clr task1flag
clr task2flag
clr task3flag
setb task4flag
mov R0,#znak3
mov R1,#16
; setb blank
loop5: mov P0, na R0
setb sclk
inc R0
clr sclk
djnz R1,loop5
setb latch
clr latch
clr csel0
setb csel1
clr csel2
; clr blank
jmp von_z_int
task4:
setb task1flag
clr task2flag
clr task3flag
clr task4flag
;
mov R0,#znak4
mov R1,#16
; setb blank
loop6: mov P0, na R0
setb sclk
inc R0
clr sclk
djnz R1,loop6
setb latch
clr latch
setb csel0
setb csel1
clr csel2
; clr blank
jmp von_z_int
von_z_int:
clr blank
pop 1h ;pop registra R1
pop 0h ;pop registra R1
reti
On 27/08/2018 21:58, David Belohrad wrote:
> Ahojte,
>
> ma prosim nekdo zkusenosti s tl5920?
>
> www.ti.com/lit/ds/symlink/tlc5920.pdf
>
>
> nevim jak spravne formulovat muj dotaz. ... nefunguje to a asi nerozumim, jak to ma fungovat. Datasheet je velice skoupy na informace. a at delam co delam, led matrix zobrazuje hovadiny. Vyrobil jsem kus systemverilog kodu, ktery dava 'blank' signal trvale na log. L. Necham vzdy do 16 bitoveho registru nacist pro dany radek tu 16-bitovou informaci, po kazdych 16 bitech vytvorim puls na LATCH (transision L->H->L), a na kazdych 16-bitech cykluji csel vzdy dvakrat (tedy mezi dvema latch impulzy ma csel hodnotu 0,1 pak 2,3 pak 4,5), a tedy jeden 'frame' vyzaduje 4x latch - celkove 64 bitu poslanych na kazdy frame, ktery cykluje csel od nuly do sedmi.
>
> Kdyz to spustim a divam se na data na SIN/SOUT, vsechno vypada perfektne, logicky. Ovsem diody si delaji co chteji. nektere z nich slabe sviti, nektere silne, skoro to vypada, jako kdyby nebyl dostatecny proud tema diodama, nebo dochazelo k nejakemu mixu mezi logikou CSEL pinu a seriove linky. Napada me jenom, ze signal BLANK proste z nejakeho neznameho duvodu musi byt take pouzivan. Ja jej mam trvale na nule, protoze chci mit ty diody neustale zapnute.
>
> Tak me napadlo, nema k tomuto driveru nekdo kod napsany pro ... cokoliv? arduino/jakykoliv mikrokontroler, abych si mohl proverit jestli casuji jak mam? K cemu je BLANK?
>
> ztratil jsem s tou hovadinou cely den
>
> diiky.
>
> .d.
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list