PIC16F54-I/P Microchip Technology Inc., PIC16F54-I/P Datasheet - Page 53
![no-image](/images/manufacturer_photos/0/4/440/microchip_technology_inc__sml.jpg)
PIC16F54-I/P
Manufacturer Part Number
PIC16F54-I/P
Description
18 PIN, 768 B FLASH, 25 RAM, 12 I/O
Manufacturer
Microchip Technology Inc.
Datasheet
1.PIC16F54-IP.pdf
(90 pages)
Specifications of PIC16F54-I/P
Cpu Speed
5 MIPS
Eeprom Memory
0 Bytes
Frequency
20 MHz
Input Output
12
Memory Type
Flash
Number Of Bits
8
Package Type
18-pin PDIP
Programmable Memory
750 Bytes
Ram Size
25 Bytes
Speed
20 MHz
Timers
1-8-bit
Voltage, Range
2-5.5 V
Lead Free Status / Rohs Status
RoHS Compliant part
Electrostatic Device
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
PIC16F54-I/P
Manufacturer:
MARVELL
Quantity:
429
SUBWF
Syntax:
Operands:
Operation:
Status Affected: C, DC, Z
Encoding:
Description:
Words:
Cycles:
Example 1:
Example 2:
Example 3:
2004 Microchip Technology Inc.
Before Instruction
After Instruction
Before Instruction
After Instruction
After Instruction
REG1
W
C
REG1
W
C
REG1
W
C
REG1
W
C
Before Instruction
REG1
W
C
REG1
W
C
Subtract (2’s complement method)
Subtract W from f
[ label ] SUBWF f, d
0
d
(f) – (W)
the W register from register ‘f’. If ‘d’
is ‘0’, the result is stored in the W
register. If ‘d’ is ‘1’, the result is
stored back in register ‘f’.
1
1
SUBWF
0000
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
f
[0,1]
3
2
?
1
2
1
2
2
?
0
2
1
1
2
?
0xFF
2
0
31
10df
REG1, 1
dest)
; result is positive
; result is zero
; result is negative
ffff
SWAPF
Syntax:
Operands:
Operation:
Status Affected: None
Encoding:
Description:
Words:
Cycles:
Example:
TRIS
Syntax:
Operands:
Operation:
Status Affected: None
Encoding:
Description:
Words:
Cycles:
Example:
Before Instruction
After Instruction
Before Instruction
After Instruction
REG1
REG1
W
W
TRISB
Swap Nibbles in f
[ label ] SWAPF f, d
0
d
(f<3:0>)
(f<7:4>)
The upper and lower nibbles of
register ‘f’ are exchanged. If ‘d’ is
‘0’, the result is placed in W
register. If ‘d’ is ‘1’, the result is
placed in register ‘f’.
1
1
SWAPF REG1, 0
=
=
Load TRIS Register
[ label ] TRIS
f = 5, 6, 7, 8 or 9
(W)
TRIS register ‘f’ (f = 5, 6 or 7) is
loaded with the contents of the W
register.
1
1
TRIS
0011
0000
=
=
=
f
[0,1]
0xA5
0xA5
31
0xA5
0xA5
0x5A
TRIS register f
PORTB
10df
PIC16F5X
0000
(dest<7:4>);
(dest<3:0>)
DS41213C-page 51
f
ffff
0fff