- Port B is a 8 bit wide bi-directional port.
- Setting a bit of the TRISB register to 1 will make the corresponding bit of Port B an input.
- Each Port B pin has a weak pull-up. All the weak pull-ups can be disabled by clearing bit 7 of the OPTION register (RBPU).
| Maximum current sourced | 100 mA |
| Maximum current sunk | 150 mA |
Port B Hardware
| Pin | Name | Input | Output | Description |
|---|
| 6 | RB0 | TTL | TTL | Bi-directional I/O Port |
|---|
| INT | ST | - | External Interupt |
| 7 | RB1 | TTL | TTL | Bi-directional I/O Port B |
|---|
| 8 | RB2 | TTL | TTL | Bi-directional I/O Port B |
|---|
| 9 | RB3 | TTL | TTL | Bi-directional I/O Port B |
|---|
| 10 | RB4 | TTL | TTL | Bi-directional I/O Port B, interupt-on-change pin. |
|---|
| 11 | RB5 | TTL | TTL | Bi-directional I/O Port B, interupt-on-change pin. |
|---|
| 12 | RB6 | TTL | TTL | Bi-directional I/O Port B, interupt-on-change pin. |
|---|
| 13 | RB7 | TTL | TTL | Bi-directional I/O Port B, interupt-on-change pin. |
|---|
Port B Register
| Bit | Kind | Name | Description |
Pwr | Other |
| bit 7 | R/W-x | RB7 |
General Purpose I/O bit 1 = pin is > Vih. 0 = pin is < Vil. | x | u |
| bit 6 |
R/W-x | RB6 | x | u |
| bit 5 |
R/W-x | RB5 | x | u |
| bit 4 |
R/W-X | RB4 | x | u |
| bit 3 |
R/W-X | RB3 | x | u |
| bit 2 |
R/W-X | RB2 | x | u |
| bit 1 |
R/W-X | RB1 | x | u |
| bit 0 |
R/W-X | RB0 | x | u |
TRISB Register
| Bit | Kind | Name | Description | Pwr |
Other |
| bit 7 | R/W-1 | TRISB7 | 1 = pin is configured as an input. 0 = pin is configured as an output. | 1 | 1 |
|---|
| bit 6 | R/W-1 | TRISB6 | 1 | 1 |
|---|
| bit 5 | R/W-1 | TRISB5 | 1 | 1 |
|---|
| bit 4 | R/W-1 | TRISB4 | 1 | 1 |
|---|
| bit 3 | R/W-1 | TRISB3 | 1 | 1 |
|---|
| bit 2 | R/W-1 | TRISB2 | 1 | 1 |
|---|
| bit 1 | R/W-1 | TRISB1 | 1 | 1 |
|---|
| bit 0 | R/W-1 | TRISB0 | 1 | 1 |
|---|
BCF STATUS, RP0 ;
CLRF PORTB ; Initialize PORTB by
; clearing output
; data latches
BSF STATUS, RP0 ; Select Bank 1
MOVLW b'11001111' ; Value used to
; initialize data
; direction
MOVWF TRISB ; Set RB7-RB6 and RB3-RB0 as inputs
; RB5-RB4 as outputs