5B Z 控制器驱动程序开发
唐小琦!曹树华
!华中科技大学"湖北武汉D ?""#D
#X %:%1+F
K %,-+25B Z5+,-(+11%(X (/:%(H ";<J $(,G $!8":[email protected]@7("=H ’U *+,49,/:%(&/-;+28)/%,)%’,0<%)*,+1+4;
!S H *’,D ?""#D !5*/,’#!!摘要$
开发了通用.85B Z 模块驱动程序"阐述了驱动程序文件组成%主要数据结构和功能函数"并给出了主要函数程序流程图&
关键词B Z 总线%=58>!%.85B Z 控制器%驱动程序%汽车电子
中图分类号$<7?Q [email protected]"?文献标识码$B
文章编号$>"">!!A #"!""C #"D ""D >"?收稿日期$!""A >>"#
"./’0(1’$X %:%1+F %0.85B Z K +0H 1%0(/:%(!%L F 1’/,%0&-(H )-H (%+2-*%6%;0’-’’,0K ’/,2H ,)J -/+,&/,0%-’/[email protected]<*%F (+)%0H (%21+I)*’(-&+2K ’/,2H ,)-/+,&’(%F (+:/0%[email protected]
23-4,05/B Z G H &%=58>!%.85B Z )+,J -(+11%(%0(/:%(%’H -+K +-/:%%1%)-(+,/)
"!引言
分布式控制和信息共享要求汽车上的W 59相互间实现数据的交换&现代高级轿车中!多达!A ""
种信号需要在超过#"个的W 59间交换’>(
&大量离
散连线带来的问题催生了基于串行总线协议的控制和通信网络&控制器局域网作为使用最广的汽车网
络协议’!(!是一种有效支持分布式)实时控制的串行
通信网络协议!具有很高的数据完整性&=58>!系列微控制器的5!X 和=系列微控制器拥有可伸缩控制器局域网络控制器".85B Z #!使该系列微控制器成为5B Z 网络主干节点的理想器件&
由于车身电子网络的数据报是零星和不可预测的!这使得飞思卡尔的可伸缩控制器局域网络架构十分适合于这些应用&因为=5"P !=5>!和=58>!系列的P 位和>C 位微控制器是车身电子系
统和部件的骨干器件!.85B Z 模块也就成为了这些系列微控制器用于控制局域网通信的理想外围器件&被.85B Z 模块接收的5B Z 数据报被存入一
个E Y E a 存储结构&这个结构能维持接收时数据报的到达顺序!而且当具有同标识符"Y X #的数据报快速连续到达时不需担心单接收缓冲结构时可能发生
的数据溢出情况’?O D (&
>!.85B Z 的基本功能模块
!A !!信息发送缓冲区
.85B Z 具有?级发送缓冲结构&.85B Z 允许预先建立多个数据报!从而优化实时性能&当多个发送缓冲区等待发送时!.85B Z 使用局域优先权判断来决定优先权&
!A "!信息接收缓冲区和过滤器
接收到的数据报被存储到一个A 级输入E Y E a &这A 个>A 字节的数据报缓冲区被映射到同一个地址&整个接收缓冲区结构如图>所示&
图>!数据接收器缓冲区用户模型
后台接收缓冲区"$L T E #直接与.85B Z 关
联!而579只能对前台接收缓冲区进行读取&这个结构简化了控制软件!因为接收数据时只需要一个地址&
在接收数据报时!每个数据报都要经过接收过滤器的匹配操作&.85B Z 标识符接收寄存器可定义为标准或扩展标识符&当.85B Z 正确接收到通过匹配的数据报时!接收标志寄存器"5B Z $J E ^3#
的接收标志位置>!同时产生接收中断请求&*
>D *+机械与电子,!""C "D
#万方数据