图1 AFS系统效果图
图2 S12ZVL系列结构框图
图3 AFS系统结构
2.1 硬件设计
执行控制器采用S12ZVL来实现LIN通讯并控制步进电机调整车灯上下左右运动,同时实现一些辅助功能等。由于S12ZVL集成了LDO,LIN物理层等,所以可以简化电路设计,减小PCB的尺寸。S12ZVL通过SPI接口来配置两路NCV70522的电机控制参数,比如步进电机控制细分数,运行电流等,同时S12ZVL通过Timer模块产生不同频率脉冲来控制步进电机的速度,硬件结构图如图4所示。
图4 AFS执行器硬件结构图
2.2 软件设计
S12ZVL的编程调试可以使用飞思卡尔的Code Warrior 10.6环境,界面比较人性化。AFS执行控制器程序包含主程序,LIN驱动程序,步进电机芯片的控制程序及标定程序等部分。其中主程序流程图如图5所示,LIN驱动程序可以使用飞思卡尔的LIN软件包,其初始化可以通过LIN软件包提供的接口函数实现,步进电机驱动IC的初始化主要通过SPI通讯来实现,可以配置电机驱动IC的工作电流,步进电机的细分数等参数。在主循环中通过使用状态机来实现函数的跳转,从而实现LIN报文接收。
除了主程序之外,还有timer的中断服务程序,中断服务程序可以控制两个步进电机的运行及停止,实现步进电机的加减速运动,同时也能实现一些LIN报文命令的动作,比如自校准运动,停止命令,复位命令等。
图5 主程序流程图
3 LIN通信实现
针对S08,S12以及S12 Magniv系列,飞思卡尔提供了符合LIN2.1, LIN2.0和SAE2602规范的软件包,从而可以帮助开发者非常方便快速的开发出LIN通讯程序。图6为飞思卡尔的LIN驱动程序结构图,LIN2.1 Core API 和J2602 Core API可以实现对LIN的初始化以及应用层与core层之间的信号传递功能,LIN2.1 TL层可以给测试者发送诊断请求,Low Level层处理程序与硬件之间的信号传递功能,比如字节发送,接收响应,Break检测等。
图6 LIN软件包结构框图
该软件包除了驱动程序之外,还提供了方便开发者使用的图形化配置工具NCF GUI,该工具可以根据LIN配置描述文件LCF和节点描述文件NCF自动生成节点的配置.c和.h文件,将LIN代码配置文件,LIN驱动程序以及用户应用软件一起编译,就可以生成实现LIN通讯的可执行程序,如图7所示。从而可以方便开发者将更多的时间放在应用程序的开发上。
图7 LIN配置流程
4 总结
本文详细介绍了飞思卡尔S12ZVL混合集成芯片在AFS中的应用,其中包括S12ZVL芯片的特点,AFS控制系统的结构,同时也详细介绍了飞思卡尔的LIN通讯软件包。通过飞思卡尔S12ZVL混合信号集成芯片及飞思卡尔LIN通讯软件包,开发者可以快速实现LIN通讯功能,同时可缩小产品尺寸、加快AFS执行控制器的开发过程。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |