PIC + asm TRIS
Hynek Sladky
econf@centrum.cz
Pondělí Květen 12 07:49:15 CEST 2008
DsPIC neznam, ale ani na tomto kodu nevidim zadny problem. IMHO i
instrukce BCF/BSF delaji to stejne (read-modify-write) na celem portu...
napr. u PIC16Fxxx pokud se nastavi bit jako vstup, do vystupniho
registru se daji nuly a vstupy jsou v H, tak BCF/BSF nastavi jen
prislusny bit, ostatni bity se nastavi dle aktualne prectene urovne...
Spis by bylo dobre zjistit, proc pri zmene jednoho bitu blikne LCD...
Jestli tam neni jeste neco jineho (HW/SW), co zpusobuje to blikani...
Hynek Sladky
Ing. Libor Konečný wrote:
> No mikroe to prelozi takto :
>
> C zapis:
> TRISGbits.TRISG3 = 0;
>
> ASM code ?
>
> $1946 $2FFF71 MOV #65527, W1
> $1948 $202E40 MOV #@TRISGbits+0, W0
> $194A $608810 AND W1, [W0], [W0]
>
>
> Opravdu neni instrukce pro nastaveni jednoho pinu jako output a input
> bez zasahu do celeho registru ?
>
>
> LK
>
>
> Jan Waclawek napsal(a):
>
>>Mozno aj v cecku by stacilo si drzat stav toho registra v shadow premennej v RAM.
>>
>>wek
>>
>>----- Original Message ---------------
>>
>>
>>>Zdravim
>>>Tak aby tu nebylo tak mrt-f-o , tak bych mel dotaz, jak nastavit v ASM
>>>(konretne DsPIC ) vystupni/vstupni jeden pin.
>>>Konkretne je to na ovladani eepromky i2c, na zbytku portu visi display,
>>>a syntaxe v C TRISGbits.TRISG3 = 0; zpusobi ze display v okamziku
>>>zapisu/cteni i2c problikne.
>>>Tudiz bych potreboval nastavit ten PIN 3 portu G ciste
>>>assemblerovky....jak ?
Další informace o konferenci Hw-list