- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CAN-RS232通信转换模块的设计与实现
摘要:设计了一个结构简单、使用方便、应用面广的CAN节点与RS232串口通信转换模块.详细介绍了该模块的工作原理和实现方法,即通过软硬件相结合实现电平标准和通信协议的转换,从而完成两者之间的信息传输.
1 引言??? RS232作为标准的计算机串行接口已被广泛使用,与此同时,随着现场总线技术的飞速发展,具有实时性好、可靠性高、结构简单等优点的CAN总线在测控系统中也越来越多地被采用。但由于两者的总线结构、通信协议及传输特点各不相同,因而给不同设备之间的连接带来诸多不便,因此,如何以最简单的方式实现CAN节点与RS232串行口的通信就成为工程实践中一个不可回避的问题。??? 本文采用典型的不具备CAN通信能力的AT89C51单片机作为微处理器,设计了一个简单、实用的通信转换模块。该通信转换模块具有体积小、结构简单、通用性好、使用方便等特点。
2 工作原理??? CAN-RS232通信转换模块通过硬件电路的电平标准转换和软件编程的通信协议转换实现相关功能。2.1 电平标准转换??? RS232采用的不是TTL电平的接口标准,而是负逻辑,即逻辑“1”为-3 V—-15 V:逻辑“0”为+3 V-+15 V;而CAN总线是采用“显性”和“隐性”两个互补的逻辑值表示“0”和“1”,其信号是以两线之间的“差分”电压形式出现的。这样导致两总线之间的信号电压不匹配.无法直接进行正常的通信,因此.需要相应的硬件接口电路实现电平标准转换。2.2 通信协议转换??? RS232通信属于异步串行通信,一般为两点传输 其每帧的数据格式通常为:起始位+数据位+奇偶校验位(可省略)+停止位;每个数据包的格式通常为:数据包头+数据字节+校验和(溢出不计)。而CAN通信属于总线通信,可以同时存在多个节点,因此通信协议相对也比较复杂,这里以标准帧传输为例,其数据格式通常如表1所列。因此,需要软件处理实现通信协议的转换。?
3 硬件设计??? 模块采用Atmel公司生产的AT89C51型单片机作为微处理器.采用SJA1000和TJA1050分别作为CAN控制器和驱动器.采用MAX202E作为RS232串行接口驱动器,其硬件连接电路图如图1所示。???? AT89C51采用外接晶体振荡器提供时钟输入.通过并行地址/数据复用的方式访问CAN控制器SJA1000.P2.0引脚作为片选端口;SJA1000作为CAN控制器,也采用单独的外部时钟输入,由于集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的帧处理, 其地址为0x00-0xFF:TJA1050作为CAN控制器和物理总线之间的接口.采用高速工作模式,用于提供总线的差动发送能力和CAN控制器差动接收能力;MAX202E用于实现RS232电平到微控制器接口电路的TTL电平转换。
4?软件设计??? 模块的软件设计主要包括RS232通信程序和CAN通信程序两部分,采用中断方式。其中,RS232通信数据传输的波特率为115200 bit/s,数据格式为1位起始位、8位数据位、1位停止位;CAN总线的传输波特率为500 kbit/s,采用PeliCAN模式的标准数据帧格式.每条报文的标识符ID为11位,有效数据为0-8个字节。其软件流程如图2所示。???? 在RS232中断程序中,微处理器对接收的串口数据进行处理后提取出数据字节,通过增加帧结构信息、帧类型、字节长度和标识符等生成CAN报文格式.然后由CAN控制器的发送缓冲区发送出去;??? 在CAN中断程序中.微处理器对接收的有效CAN报文进行解析,提取出字节长度和字节内容,通过增加数据头、数据尾和校验和转换为RS232通信格式,完成数据传输。
5 结束语??? 该设计已应用于笔者开发的项目一某型低空红外预警系统。用CAN—RS232通信转换模块将CAN总线收到的角度传感器测出的空中目标方位角和高低角(10 ms一组测角、波特率为500 kbifs)实时转换为RS232(波特率为115200 bit/s)串行口数据,使主控计算机(PC104工控机)接收、处理和显示;同时将RS232输出的主控计算机命令转换为CAN总线数据。经实践证明,该模块工作稳定、可靠,且成本低,完全能够满足系统的指标要求.取得了良好的应用效果
参考文献:[1]李广第,朱月秀,王秀山.单片机基础.北京:北京航空航天出版社.2001.[2]饶运涛,邹继军,郑勇芸.现场总线CAN原理与应用技术.北京:北京航空航天出版社,2003.[3]仇玉章.32位微型计算机原理与接口技术.北京:清华大学出版社。2000.[4]吴志伟,丁铂.USB—CAN—RS232总线转换电路设计与实现[J].国外电子元器件,2006(6):31—34.[5]朱小燕,景新幸,王传杰.
您可能关注的文档
最近下载
- Wexner便秘评分及罗马三诊断标准.doc VIP
- 施工材料进场检验及存储管理方案.docx VIP
- 双金属温度计与压力式温度计检定规程.pdf
- 成人呼吸道感染病原诊断核酸检测技术临床应用专家共识( 2023.pdf VIP
- 人教版(PEP)新教材小学四年级英语上册Unit 1 Helping at home单元测试卷及答案.docx VIP
- Python程序设计PPT课件(共12章)第11章 正则表达式.pptx VIP
- 红领巾伴我成长主题班会课.pptx VIP
- 路灯安装施工组织设计.pdf VIP
- 初步设计及概算评估咨询服务方案投标文件(技术方案).doc
- 危险性上消化道出血急诊救治快速通道.docx VIP
文档评论(0)