- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式Linux 下CAN 总线驱动程序设计
宋扩东,卢珞先
武汉理工大学信息工程学院通信与信息系统,武汉(430070)
E-mail:song_0011@
摘 要:以基于ARM9 核心的 S3C2410 微处理器与 CAN 总线控制器MCP2515 为例,讨
论了嵌入式 Linux 操作系统下的设备驱动程序开发。在构建好硬件系统的基础上,详细介
绍了基于嵌入式Linux2.6 内核下的CAN 总线驱动程序的开发过程,并结合CAN 总线分析
测试仪,给出分析测试结果。
关键词:CAN;驱动;嵌入式Linux;ARM9;
中图分类号:TP368
1. 系统硬件结构介绍
系统中 CAN 总线主要用来完成 S3C2410 开发板和 CAN 总线分析仪的数据传输。在
S3C2410 开发平台上,MCP2515 芯片用作 CAN 控制器,MCP2551 芯片用作 CAN 收发
器,S3C2410 微处理器用作节点控制器。如图1 所示。
S3C2410
SPI 总线
MCP2515
MCP2551
CAN 总线
CAN 总线分析
图1 系统硬件结构
图 1
1.1 S3C2410 的SPI 接口简介
SPI( Serial Peripheral Interface) [1]是一个同步串行外围接口,允许MCU 与各种外围设备
以串行方式进行通信。S3C2410 微处理器包括两路 SPI,每一路分别有两个 8 位转移寄存
器,用来发送和接收数据。在 SPI 进行传输时,数据同时发送和接收[2] 。如果只想发送数
据,接收到的数据将是无效的;如果只想接收数据,应当发送全是 1 的数据。
1.2 MCP2551 功能简介
MCP2551 是 CAN 协议控制器和物理总线之间的接口。这个器件向总线提供了差动的
发送能力,向CAN 控制器提供了差动的接收能力。
1.3 MCP2515 功能简介
MCP2515是一款独立CAN控制器,是为简化连接CAN总线的应用而开发的。图2 简要
[3] [4]
显示了MCP2515 的结构框图 。该器件主要由三个部分组成 :
- 1 -
Linux公社(LinuxIDC.com) 是包括Ubuntu,Fedora,SUSE技术,最新IT资讯等Linux专业类网站。
TXCAN
CAN SRAM SPI
RXCAN 协议引擎 寄存器 接口模块
配置控制逻辑
图 2 MCP2515 的结构框图
(1)CAN 协议引擎(处理所有总线上的报文发送和接收)
您可能关注的文档
- 6_ADAMS_CAR(转向篇)模块详细实例教程.pdf
- 6_ADAMS_CAR模块详细实例教程(转向篇).doc
- 9 ADAMS_CAR模块实例(后悬架模块装配).pdf
- 11-MnO2-Embedded-in-Mesoporous-Carbon-Wall Structure for Use as Electrochemical Capacitors-MnO2与CMK直接反应制备!.pdf
- 25.汽油机进气歧管CFD分析与改进.pdf
- 2010年春季全国大学生CAD类软件团队技能赛赛题(二维).doc
- 2012 CCP 第二届国际童画创意大赛征稿通知.doc
- 2013年CCNA数据中心13期讲座课件合集.pdf
- 2014年TIMES英国大学排名-Chemical Engineering(化学工程)专业排名.pdf
- 4022.疯狂Java讲义(第2版)(含CD光盘1张).pdf
文档评论(0)