PIC e IF ELSE

Aug 21, 2003 2 Replies

Ciao!



Come facio ad intraprendere una serie di azioni solo se una cera condizione è vera? Il set di istruzioni mette a disposizione BTFSS e BTFSC ma queste agiscono solo su un bit... io vorrei ottenere qualcosa del tipo if (A=8) and (b=5) then begin led0_on led1_on end E' possibile?



Grazie sin d'ora


Per eseguire una if del tipo if pippo = 15 then goto address in assembler devi sottrarre il numero al registro da valutare e poi vedere se il bit Z (zero bit) del registro status è 1 o 0. Questo bit infatti diventa 1 quando il risultato di un'operazione aritmetica è 0. Quindi una routine potrebbe essere questa:

movlw 15 subwf pippo,W btfsc STATUS,Z goto uguale_a_quindici goto diverso_da_quindici

Altre info le trovi qui:

formatting link

Ciao Fil

Ila ha scritto:

questo articolo e` stato inviato via web dal servizio gratuito http://www.newsland.it/news segnala gli abusi ad abuse@newsland.it

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required