实验11
74LS165并入串出实验
74L165是并行输入,串行输出移位寄存器。80C51单片机内部的串行口在方式0工作状态下,使用移位寄存器芯片可以扩展一个或多个8位并行I/O口。
其引脚如图所示。
A,B,C,D,E,F,G,H 并行输入端。
QH串行输出端。
CLOCK:时钟输入端。
CLOCK INHIBIT:时钟禁止端。当时钟禁止端CLK2为低电平时,充许时钟输入。
SHIFT/LOAD:移位与置位控制端。
SER:扩展多个74LS165的首尾连接端。
本练习TXD(P3.1)作为移位脉冲输出端与74LS165的移位脉冲输入端CLOCK相连;RXD(P3.0)作为串行输入端与74LS165的串行输出端QH相连;P3.2用来控制74165的移位与置入。
74LS165 引脚定义
|
74LS165逻辑表
|

|

|
74LS165 电路原理:

本练习利用串行口扩展了1片74LS165,从而实现了8个按键的输入,在单片机的P1口连接了
8个LED发光二极管,程序中实现了用按键控制发光二极管的亮与灭。流程为8路开关-74165-3PIN数据线-8路指示灯。
由此可以看出通过165传输,只用了3条数据线, 就实现了8个开关控制8个灯的目的。
从而节约了控制的连线。
接线方法:
1 用一个4PIN数据排线一端插入CPU部分JP53(P3口)的P3.0,P3.1,P3.2,P3.3。另外一端插入74LS165部分的输入端JP21。
2 用一根8PIN的数据排线, 一端插入74LS165部分的输出端JP28,
另一端插入8路按键开关的的JP48。
3
用一条8PIN的数据排线把CPU部份的P1口(JP44)连接到八路指示灯部份的JP32。运行后分别按k00-k07,可以看到d00-d07八个灯受控制。

74LS165并入串出实验参考程序:
org 00h
loop : mov
scon,#00010000b ; 设定MODE=0
clr p3.2
; P3.2=0 载入数据
call delay1
;延时
setb
p3.2;P3.2=1
;数据输出
clr ri
;RI=0
loop1:jbc
ri,loop2 ;RI=1?是则到LOOP2
jmp loop1
; 否则继续监测
loop2:mov
a,sbuf
;将SUBF载入ACC
mov p1,a
;输出到P1
jmp loop
;重新开始
|
delay:
mov
r7,#00h
;延时子程序
tt:
mov
r6,#00h
djnzr6,$
djnzr7,tt
ret
delay1:
;短延时子程序
mov
r7,#02
djnz
r7,$
ret
end
|
|