串行口工作方式0及应用举例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机的串行口
-串行口工作方式0及应用杨凌霄教授河南理工大学
一、方式0的功能特点
▼又叫同步移位寄存器方式;
▼以8位数据为一帧,没有起始位和停止位,先输入或输出最低位;
▼数据从RXD端串行输入或输出,同步移位时钟信号从TXD端输出;
▼输入或输出完一帧数据RI或TI置1。
▼波特率固定不变,为fosc/12;
二、方式0的作用
▼扩展一个并行I/O口的目的,弥补单片机并行口的不足。
例如:
74LS16474LS165
▼例:利用单片机的串行口扩展出一个8位并行输出口,驱动共阳极数码管循环显示数据0~9。
▼分析:单片机需要外接一个串入并出移位寄存器。常用的串入并出移位寄存器有:CD4094、74LS164等,现选用74LS164。
▼74LS164是8位串入并出移位寄存器,由8个带清
零功能的正边沿D触发器组成。
▼74LS164的工作原理为:
1)清零端低电平有效。若清零端为低电平,输出端都为0;若清零端为高电平,且时钟端出现上升沿,则输出端Q锁存输入端D的电平;
2)前级Q端与后级D端相连——实现移位作用,最先接收到的数将进入最高位。
74LS164的连接:
74LS164——单片机数据输入端1(2)——RXD 时钟端8——TXD
74LS164——数码管Q1~Q7——g~a 74LS164的清零端9——Vcc
程序:串行口初始化+数据传送
(1)串行口初始化
▼SM0SM1=00,REN=0,TI = 0
▼SCON=0
(2)数据传送
//发送一个字节的程序段
SBUF=DATA; //发送数据DATA
while (!TI); // TI=0→发送进行中;TI=1→发送完成;
TI=0; //为下次发送做准备
小结
51单片机串行口的工作方式0——同步移位寄存器方式及应用:▼作用是扩展单片机的并行I/O口;
▼数据格式是8位数据,没有起始位和停止位;
▼从RXD输入输出数据,从TXD发出时钟信号;
▼输入输出完一帧数据RI/TI置1;
▼波特率固定不变:为fosc/12;
▼并通过实例说明了方式0下硬件连接方法和软件编写方法。