CAN网络通讯实验板课程设计毕业设计(论文)精选.docVIP

CAN网络通讯实验板课程设计毕业设计(论文)精选.doc

  1. 1、本文档共27页,可阅读全部内容。
  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文档。上传文档
查看更多
CAN网络通讯实验板课程设计毕业设计(论文)精选

目 录 1 前言 1 2 系统设计 2 2.1硬件设计 2 2.1.1硬件方案比较 2 2.1.2硬件方案论证 3 2.1.3硬件方案选择 4 2.2硬件设计 4 2.1软件设计方案 7 3系统硬件设计 8 3.1 CAN总线介绍 8 3.2从站CAN总线接口电路 8 3.3硬件模块说明 9 3.4 CAN电路接线 10 3.5 CAN总线控制器SJA1000 10 3.6 CAN控制器接口PCA82C250 10 4系统软件设计 11 4.1程序流程图 11 4.1.1 主程序流程图 11 4.1.2 初始化子程序流程图 11 4.1.3 发送数据子程序流程图 12 4.1.4 接收数据子程序流程图 13 4.2 软件实现过程 13 4.2核心源程序 15 5系统调试 21 5.1 PC机与下位机的通讯调试 21 5.2 CAN总线调试 21 5.3 单片机最小系统电路的调试 21 5.4 综合调试 22 5.5 最终实现效果 22 5.6 测试仪器 22 6结果分析及心得体会 23 6.1 结果分析 23 6.2 心得体会 23 6.2.2 CAN总线的其他应用 23 7 参考文献 25 附录:系统设计原理图 26 1 前言 现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。CAN(Controller Area Network)属于现场总线的范畴,是一种多主方式的串行通讯总线,数据通信实时性强。与其它现场总线比较而言,CAN总线具有通信速率高、容易实现、可靠性高、性价比高等诸多特点。 本系统要在单片机中实现CAN总线的接口,通过CAN总线,实现两个模块之间的数据通讯。系统主要由四部分所构成:PC机、微控制器80C51、独立CAN通信控制器SJA1000和CAN总线收发器PCA82C250。微处理器80C51负责SJA1000的初始化,通过控制SJA1000实现数据的发送和接收等通信任务。CAN总线节点的软件设计主要包括三大部分:CAN节点初始化、报文发送和报文接收。 本系统通过扩展CAN总线控制器SJA1000,在单片机系统中实现了CAN总线的接口,并且编写了SJA1000的驱动程序,通过读写其的内部寄存器,完成工作方式的设置、接收滤波方式的设置、接收屏蔽寄存器(AMR)和接收代码寄存器(ACR)的设置、波特率参数设置和中断允许寄存器(IER)的设置等基本操作;利用各基本操作,完成了对SJA1000的初始化,并且实现了数据发送和接收。 2 系统设计 要实现一个系统的某些功能往往不只一种方法和途径,我们可以通过不同的方法实现相同的功能,因此我们需要从各个角度进行综合考虑,如各个方案的可行性、实用性、稳定性、实现的难度等。从而选择较好的一种方案进行设计。 下面对本设计的各个模块进行方案对比,以选择较为合理的设计方案。 2.1硬件设计 2.1.1硬件方案比较 方案一:本方案是基于三星公司的ARM微处理器S3C2440与PHILIPS公司的CAN控制器SJA1000的嵌入式控制系统,在本系统中,S3C2440直接与SJA10000相连接,由S3C2440控制CAN收发器。S3C2440是高速的微处理器,其最高的工作频率可以达到533MHz,且内部资源十分丰富,十分适合嵌入式便携式产品的应用和开发,该方案的框架图如图2.1所示。 图2.1基于嵌入式的系统框图 但由于S3C2440的硬件电路连接十分复杂,对于绘制PCB板有很大的难度,且加工工艺要求比较高,一般是六层板加工工艺,对于单个加工来说加工成本非常高,且使用起来也比80C51要复杂很多,对于本设计来说很浪费资源和成本。SJA1000的设计是基于早期的8051单片机的应用,对于从站控制器可以直接与单片机的总线相连接,但不能直接与s3c2440连接,因为s3c2440的地址总线和数据总线完全是分开的,所以还需要模拟出类似80C51单片机的外部存储器时序才能使用,这样接口连接也不能够直接对应。SJA1000一般是5V电压供电,而s3c2440一般为3.3V供电,其接口电压最高只能达到3.3V,所以电平也不兼容,要用特殊的转接电路才能实现连接。这样在硬件和软件都增加了很大的难度,因此很难实现功能。 方案二:本方案通过PC机进行上位机控制,80C51与PC机串行通信,设置SJA1000工作于Intel模式,由PC机发送的数据写入SJA1000并通过CAN收发器发送。接收数据是通过中断进行的,CAN 总线传输过来的数据经CAN接口芯片PCA82C250接收并写入SJA1000的RXFIFO,然后通过中断提请CPU读取,读取的数据上传送给PC机。试验表明,CAN总线的

文档评论(0)

gz2018gz + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档