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

PIC17C752T-25I/P 参数 Datasheet PDF下载

PIC17C752T-25I/P图片预览
型号: PIC17C752T-25I/P
PDF下载: 下载PDF文件 查看货源
内容描述: 高性能8位CMOS微控制器的EPROM [High-Performance 8-Bit CMOS EPROM Microcontrollers]
分类和应用: 微控制器可编程只读存储器电动程控只读存储器
文件页数/大小: 320 页 / 2172 K
品牌: MICROCHIP [ MICROCHIP ]
 浏览型号PIC17C752T-25I/P的Datasheet PDF文件第79页浏览型号PIC17C752T-25I/P的Datasheet PDF文件第80页浏览型号PIC17C752T-25I/P的Datasheet PDF文件第81页浏览型号PIC17C752T-25I/P的Datasheet PDF文件第82页浏览型号PIC17C752T-25I/P的Datasheet PDF文件第84页浏览型号PIC17C752T-25I/P的Datasheet PDF文件第85页浏览型号PIC17C752T-25I/P的Datasheet PDF文件第86页浏览型号PIC17C752T-25I/P的Datasheet PDF文件第87页  
PIC17C75X  
10.8  
I/O Programming Considerations  
EXAMPLE 10-8: READ MODIFY WRITE  
INSTRUCTIONS ON AN  
I/O PORT  
10.8.1 BI-DIRECTIONAL I/O PORTS  
Any instruction which writes, operates internally as a  
read followed by a write operation. For example, the  
BCF and BSF instructions read the register into the  
CPU, execute the bit operation, and write the result  
back to the register. Caution must be used when these  
instructions are applied to a port with both inputs and  
outputs defined. For example, a BSFoperation on bit5  
of PORTB will cause all eight bits of PORTB to be read  
into the CPU. Then the BSF operation takes place on  
bit5 and PORTB is written to the output latches. If  
another bit of PORTB is used as a bi-directional I/O pin  
(e.g. 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 re-written to the data latch of this particu-  
lar pin, overwriting the previous content. As long as the  
pin stays in the input mode, no problem occurs. How-  
ever, if bit0 is switched into output mode later on, the  
content of the data latch may now be unknown.  
; Initial PORT settings: PORTB<7:4> Inputs  
;
PORTB<3:0> Outputs  
; PORTB<7:6> have pull-ups and are  
; not connected to other circuitry  
;
;
;
;
PORT latch PORT pins  
---------- ---------  
BCF  
BCF  
PORTB, 7  
PORTB, 6  
; 01pp pppp  
; 10pp pppp  
11pp pppp  
11pp pppp  
BCF  
BCF  
DDRB, 7  
DDRB, 6  
; 10pp pppp  
; 10pp pppp  
11pp pppp  
10pp pppp  
;
; 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).  
Reading a port reads the values of the port pins.Writing  
to the port register writes the value to the port latch.  
When using read-modify-write instructions (BCF, BSF,  
BTG, etc.) on a port, the value of the port pins is read,  
the desired operation is performed with this value, and  
the value is then written to the port latch.  
Note: A pin actively outputting a Low or High  
should not be driven from external devices  
in order to change the level on this pin (i.e.  
“wired-or”, “wired-and”). The resulting high  
output currents may damage the device.  
Example 10-8 shows the effect of two sequential  
read-modify-write instructions on an I/O port.  
10.8.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 10-17). 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 be  
such to allow the pin voltage to stabilize (load depen-  
dent) before executing the instruction that reads the  
values on that I/O port. 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.  
FIGURE 10-17: SUCCESSIVE I/O OPERATION  
Note:  
Q4  
Q4  
Q4  
Q1 Q2  
Q4  
Q3  
Q3  
Q3  
Q3  
Q1 Q2  
Q1 Q2  
Q1 Q2  
This example shows a write to PORTB  
followed by a read from PORTB.  
PC + 3  
NOP  
PC  
PC + 1  
PC + 2  
NOP  
Instruction  
fetched  
MOVWF PORTB MOVF PORTB,W  
write to  
PORTB  
Note that:  
data setup time = (0.25TCY - TPD)  
RB7:RB0  
where TCY = instruction cycle  
TPD = propagation delay  
Port pin  
sampled here  
Therefore, at higher clock frequencies,  
a write followed by a read may be  
problematic.  
Instruction  
executed  
MOVWF PORTB MOVF PORTB,W  
NOP  
write to  
PORTB  
1997 Microchip Technology Inc.  
Preliminary  
DS30264A-page 83  
 
 
 复制成功!