微波EDA网,见证研发工程师的成长!
首页 > 应用设计 > 汽车电子 > 基于LIN总线的汽车方向盘按键控制器的设计与实现

基于LIN总线的汽车方向盘按键控制器的设计与实现

时间:09-30 来源:3721RD 点击:

所需要的电压,同时支持较高的重复编程和擦除操作,也可以动态地保存参数到F L A S H中,因此M C9S08S C4内部FLASH存储器能够模拟EEPROM的操作实现数据的存储,省去了EEPROM芯片。

2 LIN总线收发器

L I N总线收发器是L I N控制器和L I N物理总线之间的接口,其选型应从L I N协议版本、静态功耗、成本等方面综合考虑。在本设计中选用的L I N收发器是恩智浦半导体公司的T J A1021。T J A1021支持最新的L I N2.1协议,数据传输速率从1~20k b p s,输入电平兼容3.3V和5V器件,具有极低的电磁发射和高抗电磁干扰性,在睡眠模式下供电电流只有10μ A左右,可实现本地或远程唤醒,L I N总线对电池和地自动短路保护。T J A1021应用电路如图2所示,具有4种工作模式:正常工作模式、睡眠模式、待机模式以及启动模式。当VBAT上电,且控制信号NSLP为低电平,T J A1021即进入启动模式。正常启动以后,若NSLP被置为高电平并超过2μ s,T J A1021则进入正常工作模式。此时,若NSLP被置为低电平并超过2μ s,T J A1021则进入睡眠模式。睡眠模式下,如果R X D信号由悬浮状态变为低电平,则说明检测到唤醒信号(T X D信号输出状态为弱下拉则为本地唤醒,强下拉则为远程唤醒),TJA1021将自动进入待机模式。V15为齐纳二极管,用来抑制汽车电源瞬态过压以保护收发器的正常工作。
\

按键控制器软件系统设计

在由方向盘按键控制器、收音机功能模块、车载D V D或者C D功能模块、自动巡航控制模块等组成的L I N总线系统中,方向盘按键控制器为主节点,其余为从节点。按键控制器软件主程序是采用循环方式不断扫描按键矩阵,当某个按键状态发生变化时,就调用LIN发送函数,通过LIN总
线输出相应的指令。主程序软件包括协议层软件、接口层软件和应用层软件三部分。协议层软件负责底层通信协议的实现及总线信号的产生,接口层软件提供应用程序接口,应用层软件负责具体功能的控制。

1 协议层软件

协议层是整个系统L I N协议实现的核心,负责物理链路的控制和使用,它接收来自接口层函数的调用,主要完成多字节数据的发送。在本设计中,多字节发送函数为v o i d_s e n d_data(u8 *temp, u8 num),待发送的数据数组通过指针t e m p传递,n u m为要发送的数据字节数,发送程序流程图如图3(a)所示。

2 接口层软件

接口层是协议层与应用层联系的桥梁,负责将应用层的命令转换为协议层的数据格式,然后通过协议层将这些数据发送到总线,在本设计中,接口层多字节发送函数为v o i d_u8_d a t a_wr(d a t a_h a n d l e u u u, u8*ptr),程序流程如图3(b)所示。
\
图3 多字节发送流程图

3 应用层软件


应用层软件主要分为3 个基本模块:总线通信模块v o i d _ L I N _s e n d(v o i d)、键盘状态检测模块v o i dk e y_s c a n(v o id)和键盘处理模块v o i dprocess_(void)。程序开始运行时,先对L I N总线进行初始化,初始化完毕就转入键盘状态扫描函数key_scan()。该函数监测键盘状态标志,如果状态改变就调用L I N_s e n d()把对应命令发送到总线上。

试验测试

根据上述方案,设计了一款简易的按键控制器,配置了3个按键来模拟方向盘按键的功能,并进行了通信试验和初步的抗干扰试验,印制电路板(P C B)如图4所示。测试方法如下:
\
图4 按键控制器PCB图
将按键控制器的L I N线、地线分别和自制的LIN总线测试台LI N线、地线相连,供电电压为直流12V。当任意按键按下时,控制器作为主节点主动向LI N总线发送"#F0"指令,如果LIN总线测试台接收到该命令字就启动蜂鸣器报警,同时发光二极管闪烁。实际测试表明按键控制器LIN通信功能正常。由于汽车电磁环境恶劣,因此L I N通信系统的抗干扰能力尤为重要。按键控制器在B Z-5型汽车电火花干扰试验台上进行了抗干扰试验,试验中LIN通信功能正常,达到了设计目标。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top