《计算机通信[详细]》由会员分享,可在线阅读,更多相关《计算机通信[详细](22页珍藏版)》请在金锄头文库上搜索。
1、信息工程学院计算机数据通信系统设计计算机数据通信系统设计贾立新单片机串行通信单片机串行通信1串行异步通信的数据格式串行异步通信的数据格式单片机串行通信单片机串行通信2 RS-232C标准 RS-232C标准是美国电子工业联合会标准是美国电子工业联合会EIA(Electronic Industy Association)制定的一种)制定的一种串行物理接口标准,适合的数据传送速率为串行物理接口标准,适合的数据传送速率为020Kbps。 RS-232C对电气特性、逻辑电平和各种信号线的对电气特性、逻辑电平和各种信号线的功能都作了规定。逻辑功能都作了规定。逻辑“1”= -3V-15V ,“0”= +3
2、V+15V。(1)电气特性)电气特性单片机串行通信单片机串行通信(2)机械特性)机械特性脚号脚号信号名称信号名称方向方向信号功能信号功能1ShieldGnd接接设备外壳外壳,安全地安全地2TXDPC C机机对方方PC机机发送数据送数据3RXDPC C机机对方方PC机接收数据机接收数据4RTSPC C机机对方方PC机机请求求发送数据送数据5CTSPC C机机对方方对方已切方已切换到接收状到接收状态(清除清除发送送)6DSRPC C机机对方方对方准方准备就就绪7GND信号地信号地8DCDPC C机机对方方PC机收到机收到远程信号程信号(载波波检测)20 DTRPC C机机对方方PC机准机准备就就绪
3、22RIPC C机机对方方通知通知PC机机,线路正常路正常(振振铃指示指示)9-19,2123-25NC空空25针插座信号定义针插座信号定义引脚号引脚号信号名称信号名称方向方向信号功能信号功能1DCDPC C机机对方方PC机收到机收到远程信号程信号(载波波检测)2RXDPC C机机对方方PC机接收数据机接收数据3TXDPC C机机对方方PC机机发送数据送数据4DTRPC C机机对方方PC机准机准备就就绪5GND信号地信号地6DSRPC C机机对方方对方准方准备就就绪7RTSPC C机机对方方PC机机请求求发送数据送数据8CTSPC C机机对方方对方已切方已切换到接收状到接收状态(清除清除发送送
4、)9RIPC C机机对方方通知通知PC机机,线路正常路正常(振振铃指示指示)9针插座信号定义针插座信号定义(3)电平转换接口芯片及典型电路)电平转换接口芯片及典型电路单片机串行通信单片机串行通信3RS-485 标准(1)电气特性)电气特性 总线只有信号线总线只有信号线A和和B,当电平,当电平A-B200mV时,时,线路上表示传输信号线路上表示传输信号“1”;当;当B-A200mV时,线时,线路上表示传输路上表示传输“0”。 单片机串行通信单片机串行通信MAX485管脚图及典型工作电路管脚图及典型工作电路 单片机串行通信单片机串行通信半双工半双工RS485通信网通信网单片机串行通信单片机串行通信
5、AT89S52单片机的串行口单片机的串行口 单片机串行通信单片机串行通信串行控制寄存器串行控制寄存器SCON(98H) D7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRI单片机串行通信单片机串行通信SM0SM1工作模式工作模式功能功能说明明波特率波特率00模式模式0同步移位寄存器方式同步移位寄存器方式fOSC/1201模式模式110位异步接收位异步接收发送送可可变(由定(由定时器控制)器控制)10模式模式211位异步接收位异步接收发送送fOSC/32或或fOSC/6411模式模式311位异步接收位异步接收发送送可可变(由定(由定时器控制)器控制)串行口的工作方式串行口
6、的工作方式 其余各位的定义见教材其余各位的定义见教材P240 单片机串行通信单片机串行通信电源控制寄存器PCON D7D6D5D4D3D2D1D0SMODGF1GF0PDIDL单片机串行通信单片机串行通信波特率设计波特率设计单片机串行通信单片机串行通信单片机串行通信单片机串行通信串行通信编程举例串行通信编程举例 A机发送,机发送,B机接收,采用中断方式。协议如下:机接收,采用中断方式。协议如下:(1)波特率为)波特率为1200bps,晶振为,晶振为11.0592MHz;(2)串行口工作方式)串行口工作方式1,T1工作模式工作模式2。(3)A机开始发送时,先发机开始发送时,先发#0AAH,B机收
7、到后回答机收到后回答#0BBH,表示响应。当,表示响应。当A机收到机收到#0BBH后,开始发送后,开始发送数据,每发送一次求一次数据,每发送一次求一次“累加和累加和”。(4)设定数据块长度为)设定数据块长度为16字节,起始地址为字节,起始地址为30H,一个数据块发完再发出一个数据块发完再发出“累加和累加和”。单片机串行通信单片机串行通信 (5)B机接收数据并转存到数据区,起始地址为机接收数据并转存到数据区,起始地址为30H。同时,每接收一次也计算一次。同时,每接收一次也计算一次“累加和累加和”,当,当一个数据块接收完毕后,再接收从一个数据块接收完毕后,再接收从A机发来的机发来的“累加和累加和”
8、,并将它与,并将它与B机计算的机计算的“累加和累加和”相比较。若两者相相比较。若两者相等,说明接收正确,等,说明接收正确,B机回答机回答#00H;若两者不等,;若两者不等,B机回答机回答#0FFH,要求重发。,要求重发。(6)A机收到机收到#00H则结束发送,否则重复发送此数据块则结束发送,否则重复发送此数据块单片机串行通信单片机串行通信波特率计算ORG 0000HLJMPMAINORG0023HLJMPSSUB ;转向中断服务程序;转向中断服务程序ORG0050HMAIN:MOVSP,#60HMOVTMOD,#20H;设;设T1工作方式工作方式2MOVTH1,#0E8H;赋计数器初值;赋计数器初值MOVTL1,#0E8HMOVPCON,#00H;设;设SMOD=0MOVSCON,#50H ;置串行口方式;置串行口方式1,允许接收,允许接收SETBTR1;启动定时器;启动定时器T1SETBES;允许串行口中断;允许串行口中断SETBEA;开中断;开中断CLR00H;清联机成功标志;清联机成功标志MOVA,#0AAH;发送;发送AAH命令命令MOVSBUF,ASJMP $;等待中断;等待中断A机发送中断服机发送中断服务程序流程图务程序流程图 B机接收中断服机接收中断服务程序流程图务程序流程图