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