PIC18F2450/4450
2006 Microchip Technology Inc.
Advance Information
DS39760A-page 101
9.2
PORTB, TRISB and LATB
Registers
PORTB is an 8-bit wide, bidirectional port. The
corresponding data direction register is TRISB. Setting
a TRISB bit (= 1) will make the corresponding PORTB
pin an input (i.e., put the corresponding output driver in
a high-impedance mode). Clearing a TRISB bit (= 0)
will make the corresponding PORTB pin an output (i.e.,
put the contents of the output latch on the selected pin).
The Data Latch register (LATB) is also memory
mapped. Read-modify-write operations on the LATB
register read and write the latched output value for
PORTB.
Each of the PORTB pins has a weak internal pull-up. A
single control bit can turn on all the pull-ups. This is
performed by clearing bit, RBPU (INTCON2<7>). The
weak pull-up is automatically turned off when the port
pin is configured as an output. The pull-ups are
disabled on a Power-on Reset.
Four of the PORTB pins (RB7:RB4) have an interrupt-
on-change feature. Only pins configured as inputs can
cause this interrupt to occur. Any RB7:RB4 pin
configured as an output is excluded from the interrupt-
on-change comparison. The pins are compared with
the old value latched on the last read of PORTB. The
“mismatch” outputs of RB7:RB4 are ORed together to
generate the RB Port Change Interrupt with Flag bit,
RBIF (INTCON<0>).
The interrupt-on-change can be used to wake the
device from Sleep. The user, in the Interrupt Service
Routine, can clear the interrupt in the following manner:
a)
Any read or write of PORTB (except with the
MOVFF
(ANY), PORTB
instruction). This will
end the mismatch condition.
b)
Clear flag bit, RBIF.
A mismatch condition will continue to set flag bit, RBIF.
Reading PORTB will end the mismatch condition and
allow flag bit, RBIF, to be cleared.
The interrupt-on-change feature is recommended for
wake-up on key depression operation and operations
where PORTB is only used for the interrupt-on-change
feature. Polling of PORTB is not recommended while
using the interrupt-on-change feature.
Pins, RB2 and RB3, are multiplexed with the USB
peripheral and serve as the differential signal outputs
for an external USB transceiver (TRIS configuration).
additional information on configuring the USB module
for operation with an external transceiver.
EXAMPLE 9-2:
INITIALIZING PORTB
Note:
On a Power-on Reset, RB4:RB0 are
configured as analog inputs by default and
read as ‘0’; RB7:RB5 are configured as
digital inputs.
By programming the Configuration bit,
PBADEN (CONFIG3H<1>), RB4:RB0 will
alternatively be configured as digital inputs
on POR.
CLRF
PORTB
; Initialize PORTB by
; clearing output
; data latches
CLRF
LATB
; Alternate method
; to clear output
; data latches
MOVLW
0Eh
; Set RB<4:0> as
MOVWF
ADCON1
; digital I/O pins
; (required if config bit
; PBADEN is set)
MOVLW
0CFh
; Value used to
; initialize data
; direction
MOVWF
TRISB
; Set RB<3:0> as inputs
; RB<5:4> as outputs
; RB<7:6> as inputs
相关PDF资料
PIC16F627-20/P IC MCU FLASH 1KX14 COMP 18DIP
PIC24FJ16GA002-I/ML IC PIC MCU FLASH 16K 28-QFN
PIC16LF627-04/SO IC MCU FLASH 1KX14 COMP 18SOIC
PIC16F72-I/ML IC PIC MCU FLASH 2KX14 28-QFN
XF2R34154A CONN FPC 34POS 0.5MM PITCH SMD
XF2R24154A CONN FPC 24POS 0.5MM PITCH SMD
PIC18F45K20-I/ML IC PIC MCU FLASH 16KX16 44QFN
PIC18F14K50-I/SO IC PIC MCU FLASH 8KX16 20-SOIC
相关代理商/技术参数
PIC16C57C-04/SO 制造商:Microchip Technology Inc 功能描述:8BIT CMOS MCU SMD 16C57 SOIC28
PIC16C57C-04/SP 功能描述:8位微控制器 -MCU 3KB 72 RAM 20 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16C57C-04/SP 制造商:Microchip Technology Inc 功能描述:IC 8BIT CMOS MCU 16C57 SDIL28
PIC16C57C-04/SP 制造商:Microchip Technology Inc 功能描述:Microcontroller IC Number of I/Os:20
PIC16C57C-04/SS 功能描述:8位微控制器 -MCU 3KB 72 RAM 20 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16C57C-04E/P 功能描述:8位微控制器 -MCU 3KB 72 RAM 20 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16C57C-04E/SO 功能描述:8位微控制器 -MCU 3KB 72 RAM 20 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC16C57C-04E/SP 功能描述:8位微控制器 -MCU 3KB 72 RAM 20 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT