串口与串行通讯

串口与串行通讯

ID:40038430

大小:2.74 MB

页数:46页

时间:2019-07-18

串口与串行通讯_第1页
串口与串行通讯_第2页
串口与串行通讯_第3页
串口与串行通讯_第4页
串口与串行通讯_第5页
资源描述:

《串口与串行通讯》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第六章:单片机串口及应用本讲重点:51单片机的串行口结构;与串行口相关的特殊功能寄存器;串行通讯的波特率设置;串行口的4种工作方式及其编程.串行通讯应用示意图TXDRXDRXDTXDTXDRXDRXDTXDRS-232或485RS-232或485TXDRXDRS-232PC机COM1,COM2单片机甲、乙之间近距离通讯单片机甲乙两地之间远距离通讯单片机与PC机之间的数据通讯串行通信的基本特征是数据逐位顺序进行传送串行通信的格式及约定(如:通讯速率、数据块格式、信号电平……等)不同,形成了多种串行通信的协议与接口标准。常见的有:☞通用异步收发器(UART)——本课程介绍的串

2、口☞通用串行总线(USB)☞I2C总线☞CAN总线☞SPI总线☞RS-485,RS-232C,RS422A标准……等等串行通信全双工串行接口(UART)☞数据通信的几个术语:并行:数据各位同时进行传送串行:数据逐位顺序进行传送☞全双工:(串行通信)收/发可同时进行半双工:(串行通信)收/发不可同时进行☞异步串行通信:以字符为单位进行传送同步串行通信:以数据块为单位进行传送波特率(bps.):单位时间传送的位数51单片机的串行接口SBUF(发)SBUF(收)发送控制器TI接收控制器RI移位寄存器波特率发生器T11A累加器(门)RxDTxD去申请中断引脚引脚CPU内部串行口

3、的结构☞两个同名的接收/发送缓冲寄存器SBUF指令MOVSBUF,A启动一次数据发送,可向SBUF再发送下一个数指令MOVA,SBUF完成一次数据接收,SBUF可再接收下一个数☞接收/发送数据,无论是否采用中断方式工作,每接收/发送一个数据都必须用指令对RI/TI清0,以备下一次收/发。☞串行口相关的SFR(SCON,PCON)SM0SM1SM2RENTB8RB8TIR1SCON☞SM0,SM1:串行口4种工作方式的选择位。00方式0:8位移位寄存器I/O,波特率固定为fosc/1201方式1:10位UART(1+8+1位),波特率可变,按公式计算10方式2:11位UAR

4、T(1+8+1+1位),波特率固定=foscx1/32或1/6411方式3:11位UART(1+8+1+1位),波特率可变,按公式计算☞SM2:串行口多机通信控制位(作为方式2、方式3的附加控制位)串行口控制寄存器SCON(98H)☞RI,TI:串行口收/发数据申请中断标志位=1申请中断;=0不申请中断☞TB8:方式2、3中,是要发送的第9位数据。多机通信中,TB8=0表示发送的是数据;TB8=1表示发送的是地址。(奇偶校验)☞RB8:在方式2、3中,是收到的第9位数据。在多机通信中,用作区别地址帧/数据帧的标志。(奇偶校验)SM0SM1SM2RENTB8RB8TIRI☞

5、REN:串行口接收允许控制位=1表示允许接收;=0禁止接收。SCONSMOD———GF1GF0PD1DL电源控制寄存器PCON(97H)特殊功能寄存器PCON不能按位寻址☞SMOD:在串行口工作方式1、2、3中,是波特率加倍位=1时,波特率加倍=0时,波特率不加倍。(在PCON中只有这一个位与串口有关)☞GF1,GF0:用户可自行定义使用的通用标志位PCON☞PD:掉电方式控制位=0:常规工作方式。=1:进入掉电方式:振荡器停振片内RAM和SRF的值保持不变P0—P3口维持原状。程序停止只有复位能使之退出掉电方式。SMOD———GF1GF0PDIDLPCON☞ID

6、L:待机方式(空闲方式)控制位=0:常规工作方式。=1:进入待机方式:振荡器继续振荡中断、定时器、串口功能继续有效片内RAM和SRF保持不变CPU状态保持、P0—P3口维持原状程序停顿。中断和复位能退出待机,继续后面的程序。SMOD———GF1GF0PDIDLPCON☞PD:掉电控制位=0:常规方式。=1:掉电方式:振荡器停振片内RAM和SRF不变P0—P3口维持原状程序停止只有复位能退出掉电☞IDL:待机控制位=0:常规方式。=1:待机方式:振荡器继续振荡中断,定时器,串口有效片内RAM和SRF不变CPU状态,P0—P3维持原状程序停顿。中断

7、和复位能退出待机,继续后面的程序。SMOD———GF1GF0PDIDLPCON串行口工作方式0工作方式0:10位移位寄存器I/O方式☞发送:SBUF中的串行数据由RxD逐位移出;TxD输出移位时钟,频率=fosc1/12;每送出8位数据TI就自动置1;需要用软件清零TI。☞接收:串行数据由RxD逐位移入SBUF中;TxD输出移位时钟,频率=fosc1/12;每接收8位数据RI就自动置1;需要用软件清零RI。☞经常配合“串入并出”“并入串出”移位寄存器一起使用扩展接口。☞方式0工作时,多用查询方式编程:发送:MOVSBU

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

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

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