串行通信的基本概念 串行口的控制寄存器 串行口的基本应用 RS-232串行接口应用 单片机双机通信的应用程序设计.ppt

上传人:豆**** 文档编号:52883406 上传时间:2022-10-24 格式:PPT 页数:44 大小:1.50MB
返回 下载 相关 举报
串行通信的基本概念 串行口的控制寄存器 串行口的基本应用 RS-232串行接口应用 单片机双机通信的应用程序设计.ppt_第1页
第1页 / 共44页
串行通信的基本概念 串行口的控制寄存器 串行口的基本应用 RS-232串行接口应用 单片机双机通信的应用程序设计.ppt_第2页
第2页 / 共44页
点击查看更多>>
资源描述

《串行通信的基本概念 串行口的控制寄存器 串行口的基本应用 RS-232串行接口应用 单片机双机通信的应用程序设计.ppt》由会员分享,可在线阅读,更多相关《串行通信的基本概念 串行口的控制寄存器 串行口的基本应用 RS-232串行接口应用 单片机双机通信的应用程序设计.ppt(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、串行通信的基本概念 串行口的控制寄存器 串行口的基本应用 RS-232串行接口应用 单片机双机通信的应用程序设计 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望10.1 串行通信概述串行通信概述10.2 8051串行口串行口10.3 8051串行口的应用串行口的应用 10.4 串行通信总线标准及其接口串行通信总线标准及其接口10.5 单片机与单片机与PC机通信的接口电路机通信的接口电路 本章大纲本章大纲 10.6 常用的串行总线接口简介常用的串行总线接口简介 10

2、.7 实践训练实践训练思考与练习思考与练习10.1 串行通信概述串行通信概述计算机与外界进行信息交换称之为通信。它既包括计算机与外部设备之间,也包括计算机和计算机之间的信息交换。随着计算机系统的应用和微机网络的发展,通信功能显得越来越重要。计算机的通信可分为并行通信和串行通信两种方式。串行通信又可分为异步通信和同步通信两种。图10-1 8051系列单片机的通信方式10.1.1异步通信异步通信的数据或字符是分为一帧一帧地传送的,在异步通信中,用一个起始位表示字符的开始,用停止位表示字符的结束。其每帧的格式如图10-2所示。图10-2 异步通信数据格式10.1.2同步通信在计算机与一些高速设备进行

3、数据通信时,为了提高数据块传递速度,可以去掉起始位和停止位标志,采用同步传送。同步通信的传送格式如图10-3所示。图10-3 同步通信数据格式10.1.3串行通信的制式串行通信按照数据传送的方向可分为三种制式,单工制式、半双工制式和全双工制式,如图10-4所示。图10-4 串行通信制式10.1.4串行通信的传送速率在串行通信中,数据是按位传送的,传送速率用每秒传送数据的位数来表示,称为波特率或比特率,以波特为单位。1波特=1位/秒(1bit/s)例如数据传送的速率是120字符/s,而每个字符如上述规定包含10数位,则传送波特率为1200波特。8051内部有一个功能强大的全双工异步通信口,具有4

4、种工作方式;波特率可通过软件设置;接收和发送数据均能触发中断;除了可以实现串行通信外,还可以方便地进行并行口的扩展。10.2 8051串行口串行口 10.2.18051串行口结构图10-5 8051单片机串行口内部结构10.2.2串行口工作原理串行口有发送数据和接收数据的工作过程。1、串行口发送数据串行口发送数据时,从片内总线向发送SBUF写入数据(MOVSBUF,A),启动发送过程,由硬件电路自动在字符的始、末加上起始位(低电平)、停止位(高电平),A中的数据送入SBUF,在发送控制器控制下,按设定的波特率,每来一个移位脉冲,数据移出一位,先发送一位起始位(低电平),再由低位到高位一位一位通

5、过TXD(P3.1)把数据发送到外部电缆上,数据发送完毕,最后发一位停止位(高电平),一帧数据发送结束。发送控制寄存器通过或门向CPU发出中断请求(TI=1),CPU可以通过查询TI或者响应中断的方式,将下一帧数据送入SBUF,开始发送下一帧数据。10.2.2串行口工作原理2、串行口接收数据在接收数据时,若RXD(P3.2)接收到一帧数据的起始信号(低电平),串行控制寄存器SCON向接收控制器发出允许接收信号,按设定的波特率,每来一个移位脉冲,将数据从RXD端移入一位,放在输入移位寄存器中,数据全部移入后,寄存器再将全部数据送入接收SBUF中,同时接收控制器通过或门向CPU发出中断请求(RI=

6、1),CPU可以通过查询RI或者响应中断的方式,将接收SBUF中的数据取走(MOVA,SBUF),从而完成了一帧数据的接收。其后各帧数据的接收过程与上述相同。由以上叙述可得,串行通信双方的移位速度必须一致,否则会造成数据位的丢失。因此,在设计串行程序时,通信双方必须采用相同的波特率。10.2.3串行口的控制寄存器控制8051系列单片机串行口的控制寄存器有两个:特殊功能寄存器SCON和PCON。1、串行控制寄存器SCON10.2.3串行口的控制寄存器2、电源控制寄存器PCON10.2.4串行口的工作方式按照串行通信的数据格式和波特率的不同,80C51系列单片机的串行口有4种工作方式,可以通过SM

7、0SM1进行选择。1、方式0同步移位寄存器方式。波特率固定为振荡频率的1/12。发送和接收串行数据都通过RXD(P3.0)进行,TXD(P3.1)输出移位脉冲,控制外部的移位寄存器移位。一帧信息为8位,没有起始位、停止位,传输时低位在前。10.2.4串行口的工作方式2、方式1波特率可变的10位异步通信接口方式。发送或接收一帧信息,包括1个起始位0,8个数据位和1个停止位1。波特率可变,根据定时器1的溢出率计算。3、方式2固定波特率的11位UART方式,其中1位起始位“0”、8位数据位(先低位后高位),1位控制位(第9位)和1个停止位“1”。它比方式1增加了第9位数据TB8或RB8。波特率可变,

8、为振荡频率的1/64或1/32。在方式2下,还是8个数据位,只不过增加了第9位,其功能由用户确定,是一个可编程位。4、方式3方式3为波特率可变的11位UART方式。波特率可变,根据定时器1的溢出率计算。除波特率外,其余与方式2相同。10.2.5波特率的设定在进行串行口的应用时,要解决的问题主要是硬件的连接和编制应用程序。硬件的连接主要是串行口的RXD、TXD端与外部芯片引脚的连接,根据串行口工作方式和外部芯片的不同而有所不同。应用程序的编写内容主要分为串行口初始化和应用程序主体。1、串行口初始化程序主要内容(1)选择串行口的工作方式,即设定SCON中的SM0、SM1。(2)设定串行口的波特率。

9、方式0可以省略这一点。设定SMOD的状态,若设定SMOD=1,则波特率加倍。若选择方式1和方式3,则需对定时器T1进行初始化并设定其初值。(3)若选择串行口接收数据或是双工通信方式,需设定REN=1。(4)若采用中断方式编写串行程序,需开串行中断,即设定ES=1,EA=1。10.3 8051串行口的应用串行口的应用【例10-1】以波特率为9600bps,串口工作方式3,完成允许发送/接收数据的初始化步骤程序。解:10.3 8051串行口的应用串行口的应用2、串行口应用程序主体串行通信可采用两种方式编程,查询方式和中断方式。TI和RI是串行通信一帧数据发送完和接收完的标志。无论是查询方式还是中断

10、方式编程,都需要用到TI或RI。两种方式编程方法如下。(1)查询方式发送数据块程序:发送一个数据查询TI,直至TI=1发送下一个数据。查询方式接收数据块程序:查询RI,直至RI=1读入一个数据查询RI,直至RI=1读入下一个数据。(2)中断方式发送数据块程序:发送一个数据等待中断在中断程序中再发送下一个数据。中断方式接收数据块程序:等待中断在中断程序中再接收一个数据。10.3 8051串行口的应用串行口的应用10.3.1利用串行口扩展并行口 图10-6 串行口扩展并行输入口 图10-7 串行口扩展并行输出口 10.3.28051串行口的通信【例10-3】将片内RAM50H5FH中的数据串行发送

11、,用第9个数据位作奇偶校验位,设晶振为11.0592MHz,波特率为2400b/s,编制串行口方式3的发送程序。#includeunsignedchari=0;unsignedchararray16_at_0 x50;/发送缓冲区voidmain()SCON=0 xc0;/串行口初始化TMOD=0 x20;/定时器初始化TH1=0 xf4;TL1=0 xf4;TR1=1;ES=1;EA=1;/中断初始化ACC=arrayi;/发送第一个数据送TB8=P;/累加器,目的取P位10.3.28051串行口的通信【例10-3】将片内RAM50H5FH中的数据串行发送,用第9个数据位作奇偶校验位,设晶振

12、为11.0592MHz,波特率为2400b/s,编制串行口方式3的发送程序。SBUF=ACC;/发送一个数据while(1);/等待中断voidserver()interrupt4/串行口中断服务程序TI=0;/清发送中断标志ACC=array+i;/取下一个数据TB8=P;SBUF=ACC;if(i=16)/发送完毕,ES=0;/禁止串口中断10.4 串行通信总线标准及其接口串行通信总线标准及其接口串行通信是将数据一位一位地传送,它只需要一根数据线,硬件成本低,而且可使用现有通信信道(如电话),故在集散型控制系统(特别在远距离传输数据时),例如智能化控制仪表与上位机(IBM-PC机等)之间通

13、常采用串行通信来完成数据的传送。10.4.1RS-232C串行接口标准常见的串行接口标准有RS-232C(recommendedstandard)、RS-422/485和20mA电流环等。PC上配置有COM1和COM2两个串行接口,它们都采用了RS-232C标准。RS-232C是美国电子工业协会(electronicsindustringassociation,EIA)制定的一种国际通用的串行接口标准。它最初是为远程通信连接数据终端设备(dataterminalequipment,DTE)和数据通信设备(datacommunicationequipment,DCE)制定的标准,目前已广泛用做计

14、算机与终端或外部设备的串行通信接口标准。该标准规定了通信设备之间信号传送的机械特性、信号功能、电气特性及连接方式等。10.4.1RS-232C串行接口标准10.4.1RS-232C串行接口标准图10-9 DB25和DB9插座/插头10.4.1RS-232C串行接口标准 图10-10 MC1488内部结构及引脚信号 图10-11 MC1489内部结构及引脚信号10.4.1RS-232C串行接口标准 图10-13 MAX232的内部结构及引脚信号10.4.1RS-232C串行接口标准 图10-14 双机近距离通信连接10.4.1RS-232C串行接口标准 图10-15 双机远距离通信连接10.4.

15、2RS-422与RS-485串行接口标准 图10-16 RS-232C单端驱动、单端接收图10-17 RS-422典型的四线接口电路10.4.2RS-422与RS-485串行接口标准 图10-18 MAX485的引脚信号及接口电路10.4.2RS-422与RS-485串行接口标准 图10-19 MAX489的引脚信号及接口电路利用PC机配置的异步通信适配器,可以很方便地完成PC机与单片机的数据通信。PC机与8051单片机最简单的连接是零调制3线经济型,这是进行全双工通信所必须的最少数目的线路。要完成PC机与单片机的数据通信必须进行电平转换,MAX232单芯片就可以实现8051单片机与PC机的R

16、S-232C之间的电平转换。10.5 单片机与单片机与PC机通信的接口电路机通信的接口电路10.5 单片机与单片机与PC机通信的接口电路机通信的接口电路图10-20 单片机RS-232接口1、I2C(InterIntegratedCircuit)I2C总线是Philips公司推出的芯片间串行传输总线。它用两根线实现数据传送,可以极为方便地构成多机系统和外围器件扩展系统。I2C总线是二线制,采用器件地址的硬件设置方法,通过软件寻址完全避免了器件的片选线寻址方法,从而使硬件系统具有简单灵活的扩展方法。I2C总线简单,结构紧凑,易于实现模块化和标准化。I2C总线传送速率主要有两种:一种是标准S模式(

17、100Kb/s),另一种是快速F模式(400Kb/s)。10.6 常用的串行总线接口简介常用的串行总线接口简介 2、SPISPI总线是Motorola公司提出的一种同步串行外设接口。允许MCU与各种外围设备以同步串行方式进行通信。其外围设备种类繁多:最简单的TTL移位寄存器到复杂的LCD显示驱动器、网络控制器等。SPI总线是三线制,可直接与多种标准外围器件直接接口,在SPI从设备较少而没有总线扩展能力的单片机系统中使用特别方便。即使在有总线扩展能力的系统中采用SPI设备也可以简化电路设计,省掉很多常规电路中的接口器件,从而提高了设计的可靠性。10.6 常用的串行总线接口简介常用的串行总线接口简

18、介 3、MicrowareMicroware总线是NS公司提出的串行同步双工通信接口,用于8位COP800系列单片机和16位HPC系列单片机。Microware总线是三线制,由一根数据输出(SO)线、一根数据输入(SI)线和一根时钟(SK)线组成。所有从器件的时钟线连接到同一根SK线上,主器件向SK线发送时钟脉冲信号,从器件在时钟信号的同步沿输出/输入数据。主器件的数据输出线SO和所有从器件的数据输入线相接,从器件的数据输出线都接到主器件的数据输入线SI上。10.6 常用的串行总线接口简介常用的串行总线接口简介 4、单总线(1-wire)1-wire总线是Dallas公司研制开发的一种协议,用

19、于便携式仪表和现场监控系统。1-wire总线是利用一根线实现双向通信,由一个总线主节点、一个或多个从节点组成系统,通过一根信号线对从芯片进行数据的读取。每一个符合1-wire协议的从芯片都有一个唯一的地址,包括8位分类码、48位的序列号和8位CRC代码。主芯片对各个从芯片的寻找依据这64位的不同来进行。单总线节省I/O引脚资源、结构简单、成本低廉、便于总线扩展和维护。10.6 常用的串行总线接口简介常用的串行总线接口简介 5、USB(UniversalSerialBus)USB总线是Compaq、Intel、Microsoft、NEC等公司联合制定的一种计算机串行通信协议。USB比较于其他传统

20、接口的一个优势是即插即用的实现,即插即用(Plug-and-Play)也称为热插拔(HotPlugging)。数据传输速度快,USB1.1接口的最高传输率可达12Mb/s;USB2.0接口的最高传输率可达480Mb/s。扩展方便,使用USBHub扩展,可以连接127个USB设备,连接的方式十分灵活。10.6 常用的串行总线接口简介常用的串行总线接口简介 6、CAN(ControllerAreaNetwork)CAN总线是德国Bosch公司最先提出的多主机局域网,是国际上应用最广泛的现场总线之一。最初,CAN被设计作为汽车环境中的微控制器通信,在车载各电子控制装置ECU之间交换信息,形成汽车电子

21、控制网络。比如:发动机管理系统、变速箱控制器、仪表装备。在由CAN总线构成的单一网络中,理论上可以挂接无数个节点。实际应用中,节点数目受网络硬件的电气特性所限制。CAN可提供高达1Mbit/s的数据传输速率,这使实时控制变得非常容易。另外,硬件的错误检定特性也增强了CAN的抗电磁干扰能力。当信号传输距离达到10km时,CAN仍可提供高达50Kbit/s的数据传输速率。10.6 常用的串行总线接口简介常用的串行总线接口简介 一个单片机的功能是有限的,将数个乃至更多的单片机按照特定的组织规律连接在一起可以实现功能更强大的系统,本项目从两个单片机之间的串行通信入手,实现将指定的一组数据从一个单片机内

22、存传送到另一单片机的内存中,原来我们只是将数据在本单片机中的内存中传送,而现在可以将数据在不同的单片机中传送,这是一个重要的进步,两个单片机之间进行通信涉及通信方式设置、发送/接收联络信号的确认和数据传送等实现方法,另外,请注意两个单片机之间的正确连接。10.7 实践训练实践训练10.7 实践训练实践训练8051CH341TPC机USB 口TXDRXDTXDRXDD+D-图10-21 串行口数据接收电路1.概念题1)8051系列单片机串行口有哪几种工作方式?如何选择?各有什么特点?2)设某异步通信接口,其一帧共10位,包括1个起始位、7个数据位、1个奇偶校验位和1个停止位,当该口以每分钟1800个字符传送时,其波特率为多少?2.操作题1)设以串行口方式1进行数据传送,晶振频率为6MHz,波特率为2400bit/s,SMOD=1。待发送的8个数据存放于外RAM首地址为2000H的单元中,先发送数据长度8,再发送8个数据,试编写发送程序。思考与练习思考与练习

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁