MCS-51单片机的串行口在实际使用通常用于三种情况:利用方式0扩展并行I/O接口;利用方式1实现点对点的双机通信;利用方式2或方式3实现多机通信。
下面介绍利用方式0扩展并行I/O接口。
方式0输出的典型应用是外扩同步移位寄存器74LS164,实现并行输出端口的扩展。当串行口设置在方式0输出时,串行数据由RXD端(P3.0)送出,移位脉冲由由TXD端(P3.1)送出.在移位脉冲的作用下,串行口发送缓冲器的数据逐位地从RXD端串行地移入74LS164中。
同步移位寄存器74LS164中3~6和10~13口为输出端;8口为时钟输入(低电平到高电平边沿触发),即AT89C51的TXD端(P3.1)接引脚8;引脚9为中央复位输入(低电平有效),例如可以用AT89C51的P1_0口接引脚9。
【例7.1】方式0外接74LS164,仿真如图7.6所示。74LS164的引脚8为同步脉冲输入端,引脚9为控制端,当引脚9为0时,允许串行数据从引脚1和引脚2输入,但是8位并行输入端关闭;当引脚9为1时,引脚1和引脚2输入端关闭,但是允许74LS164中的8位数据并行输出。当8位串行数据发送完毕后,引起中断,在中断服务程序中单片机通过串行口输出下一个8位数据。
图7.6 方式0外接74LS164
参考程序如下:
(www.xing528.com)
【例7.2】方式0外接74LS165,仿真如图7.7所示。串行口外接一片8位并行输入、串行输出的同步移位寄存器74LS165,将8个开关的状态通过串口的方式0读入到单片机内。74LS165的引脚1为控制端,若引脚1为0,则74LS165可以并行输入数据,且串行输出端关闭;若引脚1为1,则并行输入关闭,可以串行输出。
图7.7 方式0外接74LS165
参考程序如下:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。