嵌入式Linux下CAN控制器的驱动程序设计
时间:2025-05-12
时间:2025-05-12
嵌入式Linux下CAN控制器的驱动程序设计
维普资讯 http://www.77cn.com.cn
第 2卷 7VO127 .
第 2期 1N O 21 .
计算机工程与设计Co u e g n e n n sg mp trEn ie r ga dDe in i
20年 1月 06 1N O .2 0 V 0 6
嵌入式 Lnx C N控制器的驱动程序设计 i下 A u陈祖爵,周明 (苏大学计算机与通信工程学院,江苏镇江 22 1)江 103摘要:入式操作系统 u l u嵌 C i x下扩展各类 C N总线设备, n A需设计相应的驱动程序。MC 2 1 P 5 0为常用的 C N总线控制器, A 以它为例,细研究分析了嵌入式操作系统中设备管理和驱动程序的特点,详以及 u l u Ci x下 C N设备驱动程序的开发流程和 n A
,
技巧,并结合 C N总线技术的特点, A设计了相关的重要数据结构和操作代码。最后介绍了把驱动程序编译添加进 u l u C i x内 n核的方法,实现了 C N设备的驱动。 A
关键词:入式系统; C N总线;u l u;设备驱动; MC 2 1嵌 A Ci x n P 50
中图法分类号: P 6, T 3 81
文献标识码: A
文章编号: 0072 2 0 ) 1 0 70 10 .04(06 2. 9 .4 4
Dr e e i n o i r sg f v d CAN o to lri mb d e n x c n r l e e d d Liu e nC N uje Z HE Z - . HOU ig u M n( st eo o p t dC mm nct n n i eig in s nv r t,Z ej n 0 I tu f m ue a o u i i g er,J gu iesy hni g 1 ,C ia n it C rn ao E n n a U i a 22 l 3 h ) nAb t a t T x a d a l i d f s r c: o e p n l k n so CAN e ie n t e e e d d o e a in s se o Cl u h u d d sg e c re p n i g d i e . d v c s i h mb d e p r t y tm f o u i x s o l e i n t o r s o d n r r n h v M CP 51 o 2 i c mmo l s d CAN o t l r t k n r x mp e t ema a e n f h e iea dc a a t rsi f h rv r n t e
s 0 nyu e c n r l, a i gi f a l, h n g me t t ed v c h r c e it o t ed i e o e to e o n c ih e e d d o e ai n s s m r e e c e d a ay e e al i cu i g t e d v l p n r c d r d s i fCAN e ied i e mb d e p r t y t a er s a h da n l z d i d t i n l d n h e eo me t o e u e a k U o o e r n n . p n d vc r r v i eu i u . T er lv tm p ̄ t a asr c u ea d o e a i gc d i e ih i o n t Cl x h n h ee a o a t u t r n p r t o ei wrt nwh c c mb n dt et c n l g c l h a trsi f n i n d t n s t s i e e h o o i a a c e t o h cr i c CAN u . F n l, t eme h d o o i n n d i gt ed i e t Cl u e e si t d c d t en r a r f bs i a l h t o f mp l g a d a d n rv ri o u i xk r l r u e, h o m l y c i h n n n i n o wo k o CAN e ie d vc s i r a ie . s e l d z Ke r s e e d ds se;C ywo d: mb d e tm y AN u; u i u; d vied i e; M CP 5 0 bs Cl x n e c rv r 2 1
0引言 C N总线技术是现今流行的一种先进的现场总线技术, A可以有效的支持分布式控制和实时控制的串行通信网络。由于 C N总线具有通信速率高,靠性高,接方便和性能价 A可连
别适合对成本和功耗敏感的应用场合。 P 5 0是一款带有 MC 2 1符合工业标准的 S I口的 C N总线控制芯片,支持 C N P接 A它 A
技术规范 V ./ 20 B,并能够发送和接收标准的和扩展的信息 A帧,时具有接收滤波和信息管理的功能。MC 2 1同 P 5 0在目前
市场上是体积最小、易于使用也是最节约成本的独立 C N最 A控制器。MC 2 5是与 MC 2 1配的高速 C N总线收发 P5 1 P
5 0相 A器,担负着节点和总线之间接收和发送电平转换的任务。它 MC 2 1过 S I口与 S C 4 O P 5 0通 P接 3 4 B X进行数据传输,高最
格比高等诸多优点,因此在嵌入式系统开发中有普遍的应用。目前, A总线通信控制芯片众多,在 u l u平台下开发 CN要 Ci x n基于 C N总线的应用系统,就需要自己开发 u l u A Ci x下的驱 n
动程序。本文将基于一个 C N总线在汽车电子中的应用详 A细介绍在 u l u下 C N总线控制器驱动程序的设计过程。 Ci x n A
数据传输数率可达 5/。 P 50再通过 C N收发器连接 sMC 2 Mb 1 A到 C N总线上, AN总线上可以挂接多个节点, 3 4 B X通 A C SC 4 O过 MC 2 1与 C N总线上的其它微处理器进行通信。 P 50 A MC 2 1含 3个发送缓冲区和两个接收缓冲区,同时具有 P 5 0内
1系统硬件结构本嵌入式系统主要的硬件组成为:处理器采用三星公司的 S C 4 O C N总线控制器和收发器分别采用 MirC i 3 4 B X, A co h p公司的 MC 2 1 P 50和 MC 2 5。开发一个 u l u P5 1 Ci x的驱动,在 n熟悉 u lu Ci x内核结构之外,量的工作在于阅读相应的控制 n大
灵活的中断管理能力,帧屏蔽和过滤、优先级设定等特性,帧这使得微处理器对 C N总线的操作变得非常简便。系统原 A理如图 1示。所
芯片手册。硬件信息决定驱动的主要结构。S C 4 O采用 3 4BX的是 AR公司的 l/ M 63 2位 A M7 D内核,是三星公司为 R T MI它一
2 AN总线应用系统的软件设计 C2嵌入式操作系统选择 u l u . 1 Ci x nu lu Ci x是 Ln x .本得一个分支,设计用在微型控 n iu20版被
般应用提供的高性价比和高性能的微控制器解决方案,特
收稿日期:2 0 . .9 0 5 92。 0 作者简介:陈祖爵 ( 5一) 1 3,男,上海人,副教授,硕士生导师,研究方向为网络技术与嵌入式系统开发应用:周明 (9 2,男,上海人, 9 1 8一)硕士研究生,研究方向为嵌入式系统与计算机网络控制技术。
-——
4 7- 09——
嵌入式Linux下CAN控制器的驱动程序设计
维普资讯 http://www.77cn.com.cn
n i dc a dc u sg e h r l; n
一竺璺丝。
f N-器1 m - c ' A收 l m发=],
i s t nt Ex; I
i xRTR; nt r
) aD m; Cn a 其中i C d为 AN消息 I号;a D dt a是要传输的消息数据,大是最 8字节; l表示实际传输的数据长度,取值范围为 0到 8个 dc; I x是判断 C N消息是否使用扩展 …… 此处隐藏:10909字,全部文档内容请下载后查看。喜欢就下载吧 ……