欢迎访问ic37.com |
会员登录 免费注册
发布采购

PIC16C54-RC/P 参数 Datasheet PDF下载

PIC16C54-RC/P图片预览
型号: PIC16C54-RC/P
PDF下载: 下载PDF文件 查看货源
内容描述: EPROM /基于ROM的8位CMOS微控制器系列 [EPROM/ROM-Based 8-Bit CMOS Microcontroller Series]
分类和应用: 微控制器和处理器外围集成电路光电二极管PC可编程只读存储器电动程控只读存储器时钟
文件页数/大小: 217 页 / 1555 K
品牌: MICROCHIP [ MICROCHIP ]
 浏览型号PIC16C54-RC/P的Datasheet PDF文件第22页浏览型号PIC16C54-RC/P的Datasheet PDF文件第23页浏览型号PIC16C54-RC/P的Datasheet PDF文件第24页浏览型号PIC16C54-RC/P的Datasheet PDF文件第25页浏览型号PIC16C54-RC/P的Datasheet PDF文件第27页浏览型号PIC16C54-RC/P的Datasheet PDF文件第28页浏览型号PIC16C54-RC/P的Datasheet PDF文件第29页浏览型号PIC16C54-RC/P的Datasheet PDF文件第30页  
PIC16C5X  
5.6  
I/O Programming Considerations  
BI-DIRECTIONAL I/O PORTS  
EXAMPLE 5-1: READ-MODIFY-WRITE  
INSTRUCTIONS ON AN  
I/O PORT  
;Initial PORT Settings  
; PORTB<7:4> Inputs  
5.6.1  
Some instructions operate internally as read followed  
by write operations. The BCFand BSFinstructions, for  
example, read the entire port into the CPU, execute  
the bit operation and re-write the result. Caution must  
be used when these instructions are applied to a port  
where one or more pins are used as input/outputs. For  
example, a BSFoperation on bit5 of PORTB will cause  
all eight bits of PORTB to be read into the CPU, bit5 to  
be set and the PORTB value to be written to the output  
; PORTB<3:0> Outputs  
;PORTB<7:6> have external pull-ups and are  
;not connected to other circuitry  
;
;
;
PORT latch PORT pins  
---------- ----------  
BCF  
BCF  
MOVLW 03Fh  
TRIS PORTB  
PORTB, 7  
PORTB, 6  
;01pp pppp  
;10pp pppp  
;
11pp pppp  
11pp pppp  
latches. If another bit of PORTB is used as  
a
;10pp pppp  
10pp pppp  
bi-directional I/O pin (say bit0) and it is defined as an  
input at this time, the input signal present on the pin  
itself would be read into the CPU and rewritten to the  
data latch of this particular pin, overwriting the  
previous content. As long as the pin stays in the input  
mode, no problem occurs. However, if bit0 is switched  
into output mode later on, the content of the data latch  
may now be unknown.  
;
;Note that the user may have expected the pin  
;values to be 00pp pppp. The 2nd BCF caused  
;RB7 to be latched as the pin value (High).  
5.6.2  
SUCCESSIVE OPERATIONS ON I/O  
PORTS  
The actual write to an I/O port happens at the end of  
an instruction cycle, whereas for reading, the data  
must be valid at the beginning of the instruction cycle  
(Figure 5-2). Therefore, care must be exercised if a  
write followed by a read operation is carried out on the  
same I/O port. The sequence of instructions should  
allow the pin voltage to stabilize (load dependent)  
before the next instruction, which causes that file to be  
read into the CPU, is executed. Otherwise, the  
previous state of that pin may be read into the CPU  
rather than the new state. When in doubt, it is better to  
separate these instructions with a NOP or another  
instruction not accessing this I/O port.  
Example 5-1 shows the effect of two sequential  
read-modify-write instructions (e.g., BCF, BSF, etc.) on  
an I/O port.  
A pin actively outputting a high or a low should not be  
driven from external devices at the same time in order  
to change the level on this pin (“wired-or”, “wired-and”).  
The resulting high output currents may damage the  
chip.  
FIGURE 5-2: SUCCESSIVE I/O OPERATION  
Q4  
Q4  
Q4  
Q1 Q2  
Q4  
Q3  
Q3  
Q3  
Q3  
Q1 Q2  
PC  
Q1 Q2  
Q1 Q2  
PC + 3  
NOP  
PC + 1  
PC + 2  
NOP  
Instruction  
fetched  
MOVWF PORTB MOVF PORTB,W  
This example shows a write  
to PORTB followed by a read  
from PORTB.  
RB7:RB0  
Port pin  
written here  
Port pin  
sampled here  
Instruction  
executed  
MOVWF PORTB MOVF PORTB,W  
NOP  
(Write to  
PORTB)  
(Read  
PORTB)  
DS30453B-page 26  
Preliminary  
1998 Microchip Technology Inc.  
 
 
 复制成功!