Jak jsem starej tak jsem bl.ej

Pavel Krejci krepa
Středa Březen 17 14:27:55 CET 2004


> Diky vsem, ktere jsem trapil dotazem s trucujicim displayem a snazili se mi
> pomoci. Zavada nakonec byla uplne jinde. Snad by nevadilo, kdybych ji
> popsal, aby se nestala jinym.
> Rutinu pro zapis dat na display mam udelanou tak, ze v reg.A je znak, ktery
> posilam a protoze pouzivam 4 bitovou komunikaci a je potreba rozlisit data a
> instrukce mam tento bit ulozen v bitove oblasti jako bit 2 a P1.2 je
> odpovidajici bit displaye, P1.7 az P1.4 jsou data. No a ja tam mam
> push acc
> anl a,0F0h
a tady delate A and B (0xF0 je adresa registru B)
pokud to melo byt A and 0xF0 
tak to ma byt 

anl a,#0F0h


> orl a,20h   * bitova oblast
> mov P1,a
> setb Enable
> nop
> clr Enable
> pop Acc
> swap a * druhy nible
> anl a,0F0h
> orl a,20h   * bitova oblast
> mov P1,a
> setb Enable
> nop
> clr Enable
> 
> to by fungovalo,ale ja zapomel, ze atmel po resetu nenuluje bitovou oblast,
> takze instrukce orl a,20h mi nastavila do 1 i nektere bity 4-7. Takze se
> prenasely nesmysly. Nekdy tam ale byly nuly a tak to fungovalo.
> Je to hloupa chyba zapomenout na nulovani.
> Dik vsem
> 
> Martin Zaruba
> 
> 
> 





Další informace o konferenci Hw-list