单片机及其应用-串口通信ppt课件.ppt

单片机及其应用-串口通信ppt课件.ppt

ID:59342489

大小:984.50 KB

页数:46页

时间:2020-09-20

上传者:U-5097
单片机及其应用-串口通信ppt课件.ppt_第1页
单片机及其应用-串口通信ppt课件.ppt_第2页
单片机及其应用-串口通信ppt课件.ppt_第3页
单片机及其应用-串口通信ppt课件.ppt_第4页
单片机及其应用-串口通信ppt课件.ppt_第5页
资源描述:

《单片机及其应用-串口通信ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

单片机及其应用1342Chap7串行通信串口通信简介51系列单片机的串行口单片机串行通信应用技术51单片机串口编程 串口通信简介并行通信与串行通信与并行传输相反,抗干扰,适合于长距离传输并行传输-将数据(字符/字)的各位同时传送串行传输-将数据(字符/字)的各位逐位传送D0D1D2D3D4D5D7D6速度快,但需要多根数据线适用于距离短,速度快的应用EX:系统总线D0D1D2D3D4D5D7D6只需要一根数据线(单工/半双工)EX:串行通信口 串口通信简介51单片机P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7外设并行通信51单片机外设RXDTXDRXDTXDGNDGND串行通信并行通信与串行通信 串口通信简介串行传送方式全双工半双工A站发送器接收器B站接收器发送器只有一根通信线,但可以分时进行数据发送和接收发送器接收器B发送,A接收有两根通信线,数据的发送和接收可以同时进行A站发送器接收器B站接收器发送器接收器发送器接收器发送器单工只有一根通信线,只能向一个方向传送数据 串口通信简介串行通信方式同步通信异步通信通信双方必须建立准确的位定时信号也就是收/发时钟的频率必须严格地一致发送/接收过程中各位时间间隔固定字符之间时间间隔不固定速度快,适于面向数据块的传送按字符发送 数据场串口通信简介同步字符同步字符数据1数据2数据3数据n…校验字符CRC校验字符CRC信息帧同步通信同步字符:传送数据前,传送同步字符进行联络信息帧:包含同步字符,数据场,校验字符数据场:多个数据字节之间没有间隙,连续发送-通信双方使用统一的时钟 串口通信简介异步通信-通信双方使用各自的时钟-每次发送一个字符,帧格式如下:帧数据位起始位校验位停止位起始位:1个低电平,标识一帧的开始数据位:5-8个,低位在前,高位在后奇偶校验位:可以没有,校验数据位正确性停止位:,高电平帧与帧之间填充任意个停止位 串口通信简介串行传输速率比特率:每秒钟传送的二进制位数,bps波特率:每秒钟调制信号变化的次数,Baud对于将数字信号1或0直接用两种不同电压表示的基带传输比特率==波特率∴串行通信常用波特率表示数据传输率EX:波特率为9600,则每秒可传送9600bit按照1起始位+8数据位+1停止位的帧格式进行传送,则每秒可传送多少字符?注意:串行通信双方识别位的时间间隔要相同,所以通信双方的波特率必须一致 MCS_51的串口51系列的串口特征51单片机带有一个可编程全双工异步串行通信接口通用异步串口UniversalAsynchronousReceiveandTransmitport=UART该串口有四种工作模式支持多种波特率设置支持中断控制方式 MCS_51的串口51系列的串口结构SBUFSBUF发送控制器接收控制器移位寄存器控制门TIRIA≥1TXDRXD去串口中断SMOD01TH1TL1÷2÷16T1溢出率SBUF:接收和发送缓冲器,共享同一地址89H接收/发送过程在移位时钟(波特率)控制下进行当接收到8位数据后(接收SBUF得到1个字节),置RI有效;当发送了8位数据(发送SBUF空),置TI有效; MCS_51的串口RXD接收信号在移位时钟控制下移入移位寄存器移位寄存器满(8b)送入接收SBUFRI标志位置1程序读SBUF取走数据,同时清RI如果RI=0且REN=1防止未读取被覆盖TI=1?将数据写入发送SBUF清除TI在移位时钟控制下SBUF逐位从TXD送出如果SBUF已移空表明发送结束TI标志置1防止未发送完,覆盖 MCS_51的串口51串口的特殊功能寄存器SFRSCON:控制工作模式、接/发送控制以及串口状态标志PCON:设置波特率参数SCOND7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRISCONSM0、SM1:00-方式0,同步移位寄存器,波特率fosc/1201-方式1,10位(8位数据)异步收发,波特率T1控制10-方式2,11位(9位数据)异步收发,fosc/32或fosc/6401-方式3,11位(9位数据)异步收发,波特率T1控制地址98H,可以位寻址 MCS_51的串口51串口的特殊功能寄存器SFRSCON:控制工作模式、接/发送控制以及串口状态标志PCON:设置波特率参数SCOND7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRISCONSM0、SM1:工作方式控制位方式2、3中使用,控制接收条件,SM2=1,只有当RB8=1,才能激活RI,接收数据SM2:多机通信控制位 MCS_51的串口51串口的特殊功能寄存器SFRSCON:控制工作模式、接/发送控制以及串口状态标志PCON:设置波特率参数SCOND7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRISCONSM0、SM1:工作方式控制位SM2:多机通信控制位REN:允许接收控制位只有当RI=0且REN=1,允许接收 MCS_51的串口51串口的特殊功能寄存器SFRSCON:控制工作模式、接/发送控制以及串口状态标志PCON:设置波特率参数SCOND7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRISCONSM0、SM1:工作方式控制位SM2:多机通信控制位REN:允许接收控制位TB8、RB8:发送/接收的第9位数据TI、RI:发送/接收的中断标记位 MCS_51的串口51串口的特殊功能寄存器SFRSCON:控制工作模式、接/发送控制以及串口状态标志PCON:设置波特率参数D7D6D5D4D3D2D1D0SMODPCONSMOD:波特率倍增位PCON地址87H,不可位寻址当工作于方式1、2、3时,波特率与2SMOD成正比即:SMOD=1时,波特率提高1倍EX:当串口工作于方式2时,SMOD=0,波特率为fosc/64SMOD=1,波特率为fosc/32 或fosc/64方式3-9位UART方式0-同步移位寄存器方式2-9位UARTMCS_51的串口51串口的工作方式SM1、SM0方式说明波特率00011011方式1-8位UARTfosc/12fosc/32T1溢出率T1溢出率两种不同的功能两种不同的波特率两种帧格式 MCS_51的串口方式0-同步移位寄存器数据格式:8位数据位,无起始/校验/停止位主要用于扩展I/O口-并行8位输入/输出口51单片机RXDTXD74LS164ABCLKCLRP1.08位并行输出74LS164-串并转换芯片RXD:输入/输出数据TXD:输出同步移位脉冲fosc/12 MCS_51的串口方式0-同步移位寄存器数据格式:8位数据位,无起始/校验/停止位主要用于扩展I/O口-并行8位输入/输出口51单片机RXDTXD74LS165QCLKS/LP1.08位并行输入74LS165-并串转换芯片RXD:输入/输出数据TXD:输出同步移位脉冲fosc/12 MCS_51的串口方式1、2、3--8位/9位异步收发器(UART)这三种方式用于异步串行通信方式0,采用8位数据位通信帧D0D78位数据位1位起始位1位停止位方式2、3,采用9位数据位通信帧D0D79位数据位1位起始位1位停止位第9位RB8/TB8第9位,可用于传送奇偶校验位或者帧类型标志 MCS_51的串口波特率计算方式2,波特率固定波特率=2SMOD*fosc/64SMOD=0,fosc/64SMOD=1,fosc/32方式1、3,波特率由T1溢出率决定波特率=2SMOD*T1溢出率/32SMOD=0,T1溢出率/32SMOD=1,T1溢出率/16当使用T1作为波特率发生器时,需要将T1设置为工作方式2(自动重装的8位定时器),且TR1=1,启动T1 MCS_51的串口波特率计算方式1、3,波特率由T1溢出率决定波特率=2SMOD*T1溢出率/32T1定时时间=(28-计数初值)*12/foscT1溢出率=1/T1定时时间=fosc/12*(28-计数初值)EX:对于常用波特率9600baud,T1的初值应设为多少?若SMOD=0,则波特率=T1溢出率/32=fosc/32*12*(28-计数初值)=9600设:fosc=12MHzT1的初值=FDH MCS_51的串口波特率计算波特率系统时钟SMODT1初值1920011.0592M1FFH960011.0592M0FDH480011.0592M0FAH240011.0592M0F4H120011.0592M0E8H常用波特率及参数设置 MCS_51的串口编程串口基本编程(1)串口工作模式初始化(2)波特率参数设置(3)中断初始化SCON设置①TMOD设置②TH1/TL1设置③SMOD设置IE/IP设置初始化查询控制方式OR中断控制方式数据传送 MCS_51的串口编程EX:单片机系统向外发送“READY”字符串,然后等待接收“OK”,结束。波特率定为9600Baud,帧格式为8位数据位,无校验位。串口基本编程举例串口初始化数据传送数据发送数据接收查询方式中断方式 MOVSCON,#01000000BMCS_51的串口编程串口基本编程-初始化波特率9600Baud,帧格式为8位数据位,无校验位。选择工作方式∵波特率9600,难以符合fosc/64*2SMOD∴选择工作方式1-波特率可变的8位UART且帧格式为8位数据位波特率设置根据波特率计算公式:波特率=fosc*2SMOD/(32*12*(28-计数初值))当fosc=11.0592MHz时,SMOD=0初值=FDHMOVTMOD,#00100000BMOVTL1,#0FDHMOVTH1,#0FDHANLPCON,#7FHSETBTR1 MCS_51的串口编程串口基本编程-发送查询控制方式将发送信息写入SBUF查询TI是否为1是将TI清零,再次发送否发送READY?字符串STR1:DB52H,45H,41H,44H,59H,3FH,00H;READY?字符串ASCII码定义MOVDPTR,#STR1MOVR0,#0为访问STR1准备MOVCA,@A+DPTRMOVSBUF,AJNBTI,$CLRTIINCR0MOVCA,@A+DPTRJNZAGAINAGAIN:MOVA,#0MOVA,R0 MCS_51的串口编程串口基本编程-发送中断控制方式查询控制方式将发送信息写入SBUF查询TI是否为1是将TI清零,再次发送否中断服务程序:主程序:;初始化部分SETBEASETBES;增加中断使能将发送信息写入SBUF将TI清零中断返回中断向量表:;串行中断ORG0023HAJMP串口中断入口程序修改 MCS_51的串口编程串口基本编程-接收查询控制方式打开接收使能REN查询RI是否为1是从SBUF读取接收的数据否清除标记RI等待接收OK字符串R_BUFEQU70H;检测字符串结束标记0,判断结束。SETBRENJNBRI,$MOVA,SBUFJNZAGAINMOVR0,#R_BUFCLRRIMOV@R0,AAGAIN:;定义接收缓冲区起始位置70H例程实现 MCS_51的串口编程串口基本编程-接收查询控制方式打开接收使能REN查询RI是否为1是从SBUF读取接收的数据否清除标记RI中断向量表:;串行中断ORG0023HAJMP串口中断入口主程序:;初始化部分SETBEASETBES;增加中断使能SETBREN中断控制方式中断服务程序:从SBUF中读取数据将RI清零中断返回程序修改 MCS_51的串口编程串口基本编程举例-2-应用9位数据位帧格式(方式2、3)进行数据校验EX:单片机系统以16个一组接收以ASCII码形式发送的数据(00H~7FH),并采用1位校验位帧格式,对每个接收到的数据进行偶校验。如果发现数据错误,则向发送方回送错误标记FFH,请求重发。发送部分接收部分接收数据,检测RB8如果错误,则置错误标记否则放入缓冲区如果错误标记为1,则回送FFH MCS_51的串口编程初始化部分MOVSCON,#11010000B;选择模式3(9位波特率可变的UART)MOVTMOD,#01000000BMOVTL1,#0FDHMOVTH1,#0FDHANLPCON,#7FHSETBTR1;波特率仍选9600,与前面相同主程序MOVERR,#0MOVR0,#R_BUF检测错误标记发送错误标记FFH错误标记=1缓冲区索引=16接收数据结束已接收16字节 MCS_51的串口编程接收子程序检测RI接收一个数据RI=1检测TB8==PSW的P位将数据写入缓冲区RI=0校验对校验不对置错误标记修改缓冲区索引发送FFH子程序将FFH写入SBUF清除错误标记清除TI检测TITI=1TI=0 单片机串口通信应用主从式多机通信主机RXDTXD从机1RXDTXD从机2RXDTXD从机nRXDTXD…主机:-启动一次通信的过程从机:-只能响应主机启动的通信过程询问/发送应答主机询问 单片机串口通信应用主从式多机通信主机RXDTXD从机1RXDTXD从机2RXDTXD从机nRXDTXD…每个从机有地址,主机在通信时,首先发出地址帧,只有地址与其匹配的从机应答主机,而后主机发送数据,也只有该从机能够接收。00H01HN(<=FFH)工作于方式2或3,利用SM2位和TB8位配合 单片机串口通信应用TB8用于标识帧类型:TB8=1地址帧TB=0数据帧主从式多机通信流程起始:所有从机SM2=1准备接收主机发送的地址帧只有RB8=1,接收,否则丢掉从机接收到地址帧后与自身地址比较,相同,则将SM2=0,准备接收数据,否则保持SM2不变SM2=0,才能接受RB8=0的数据从机改变SM2后,给主机发送OK应答帧。主机接收后,发送数据,以结束。从机接收到后,获知此次通信结束,将SM2位重新置1准备接收下次通信的地址帧 单片机串口通信应用主机端从机端发送地址帧初始化等待接收应答查询20次无应答是否依次发送各数据下次通信重发初始化,SM2=1等待接收与自身地址比较SM2=0,回送应答匹配不匹配接收数据,察看是否为是此次结束,SM2=1否 控制系统常用串口通信标准单片机串口通信应用RS-232RS-232C是EIA(美国电子工业协会)1969年修订标准机械特性电气特性功能特性规程特性2514131965125针D型口和9针D型口,针排列及定义常用9针口 控制系统常用串口通信标准单片机串口通信应用RS-232RS-232C是EIA(美国电子工业协会)1969年修订标准机械特性电气特性功能特性规程特性RS-232C“1”:-3~-15“0”:+3~+15TTL“1”:+5V“0”:0V需要转换常用转换芯片:MAX232,TTL和RS232C双向转换 控制系统常用串口通信标准单片机串口通信应用RS-232机械特性电气特性功能特性规程特性 控制系统常用串口通信标准单片机串口通信应用RS-232机械特性电气特性功能特性规程特性引脚号信号名功能1DCD2RXD接收数据3TXD发送数据4DTR数据终端就绪5GND6DSR数据装置就绪7RTS请求发送8CTS允许发送8RI 控制系统常用串口通信标准单片机串口通信应用RS-232机械特性电气特性功能特性规程特性规定了各种信号的连接方式和时序关系。计算机ModemRXDTXDCTSRTSModem计算机TXDRXDRTSCTS远程通信,使用MODEM 控制系统常用串口通信标准单片机串口通信应用RS-232机械特性电气特性功能特性规程特性规定了各种信号的连接方式和时序关系。计算机RXDTXD计算机TXDRXD近程通信,直接连接GNDGND 单片机串口通信应用控制系统常用串口通信标准RS-485RS-232C特点:速率低,最大通信速率20kb/s距离短,最大通信距离15m抗干扰性差采用差分传输方式,抑制干扰性好,传输距离最大1200M半双工点对多点结构,一个485网络中最多有32个通信模块速度快,最大通信速率1Mb/s 电平TTL电平TTL双向仅需2条线单片机串口通信应用控制系统常用串口通信标准RS-485速度快,最大通信速率1Mb/s距离长,最大通信距离1200M抗干扰性好半双工点对多点485接口RXDTXD485接口TXDRXDMAX485主从式多机串行通信网络一般采用RS-485网络 小结串口基本知识MCS_51串口及应用串口与并口通信特点串口传送方式串口通信方式串口传输速率MCS_51串口结构MCS_51串口设置-SFRMCS_51串口工作方式MCS_51串口波特率设置MCS_51串口应用编程常用串口标准介绍

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭