Instrukční soubor mikrořadičů PIC16C5x
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu DOC.
Instrukční soubor mikrořadičů PIC16C5x
Instrukce pro aritmetické a logické operace
ADDWF f,d sečte obsah registru W a f, výsledek do W, d=0 C, DC, Z SC=1
F , d=1
ANDLW k logický součin mezi jed.bity registru W a konstantou k Z SC=1
ANDWF f,d logický součin mezi bity registru W a f, výsledek do: W, d=0 Z SC=1
F , d=1
COMPF f,d jednotkový doplněk ( negace) ( f ), výsledek do: W, d=0 Z SC=1
F, d=1
DECF f,d ( f ) = ( f ) – 1 výsledek do: W, d=0 Z SC=1
F, d=1
INCF f,d ( f ) = ( f ) + 1 výsledek do: W, d=0 Z SC=1
F, d=1
IORLW k logický součet mezi konst. k a ( W ) výsledek do W Z SC=1
IORWF f,d log.součet mezi obsahem reg. W a f výsledek do: W, d=0 Z SC=1 F, d=1
SUBWF f,d ( f ) – ( W ) výsledek do: W, d=0 C, DSC,Z SC=1
F, d=1
XORLW k XOR mezi ( W ) a k výsledek do: W Z SC=1
XORWF f,d XOR mezi ( W ) a ( f ) výsledek do: W, d=0 Z SC=1
F, d=1
instrukce nulování a nastavení
BCF f,b bit b registru f je vynulován -- SC=1
BSF f,b bit b registru f je nastaven do 1 -- SC=1
CLRF f vynuluje se obsah registru f Z SC=1
CLRW vynuluje obsah registru W Z SC=1
CLRWDT vynuluje se WDT a předdělička pokud je připojena TO, PD do 1 SC=1
instrukce přenosu dat
MOVF f,d ( f ) → ( W ) pokud d=0 Z SC=1
MOVWF f ( W ) → ( f ) -- SC=1
MOVLW k k → ( W ) -- SC=1
RLF f,d rotace vlevo registru f přes C o 1 pozici → ( W ) d=0 C SC=1
→ ( f ) d=1
RRF f,d rotace vpravo registru f přes C o 1 pozici → ( W ) d=0 C SC=1
→ ( f ) d=1
SWAPF f,d prohození dolního a horního půlbytu reg.f → ( W ) d=0 -- SC=1
→ ( f ) d=1
instrukce pro práci s podprogramy
CALL k volání podprogramu
( PC + 1 ) → stacku, k → ( PC7/0 ) 0 →( PC8 ) ( PA2/0 ) → ( PC11/9 ) SC=2
RETLW k návrat z podprogramu
k → ( W ) vrchol stacku → ( PC ) SC=2
instrukce skoků v programu
BTFSC f,b b=0 registru f → následující instrukce přeskočena ( NOP ) SC=1(2)
BTFSS f,b b=1 registru f → následující instrukce přeskočena ( NOP ) SC=1(2)
DECFSZ f,d ( f ) – 1 → W pokud d=0
→ f pokud d=1
pokud výsledek odečtení =0 →přeskočení následující instrukce SC1(2)
INCFSZ f,d ( f ) + 1 → W pokud d=0
→ f pokud d=1
pokud výsledek odečtení =0 →přeskočení následující instrukce SC1(2)
GOTO k nepodmíněný skok SC=2
9-ti bitová konstanta → ( PC8/0 ), ( PA2/0 ) → ( PC 11/9 )
zvláštní instrukce
NOP prázdná instrukce -- SC=1
OPTION ( W ) → ( OPTION ) -- SC=1
SLEEP WDT a předdělička vynulovány, mikrořadič přejde do stavu SLEEP TO=1, PD=0 SC=1
TRIS f ( W ) → TRIS registru portu I/O f = 5, 6, 7 SC=1