一种嵌入式汽车数字仪表设计方案

发布者:会飞的笨鱼最新更新时间:2013-02-25 来源: dzsc关键字:汽车数字仪表  S3C44BOX  MCP2510 手机看文章 扫描二维码
随时随地手机看文章

  1 引言

  汽车仪表是驾驶员与汽车的信息交流界面,对汽车安全以及经济行驶具有重要作用。近年来,随着汽车电子技术的发展,汽车仪表显示信息也不断增加,而传统机械指针式汽车组合仪表则无法满足现在使用需求。特别是计算机、微电子和各种现场总线通信技术广泛运用,以嵌入式微处理器为核心的智能化数字式仪表将是汽车仪表发展的必然趋势。本文给出一种嵌入式汽车数字仪表设计方案。

  2 硬件设计

  汽车仪表需要处理的信号主要有:车速、发动机转速、水温、油量、以及各种开关量或报警信号。其中,发动机转速信号和前后灯信号是从CAN总线(发动机电控模块和前后灯电控模块)获取,而车速信号、水温、油量和其他开关量信号从相应的传感器获取。

  汽车数字仪表系统结构如图1所示,本系统对车速、发动机转速、水温和油量信息采用步进表头显示,里程信息采用LCD显示,开关量或报警信号采用LED显示,串口EEPROM用于存储里程信息。采用Microchip公司的具有SPI接口的控制器MCP2510与收发器80C250构成CAN节点,用于实现与汽车其他CAN节点间的通信。

系统结构框图
 

  2.1 MCU、外扩存储器和里程存储电路

  系统采用三星公司的ARM7TDMI器件S3C44BOX作为主控制器。S3C44BOX是16/32位RISC处理器,其工作主频可达75 MHz,内部资源丰富。由于S3C44BOX内部无存储器(内部SRAM用于缓存),因此必须采用总线扩展外部存储器,包括程序存储器和数据存储器,采用16 Mbit的:FlashSST39VF160及64 Mbit的SDRAM HY57V641620分别作为程序存储器和数据存储器。系统还采用一片AT24C04存储器件来存储里程信息。AT24C04是4 Kbit的串行存储器,采用I2C总线方式实现里程信息的存储。

  2.2 电源和复位电路

  该汽车数字仪表系统采用汽车蓄电池供电,汽车蓄电池的电压约为12 V,而该系统需采用5 V、2.5 V和3.3 V工作电压,S3C44BOX内核工作电压是2.5 V,I/O端口的工作电压是3.3 V,调理电路以及一些驱动器件需用5 V的工作电压。因此,系统选用7805稳压器作为5 V电压转换器,选用AS2515AU2.5和AS2515AU3.3分别作为2.5 V和3.3 V电压转换器。掉电时能够及时存储里程信息,电源地需接一只1 000 μF的电容。掉电时,大电容可以确保S3C44BOX工作一段时间,完成里程信息的存储。复位电路采用专用的复位电路IPM811实现系统稳定启动。图2为系统电源电路。

系统电源电路

  2.3 车速、水温、油量以及开关量的处理电路

  由于汽车大多工作在恶劣环境下,将干扰车速传感器信号,因此在输入至中断端口EINT0前需要对车速脉冲信号进行处理,这里采用RC滤波、三极管放大以及斯密特整形方法调理车速脉冲信号。车速脉冲调理电路如图3所示。

车速脉冲调理电路

  水温、油量信号是电阻信号,须转化为电压信号,再将其电压信号输入至S3C44BOX的AD端口。而其他开关量则经过滤波降压后输入至S3C44BOX的I/O端口。[page]

  2.4 CAN总线通信电路

  S3C44BOX无SPI接口,但有SIO接口,SIO模块的发送和接收既可在上升沿锁存数据位,也可在下降沿锁存数据位,因此可通过设置S3C44BOX的SIO模块所对应的寄存器实现上升沿发送数据,下降沿接收数据,从而与MCP2510的SPI总线时序相配合。CAN总线通信电路如图4所示。

CAN总线通信硬件连接图

  步进电机表头电路等。其中步进电机选用Switec的汽车仪表专用步进电机X15.168,以及专用四通道步进电机驱动器件X12.017。S3C44BOX的I/O电平为3.3LVCMOS电平,而X12.017是5VCMOS电平,需采用74LVX4245电平转换。

  3 软件设计

  3.1 操作系统

  μC/OS-II是Jean J-Labrosse开发的免费的、开源的嵌入式实时操作系统。μC/OS-II是一个基于优先级的可剥夺型内核,系统所有任务都有一个唯一的优先级别,适用于实时性要求较强的场合。μC/OS-II提供多种系统服务,如消息邮箱、消息队列、信号量管理以及时间延时等,实时内核使得CPU的利用更有效。

  3.2 μC/OS-II在ARM上的移植及配置

  μC/OS-II的源代码除了那些与硬件关系紧密的软件模块需用汇编语言编写外,绝大部分代码都采用C语言编写,所以μC/OS-II的可移植性强。在ARM上移植μC/OS-II主要编写3个源文件,即OS_CPU.H、OS_CPU.C、OS_CPU_A.S。在OS_CPU.H中完成所需的基本配置和定义(定义数据类型、定义使能和禁止中断宏等);OS_CPU.C主要移植OS-TaskStkInit()、OSTaskCreateHook()、OSTaskDelHook()、OSTaskSwHook()、OSTaskStatHook()、OSTimeTickHo-ok()等6个函数;OS_CPU_A.S主要完成OSStartHighRdy()、OSCtxSw()、OSIntCtxSw()、OSTickISR()等4个汇编函数的移植。

  3.3 系统任务及分析

  对一个具体的嵌入式应用系统“任务划分”是实时操作系统应用软件的关键,任务划分是否合理将直接影响软件设计质量。本系统主要有8个任务,即车速脉冲测量任务、CAN总线任务、水温采样任务、油量采样任务、开关量处理任务、里程记录及LCD显示任务、步进电机驱动任务、WDT任务。任务间通过消息队列和信号量进行通信和共享数据。系统主控程序如下:[page]

 



  主程序在完成初始化(硬件初始化ARMtarge-tInit()、μC/OS-II初始化OSInit()、建立消息队列等)工作后依次创建各任务,然后调用OSStart()启动操作系统,启动时钟ARMTargetStart()。在μC/OS-II中,各任务都是并发的,但优先级不同,拥有各自的任务堆栈,不同任务间通过消息队列和信号量进行通信和共享数据。任务采用无限循环结构,各任务通过延时或者等待信号量和消息队列来放弃CPU的使用权,这样在时钟脉冲到来时产生中断切换任务,系统转而运行准备就绪的高优先级任务,当延时或信号量和消息队列到来时,任务再次运行。系统采用TimerO定时中断作为系统时钟脉冲控制器,并在需要的任务中建立信号量。系统任务如下:
 

  1)车速脉冲测量任务:脉冲信号接EINTO,使用定时器1定时,测量t时间内脉冲数,并将数据发送到消息队列。

  2)CAN总线任务:CAN总线任务等待中断服务程序发送,接收CAN总线数据的信号量,获得CPU使用权后,CAN总线任务处理CAN总线数据并将其发送到消息队列,并再次等待接收信号量。

  3)水温和油量采样任务:定时采样模拟量,并将采样到的模拟量数值发送到消息队列。

  4)开关量处理任务:根据开关量的状态控制LED点亮或熄灭,延时。

  5)里程记录及LCD显示任务:当车速脉冲值累加至0.1 km计数值,向本任务发出信号量,任务获得信号量后进入准备就绪状态,在任务调度时获得CPU的使用权,显示并记录里程信息,运行后继续等待接收信号量。

  6)步进电机驱动任务:首先等待消息队列,再根据送出消息的任务识别出信息内容,根据队列中的数据驱动步进电机旋转相应的步数,运行后再次等待队列中的消息。本任务赋予第2高优先级。

  7)WDT任务:用于监控,提高系统的可靠性,任务优先级最高,延时。

  3.4 CAN总线任务及步进电机驱动任务流程

  由于S3C44BOX的SIO接口的引脚与标准I/O端口复用,因此首先必须设置S3C44BOX的引脚57~引脚59为SIO接口,然后再通过配置SIO模块对应的寄存器,使得SIO时序与MCP2510的SPI接口协议一致,可通过以下初始化SIO函数实现。

 

CAN总线及步进电机驱动任务流程图

  如图5所示,初始化完成后,主程序发起CAN总线任务及步进电机驱动任务,两个任务先后进入等待信号量和等待消息队列,CAN总线发生中断后,中断服务程序释放信号量,使得CAN总线任务进入就绪状态,在其获得CPU控制权后,处理数据,然后将数据发送至消息队列,从而使得步进电机驱动任务进入就绪状态,电机任务通过任务调用获得CPU使用权,再根据消息队列中的数据计算出所需的驱动步数,驱动电机旋转。

  4 结束语

  采用S3C44BOX与嵌入式实时操作系统μC/OS_II设计了一款高精度高、高灵敏度、工作稳定的嵌入式总线汽车数字仪表。S3C44BOX资源丰富、执行速度快,能扩展很多种功能,如IC卡、GPS、黑匣子等;加之嵌入式实时操作系统简化了应用程序,可高效实时地调用系统任务,因此本汽车数字仪表系统能够很好地解决汽车仪表迈向综合信息化的问题。

关键字:汽车数字仪表  S3C44BOX  MCP2510 引用地址:一种嵌入式汽车数字仪表设计方案

上一篇:基于HC9SDGl28单片机的智能车的设计
下一篇:汽车安全与防御系统的设计与实现

推荐阅读最新更新时间:2024-03-16 13:19

探讨关于汽车数字仪表群设计的挑战
本文首先将重点阐述汽车设计/可靠性方面的一些限制,然后会评测数字仪表群架构,以及存储子系统的取舍对于未来项目的性能、可靠性和成本有何影响。 数字式仪表群设计的挑战 数字式仪表群必须支持高性能实时处理需求(就像现有的消费级显示平台),同时显著提升设计的长期可靠性。汽车市场的OEM厂商(原始设备制造商)、一级供应商和客户绝不会将显示故障视为消费级电话或个人电脑经常发生的小问题。 新的数字式仪表群需要打造一种简单易用、排除干扰的信息环境,从而促进安全驾驶,这类产品必须确保出色的性能水平以及长期的可靠运行,同时承受苛刻而恶劣的工作环境(例如,-40~+105℃的极端温度范围)。 汽车行业在环境、安全和质量方面的这些严苛要求
[嵌入式]
基于LED显示屏软件设计
  1.LED显示屏显示程序的设计   使用S3C44BOX内部的DMA控制器进行数据的传输与控制,使显示程序得到简化,其程序流程如图所示。点阵码的传输全由DMA控制器完成,只需 在启动DMA数据传输前将点阵码的首址、LED显示屏的首址及传输数据量的值分别赋给相应的控制字,启动DMA操作即可。完成所有本同名行点阵 码传输后,将刷新的数据锁存到第二级列数据锁存器并输出,驱动本同名行显示。这样,循环显示16个同名行后就完成了一帧点阵显示。   2.点阵排序   由于LED显示模块的电路结构以及使用了16位并行总线和DMA数据传输技术,在显示时点阵码的排放顺序,需要满足如下要求:   ①两相邻的纵向级联的一系列横向级联级应按①和②条
[单片机]
基于LED显示屏软件设计
大联大品佳集团推出基于NXP的QNX之汽车数字仪表解决方案
2019年4月11日,致力于亚太地区市场的领先半导体元器件分销商---大联大控股宣布,其旗下 品佳 推出基于恩智浦( NXP )的 QNX 之汽车数字仪表解决方案。 车载信息娱乐系统的复杂度每天都在上升,近年来,市场上出现了3D导航系统、3G/LTE无线接入设备、高分辨率彩色显示屏、语音识别系统以及USB和Bluetooth®数据连接。这些系统经常需要与汽车、外部设备和互联网连接,需要以实用方式处理和显示的信息量也在不断增加,这就需要采用具有高性能图形功能和丰富外设接口的强大而灵活的硬件解决方案。 NXP 提供汽车专用微处理器、SDR(软件定义的无线电)解决方案和音频放大器,满足所有OEM的要求和规范,我们还提供广泛的解
[汽车电子]
大联大品佳集团推出基于NXP的QNX之<font color='red'>汽车</font><font color='red'>数字仪表</font>解决方案
灵活的现代CPLD汽车数字仪表
  汽车仪表板成为汇集车辆安全和管理所有信息的神经中枢,为驾驶员显示各种信息。在当今的数字时代,车辆仪表系统必须能够监控所有关键功能,该系统甚至是个性化的。业界需求发展导致出现了很多半导体解决方案,从ASSP到全定制器件等。这些方案可能都是功能固定的解决方案,不能灵活地进行产品开发,无法满足设计人员的要求。作为对比,可更新解决方案在一条车辆产品线上支持多种相似的应用,没有任何多余的成本开销。这类定制解决方案以很低的成本满足了所有需求。   本文简要介绍一种创新的CPLD体系结构,完全避免了使用微控制器及其驱动器,从而提供了低成本、低功耗组合数字仪表板解决方案。这一模拟仪表板解决方案(ADS)高效地实现了数字汽车网络,充分发挥了
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved