欢迎来到天天文库
浏览记录
ID:21003502
大小:662.50 KB
页数:169页
时间:2018-10-18
《第7章51 单片机串行接口及》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第7章51单片机串行接口及应用MCS-51单片机中有一个串行通信I/O口,通过该串行口可以实现与其它计算机以及外设之间的串行通信。MCS-51单片机的串行通信有着广泛的应用,不但可以实现单片机之间或单片机和PC机之间的串行通信,也可以使用单片机的串行通信接口,实现键盘输入和LED、LCD显示器输出的控制,简化电路,节约单片机的硬件资源;应用串行通信接口,还可以进行远程参数检测和控制。本章首先介绍串行通信的基础知识,然后详细介绍MCS-51单片机的串行口及其应用。7.1串行通信概述在实际应用中,计算机与外部设备之间,计算机与计算机之间之间常常要进行信息交换,所有这些信息的交换均称
2、为“通信”。通信的基本方式分为并行通信和串行通信两种。MCS-51单片机具有并行通信和串行通信两种通信方式,给单片机在通信中的应用带来了极大方便。并行通信是构成数据信息的各位同时进行传送的通信方式,例如8位数据或16位数据并行传送。图7-1(a)为并行通信方式的示意图。其特点是传输速度快,缺点是需要多条传输线,当距离较远、位数又多时,导致通信线路复杂且成本高。在单片机中,一般常常用于CPU与LED、LCD显示器的连接,CPU与A
3、D、D
4、A转换器之间的数据传送等并行接口方面。串行通信是数据一位接一位地顺序传送。图7-1(b)为串行通信方式的示意图。其特点是通信线路简单,只要一对
5、传输线就可以实现通信(如电话线),从而大大地降低了成本,特别适用于远距离通信。缺点是传送速度慢。由图7-1可知,假设并行传送N位数据所需时间为T,那么串行传送的时间至少为NT,实际上总是大于NT的。在串行通信时,机内的并行数据传送到内部移位寄存器中,然后数据被移位寄存器形成串行数据,通过通信线传送到接收端,再将串行数据逐位移入移位寄存器后转换成并行数据存放在机中。进行串行通信的接收端和发送端的计算机,必须有一定的约定,必须有相同的传送速率并采用同一的编码方法,接收端的计算机必须知道发送端的计算机发送了那些信息,发送的信息是否正确,如果有错如何通知对方重新发送。发送端的计算机必须
6、知道接收端的计算机是否正确接收到信息,是否需要重新发送,这些约定称为串行通信协议或规程。通信双方遵守这些协议才能正确地进行数据通信。7.1.1串行通信的分类按照串行通信的时钟控制方式,串行通信可分为异步传送和同步传送两种基本方式。1.异步通信(AsynchronousCommunication)异步传送的特点是数据在线路上的传送不连续,在传送时,数据是以字符为单位组成字符帧进行传送的。字符帧由发送端一帧一帧地发送,每一帧数据位均是低位在前高位在后,通过传输线被接收端一帧一帧地接收。发送端和接收端可以由各自独立的时钟来控制数据的发送和接收,这两个时钟彼此独立,互不同步。在异步通信
7、中,接收端是依靠字符帧格式来判断发送端是何时开始发送,何时结束发送的。字符帧格式是异步通信的一个重要指标,是CPU与外设之间事先的约定。(1)字符帧(CharacterFrame)字符帧也叫数据帧,由起始位、数据位、奇偶校验位和停止位4个部分组成。图7-2为异步传送的字符帧格式。起始位:位于字符帧开始,起始位为0信号,只占1位,用于表示发送字符的开始;数据位:紧接起始位之后的就是数据位,它可以是5位、6位、7位或8位,传送时低位在先、高位在后;奇偶校验位:数据位后面的1位为奇偶校验位,可0可1,可要也可以不要,由用户决定;停止位:位于字符帧最后,它用信号1来表示1帧字符发送的结
8、束,可以是1位、1位半或2位。在串行通信中,两相邻字符帧之间,可以没有空闲位,也可以有若干空闲位,这由用户来决定。图7-2(a)为无空闲位的字符帧,图7-2(b)有空闲位的字符帧。图中数据位为7位。例如,采用串行异步通信方式传送ASCII码字符‘5’,规定为7位数据位,1位偶校验位,1位停止位,无空闲位。由于‘5’的ASCII码为35H,其对应7位数据位为0110101,如按低位在前、高位在后顺序排列应为1010110。前面加1位起始位0,后面配上偶校验位1位0,最后面加1位停止位1,因此传送的字符格式为0101011001,其对应的波形如图图7-3所示。(2)波特率(Baud
9、rate)串行通信的快慢用波特率来表示,51系列单片机串行口有4种工作方式,波得率也随之不同,波得率和帧格式可以通过软件编程来设置,必须正确进行波得率的设置,才能进行可靠的数据通信。波特率是异步通信的另一个重要指标。波特率就是数据的传送速率,即每秒钟传送二进制数码的位数,单位为位/秒(b/s),也叫波特数。但波特率与字符的实际传送速率不同,字符的实际传送速率(字符帧/秒)是每秒内所传送的字符帧数,和字符帧格式有关。通常异步通信的波特率为50~9600b/s。异步通信要求要求发送端与接收端的波
此文档下载收益归作者所有