案例5_串口通信及其应用技术方案.pptVIP

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
案例5-串口通信及其应用 2014.11 案例5-串口通信及其应用 远程监控(监测与控制)系统 通信应用案例-多点温度采集 通信应用案例-多点温度采集 案例5-串口通信及其应用 通信 有线: RS232 、RS485、RS422、 CAN、 USB、以太网 实验室调试:RS232 工业上采用差分方式传输(RS485、CAN、以太网) 无线:低速红外,高速红外(IrDA)、蓝牙(Bluetooth)、ZigBee 、无线局域网(WLAN)、蜂窝网络(GSM、CDMA、TD-SCDMA、WCDMA、 CDMA2000 RS232 RS422/RS485 CAN USB 以太网 差分传输(RS485/422、CAN、以太网) 无线数据传输 无线红外-IrDA 案例5-串口通信及其应用 串行通信标准 RS232(RS232电平,通信距离10m) RS422/RS485(差分传输,传输距离5km,自定义通信机制) CAN(差分传输,传输距离5km,完善的通信机制) 通信方式 点对点 点对多 通信可靠性 通信协议 多字节 定长 不定长 校验方式 和校验 CRC校验 提高传输距离措施-差分传输 将TTL、CMOS电平转成双路差分信号,通过双绞线传输,有效抑制共模干扰信号(提高传输距离) 采用专用芯片实现电平转换。 RS422、RS485、CAN都是采用该方式传输; 在波特率为9600bps时,有效传输距离为5km RS485/RS422接口电路 MAX485驱动芯片引脚 DI:接收 RO:发送 RE#:接收使能 DE: 发送使能 A:差分同相 B:差分反相 RE#、DE接在一起后接3V3:表示固定发送 RE#、DE接RS485_C,可控发送接收 RS485_C=0:接收 RS485_C=1:发送 CAN接口电路 SJA1000T:CAN接口芯片,实现并行数据与CAN串行数据的互转; A82C250 :CAN电平转换芯片,实现TTL电平与差分电平互换 A82C250、 TJA1050 、 TJA1040 :5V SN65HVD230:3.3V 若处理器内含CAN接口功能,则可省略SJA1000T 差分保护电路 由于差分传输距离长,容易受雷电的影响,造成电平转换芯片、甚至CPU损坏,因此现场应用时要有一定的硬件保护措施 电压保护:TVS瞬态保护二极管SMBJ65CA(6.5V) 电流保护:自恢复保险丝 匹配电阻:在差分的最后一个终端信号间加一120欧姆的电阻,以解决串扰。 差分保护电路-光隔离 8051 串口发送 SBUF=a;//串口发送开始,发送完成需要一段时间 以9600bps为例,1位数据的发送时间为1/9600秒=0.104ms,若按上图的11位格式发送完成一字节需11.5ms左右,因此发送后必须等待11.5ms以上才能执行下一次发送,否则会丢失数据; 等待发送完成方法: 可采用delay(N);方式延时,但此种方式对于N的确定较困难,且不同的波特率,N的值又不一样; 为此8051单片机引入了TI(发送完成标志),当发送完成后硬件自动使TI=1,这样只要等到TI标志即可认为发送完成。 8051 串口发送与接收-查询方式 串口发送 SBUF=0x35; while(TI==0) ;//等待发送完成 TI=0;//清发送标志 SBUF=0x35; while(TI==0);//等待发送完成 TI=0; //清发送标志 TI:transfer interrupt 发送结束标志 串口接收 while(RI==0);//等待接收完成 RI=0; //清接收标志 b=SBUF; //接收数据 RI:receive interrupt 接收结束标志 8051 串口发送与接收-中断方式 8051 串口编程-查询方式 【例1】如图所示上位机发送数据a,下位机接收后回a+1 8051 串口编程-中断方式 【例1】如图所示上位机发送数据a,下位机接收后回a+1 8051 串口编程-中断方式 【例1】如图所示上位机发送数据a,下位机接收后回a+1 8051 串口编程-初始化 串口初始化 串口工作方式 SCON 波特率设置 TMOD TH1、TL1 ES、EA TR1 //串口初始化函数 void Sbuf_Init(void) { SCON=; //串口工作方式 //波特率设置 TMOD=; //T1工作方式 TH1=0xfd; //T1计数初值 TL1=0xfd; ES=1;EA=1; //串口中断使能 TR1=1; //启动定时器 } 8051 串口编程-初始化 SM0、SM1:方式设置位 方式0:移位寄存器输入/输出方式。数据通过RXD输入

文档评论(0)

南非的朋友 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档