goede avond,

is het mogelijk om met een pic 16f690 een bepaald gedeelte van een byte te lezen ??

bv..als ik van het trisa register "op een bepaald punt in het programma"
aleen de waarde van bit 0 t/m 2 wil controleren op bepaalde waardes.. en dat bit 3 t/m 5 niet wordt gelezen.

grtz beest :)

Mogen we ook weten in welke taal je dat wilt doen?...

Bits die je niet nodig hebt '0' maken met een AND mask.
Waarom zou je het TRIS register eigenlijk uit willen lezen?
Je hebt dat register zelf ingesteld, dat verandert echt niet spontaan...


movf    trisa,w
andlw   b'00000111'

dan zou ik dus het porta register uit moeten lezen ??
wil namelijk de waarde van het porta register weten en daar een actie aan koppelen..

ging er dus van uit dat ik via het trisa register porta het beste uit kon lezen..


      movf      trisa,  w
      andlw     b'00000111'      

      movf	trisa,	w
      xorlw	0x05	   
      btfsc	status,	z
      call	....

TRISA is het DDR (Data Direction Register), daar stel je in of output mee in.
PORTA (of LATA op 18Fxxx) gebruik je om de port in te lezen.


        banksel porta
        movf    porta,w
        andlw   b'00000111'      
        xorlw   0x05	   
        btfsc   status,z
        call    ....

dan is dit idd de juiste oplossing..

thnx :)