期刊库

教育   经济   科技   财会   管理   
医学   法学   文史   工业   建筑   
农学   水利   计算机   更多>>
 首 页    论文大全   论文精品    学术答疑    论文检测    出书咨询    服务流程    诚信通道    关于我们 

基于Atmega128和SJA1000的CAN总线通信应用设计(2)

人气指数: 发布时间:2014-05-10 20:39  来源:http://www.zgqkk.com  作者: 张涛等
分享到:

 

  2.2 软件设计思路

  1)软件设计总体思路:SJA1000芯片等同于Atmega128外接的RAM,对SJA1000读取数据时,首先需要初始化该芯片。为了保证接收数据的安全性,采用中断接收。

  2)本软件设计的目的是基于硬件的一个测试,测试方法是在CAN总线上挂载3个节点,其中:1个节点作为主节点,另外2个节点作为从节点。

  3)主节点接收2个从节点所发送过来的数据,并且主节点能选择性地向从节点发送数据;从节点对发送的数据进行标识,主节点判断从节点发送的数据为哪个节点所发送,并对这个从节点返回一个数据。

  3 具体设计

  3.1 硬件设计

  图2是本设计中Atmega128和CAN总线接口电路图。SJA1000相当于Atmega128的外接RAM,SJA1000的AD0-7口和Atmega128的PA0-7口依次连接,实现Atmega128和SJA1000之间的地址/数据传递;PG0口和/WR口连接,实现对数据读取的控制;PG1口和/RD/E口连接,实现对数据写的控制;PG2口和ALE/AS口连接,实现对输入信号的控制;PD0口和/INT口连接,实现对中断的控制。SJA1000的RD,WR和ALE分别与Atmega128的对应引脚相连,INT接Atmega128的PD0引脚,于是Atmega128可通过中断方式访问SJA1000。图2中的MCP2551是一个可容错的高速CAN器件,可作为CAN协议控制器和物理总线接口。MCP2551可为CAN协议控制器提供差分收发能力。数据通过TX0端输出到MCP2551,然后经过MCP2551转换成差分信号,通过CAN总线传输。从CAN总线接收到的差分信号通过MCP2551转换成串行数据,通过RXD端输入到SJA1000[4]。

  3.2 软件设计

  1)对SJA1000工作方式进行设置(SJA1000初始化),包括模式控制、频分设置、波特率设置、验收代码设置和验收屏蔽设置。

  初始化需要调用已经封装好的2个读写寄存器函数:RD_SJA()和WR_SJA()。图4是此设计中主节点SJA1000初始化的算法。从节点的验收代码分别设置为00000000和00000001,从节点的验收屏蔽都设置为00000000。

  4 结 语

  经过对基于此设计的实际产品进行测试,硬件设计和软件设计能实现并满足需求,通信良好,扩展性好,可通过CAN总线挂载一定数量的此设计与主机进行通信。此设计抗干扰能力好,适用于长远距离和大数据量通信。

  参考文献:

  [1] 沈建良.Atmega128单片机入门与提高[M].北京:北京航空航天大学出版社,2009:102-121.

  [2] 来清民.手把手教你学CAN总线[M].北京:北京航空航天大学出版社,2010:257-324.   [3] 刘泽祥.现场总线技术[M].北京:机械工业出版社,2005:252-308.

  [4] CAN总线控制器SJA1000中文资料[EB/OL].(2010-02-10)[2013-05-20].http://wenku.baidu.com/view/a62d2641b307e87101f69614.html.

  [5] 牛跃听.CAN总线嵌入式开发从入门到实战[M]. 北京:北京航空航天大学出版社,2012:93-103.

  [6] 朱飞,杨平.AVR单片机C语言开发入门与典型实例[M].北京:人民邮电出版社,2010:151-160.

  [7] 张华宇,谢风芹,王立滨.AVR单片机开发入门与典型实例[M].北京:机械工业出版社,2011:222-274.

 


期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
  本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。


  【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

 
QQ在线咨询
投稿辅导热线:
180-1501-6272
微信号咨询:
fabiaoba-com
咨询电话:18015016272 投稿邮箱:zgqkk365#126.com(#换成@)
本站郑重声明:文章只代表作者观点, 并不意味着本站认同。所载文章、数据仅供参考,使用前请核实,风险自负。
部分作品系转载,版权归原作者或相应的机构   若某篇作品侵犯您的权利,请来信告知.版权:周口博闻教育咨询有限公司 
Copyright © 2005-2023 . 期刊库 版权所有