首页 理论教育 单片机串行口扩展:实战并行输入输出

单片机串行口扩展:实战并行输入输出

时间:2023-11-05 理论教育 版权反馈
【摘要】:开关Kc用于提供控制信号,当Kc闭合时,表示要求单片机读入开关量。只要在程序中对P1.1引脚进行查询,发现P1.1=0,便通过P1.0使CD4014的P/S=1,然后再启动单片机串口方式0接收过程,即可将CD4014并行输入的开关状态通过串口输入到单片机中。应用程序:2.将串行口作为并行输出口使用在串行工作方式0下,串行口通过外接一个“串入并出”的8位移位寄存器74LS164,可以作为并行输出口使用。图6-9 串行口与LED的连接电路在图6-9中,8051单片机串行口工作于方式0。

单片机串行口扩展:实战并行输入输出

1.将串行口作为并行输入口使用

串行口在方式0下,通过外接一个“并入串出”的8位移位寄存器(74LS165或CD4014),可以作为并行输入口使用。例如,通过外接CD4014将8路开关状态从串口读入单片机的20H存储单元,要求控制开关Kc断开(Kc=1)时,8051处于等待状态;Kc闭合(Kc=0)时,8051开始输入。其电路如图6-8所示。

CD4014是一个8位串入/并入-串出移位寄存器,CP为同步移位脉冲输入端,P1~P8为并行输入端,Q8为串行输出端。P/S为控制端,控制规则如下:

若P/S=0,则CD4014为串行输入(该输入端图中未画出);

978-7-111-44921-8-Chapter06-29.jpg

图6-8 将串行口作为并行输入口使用

若P/S=1,则CD4014为并行输入。开关Kc用于提供控制信号,当Kc闭合时,表示要求单片机读入开关量。

只要在程序中对P1.1引脚进行查询,发现P1.1=0(即开关Kc闭合),便通过P1.0使CD4014的P/S=1,然后再启动单片机串口方式0接收过程,即可将CD4014并行输入的开关状态通过串口输入到单片机中。

应用程序:

978-7-111-44921-8-Chapter06-30.jpg

2.将串行口作为并行输出口使用

在串行工作方式0下,串行口通过外接一个“串入并出”的8位移位寄存器74LS164(或CD4094),可以作为并行输出口使用。(www.xing528.com)

例如,使用CD4094的并行输出端接8支发光二极管(LED),利用它的串入并出功能,把LED从左向右依此点亮,并反复循环之。假设LED为共阴极型。

硬件电路:

串行口与LED的连接电路如图6-9所示。

978-7-111-44921-8-Chapter06-31.jpg

图6-9 串行口与LED的连接电路

在图6-9中,8051单片机串行口工作于方式0。CD4094是一种8位串行输入、并行输出的同步移位寄存器,CLK为同步脉冲输入端。STB为控制端,控制规则如下:

若STB=0,则8位并行数据输出端关闭,但串行数据从DATA输入;若STB=1,则DATA输入端关闭,8位数据并行输出。

应用程序:

当串行口把8位状态码串行移位输出后,TI置1,如把TI作状态查询标志,则可使用查询法进行程序设计。

978-7-111-44921-8-Chapter06-32.jpg

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈