Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Microchip <strong>PIC</strong> <strong>16F628</strong> M. Deloizy 19<br />
IV..<br />
Programmation logicielle<br />
IV.1. Ecriture de programmes<br />
IV.1.a. Instructions sur octets<br />
'f' : registre (file register), de 0 à 7Fh<br />
'd' : destination<br />
si d=0 → résultat dans W<br />
si d=1 → résultat dans 'f'<br />
Exemples :<br />
CLRW 0 → W<br />
DECF CNT,1 CNT-1 → CNT<br />
DECF CNT,0 CNT-1 → W<br />
ENCORE DECFSZ REG,1 décrémente REG ; SKIP * si Zéro<br />
GOTO ENCORE brancher à ENCORE si REG ≠ 0<br />
SUITE<br />
f défini = 1<br />
SWAP RG1,f si RG1=F4h ⇒ RG1=4Fh<br />
SUBWF AB,W AB-W → W ; C=1 si résultat ≥ 0<br />
W défini = 0<br />
(*) : n'exécute pas l'instruction suivante.<br />
IV.1.b. Instructions sur bits<br />
'b' : numéro du bit affecté par l'opération (0 à 7)<br />
'f' : registre<br />
Exemples :<br />
BCF REG,3 met à 0 le bit 3 de REG<br />
BTFSC CNT,7 test du bit 7 de CNT ; SKIP si = 0<br />
IV.1.c. Opérations littérales et de contrôle<br />
'k' : constante de 8 ou 11 bits, ou valeur littérale<br />
Exemples :<br />
ADDLW 23 W+23 → W ; k sur 8 bits<br />
CALL TOTO appel du sous pgm TOTO ; k sur 11 bits<br />
GOTO SUITE<br />
MOVLW 0x03 03h → W<br />
CLRWDT remise à 0 du Watchdog<br />
SLEEP mise en veille (réveil par RESET, iT ou WDT)<br />
RETLW 0x12 ⇔ W=12h ; RETURN