基于S12ZVL的AFS执行控制器设计

  作者:曹学余 时间:2014-07-29来源:电子产品世界

编者按:本文针对汽车前大灯随动转向系统控制,提出基于飞思卡尔S12ZVL的混合集成芯片解决方案。本文详细描述汽车前大灯随动转向系统的软硬件设计框图,同时介绍基于飞思卡尔的LIN驱动包的控制器LIN通讯实现。

  2.1 硬件设计

  执行控制器采用S12ZVL来实现LIN通讯并控制步进电机调整车灯上下左右运动,同时实现一些辅助功能等。由于S12ZVL集成了LDO,LIN物理层等,所以可以简化电路设计,减小PCB的尺寸。S12ZVL通过SPI接口来配置两路NCV70522的电机控制参数,比如步进电机控制细分数,运行电流等,同时S12ZVL通过Timer模块产生不同频率脉冲来控制步进电机的速度,硬件结构图如图3所示。

  2.2 软件设计

  S12ZVL的编程调试可以使用飞思卡尔的Code Warrior 10.6环境,界面比较人性化。AFS执行控制器程序包含主程序,LIN驱动程序,步进电机芯片的控制程序及标定程序等部分。LIN驱动程序可以使用飞思卡尔的LIN软件包,其初始化可以通过LIN软件包提供的接口函数实现,步进电机驱动IC的初始化主要通过SPI通讯来实现,可以配置电机驱动IC的工作电流,步进电机的细分数等参数。在主循环中通过使用状态机来实现函数的跳转,从而实现LIN报文接收。

  除了主程序之外,还有timer的中断服务程序,中断服务程序可以控制两个步进电机的运行及停止,实现步进电机的加减速运动,同时也能实现一些LIN报文命令的动作,比如自校准运动,停止命令,复位命令等。

  3 LIN通信实现

  针对S08、S12以及S12 Magniv系列,飞思卡尔提供了符合LIN2.1、LIN2.0和SAE2602规范的软件包,从而可以帮助开发者非常方便快速的开发出LIN通讯程序。图4为飞思卡尔的LIN驱动程序结构图,LIN2.1 Core API 和J2602 Core API可以实现对LIN的初始化以及应用层与core层之间的信号传递功能,LIN2.1 TL层可以给测试者发送诊断请求,Low Level层处理程序与硬件之间的信号传递功能,比如字节发送,接收响应,Break检测等。

  该软件包除了驱动程序之外,还提供了方便开发者使用的图形化配置工具NCF GUI,该工具可以根据LIN配置描述文件LCF和节点描述文件NCF自动生成节点的配置.c和.h文件,将LIN代码配置文件,LIN驱动程序以及用户应用软件一起编译,就可以生成实现LIN通讯的可执行程序,从而可以方便开发者将更多的时间放在应用程序的开发上。

1 2

关键词: 飞思卡尔 S12ZVL AFS LIN 控制器 201408

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版