基于MC9S12HY32的电动汽车仪表盘设计

发布者:乘风翻浪最新更新时间:2012-09-07 来源: eefocus关键字:LED  LCD  步进电机 手机看文章 扫描二维码
随时随地手机看文章

引言:

电动汽车仪表盘是一种集LEDLCD显示技术、步进电机控制技术于一体,适应电动汽车电子化、数字化、信息化发展的高新技术产品,它是驾驶员与汽车进行信息交流的窗口,是一个多信息显示平台,显示电机状态、电池组状态、行驶信息、底盘信息、指示报警等其它信息。FreescaleS12HY32是汽车仪表盘设计专用16MCU,笔者以S12HY32为核心设计了一款电动汽车仪表盘,它采用步进电机进行指针的指示,具有很好的数据控制特性,并能及时反映汽车加减速、电压电流上升与下降等各种工况,提高了整个系统的平稳性和定位精度,同时保留了机械指针指示的直观、有动感、符合驾驶员习惯等优点。采用LED显示转向灯、远近光变换、车门状态、安全带未系提示、充电指示、报警等状态【1】,采用LCD数字显示里程表和故障状态。本文介绍S12HY32的功能特性和应用要点,并剖析电动汽车仪表盘的设计原理和软硬件结构。
 
1 硬件设计
1.1 MC9S12HY32简介
MC9S12HY32是一款可扩展入门级的汽车仪表盘应用16位微控制器,集16位性能和许多专用功能于一身【2】,如LCD驱动和步进电机驱动,同时服务于需要CAN/LIN的应用,非常适合经济高效的汽车仪表盘应用。其芯片资源及特性如下【3】:
132MHz总线频率的HCS12 CPU内核;
2、带有ECC(错误校正码)的32KB程序闪存和4KB数据闪存,4KB片内SRAM
3、字段式LCD控制器,最多可配置为40x4段;
44个步进电机控制器,可以进行电机失速检测;
5、两个16位定时器模块,可提供16位输入捕捉、输出比较、计数和脉冲累加器功能;
68通道10位逐次逼近型ADC
7SPI/I2C模块,一个SCI模块,支持 LIN 2.02.1SAE J2602 通信;
8MSCAN模块,支持 CAN 协议 2.0A/B
1.2 系统结构
仪表盘由CAN总线接口、信号采集电路、步进电机、LCDLED、报警装置组成,用于各种工况下汽车运行信息的采集和显示,图1给出了仪表盘硬件结构,下面结合S12HY32的内部资源介绍下仪表盘的硬件设计。

图1
仪表盘硬件结构图
Picture 1:Dashboard hardware architecture
S12HY32内部资源专为仪表应用而设计,4个步进电机驱动器可以进行车速、电机转速、电流和电池组电压的指针指示,LCD控制器可以控制字段式LCD显示总里程、小计里程和电机故障信息,内部有MSCAN模块支持CAN总线应用,可以通过CAN总线获取一些关键信息,同时保留直接进行信息采集的能力:内置定时捕捉模块可以进行车速/电机转速脉冲的捕捉与统计,内置ADC进行电机温度等模拟量的采集。下面以车速信号检测为例介绍下仪表盘电路设计。
1.3 车速信号检测
车速是仪表盘需要显示的关键信息,根据汽车原理和拓扑结构,车速信号来源是CAN总线或者车速传感器。车速传感器输出0-12V的脉冲信号,其信号频率大小与车速值大小成线性关系,随车速增加而增加【4】,通过图2所示的整形电路将车速传感器信号转换为TTL电平,然后通过定时捕捉模块捕捉脉冲信号的上升沿或下降沿,进行统计分析即可得到车速大小。

图2
车速信号检测电路
Picture 1:Speed signal detection circuit
2 软件设计
2.1 软件流程设计
因为没有采用操作系统,软件设计采用循环体+中断的软件结构【5】,主循环体完成主体功能,中断服务程序进行底层协议设计和驱动管理,软件流程图如图3所示,下面简单介绍一下该流程。首先进行全局变量和所用外设(包括IOPWMTIMERSCICANLCDMOTOR CONTROLLER)的初始化,初始化完成后,进入主循环,然后在循环体内依次进行定时器管理、开关信号检测、车速检测、CAN通讯管理、里程计算及存储、报警控制、LCD控制和步进电机控制。各软件模块次序如图三所示。下面以车速检测为例介绍下软件的详细设计。[page]

3 软件流程图
Picture 3 Software Process
2.2车速信号检测软件设计
车速信号整形后得到TTL脉冲,S12HY32的定时捕捉模块以中断的方式捕捉脉冲的沿变化【6】,在中断处理函数中进行脉冲个数累加。设计脉冲统计结构体和一200ms的周期定时器,采用“滑动时间窗口脉冲统计法”进行车速的计算,脉冲统计结构体设计如下:
typedef struct{
  uint8_t   bank;
  uint16_t  cnt; 
}s_PulseCnt;
在上述结构体中,cnt表示脉冲个数,bank表示数据是否有效。滑动时间窗口脉冲统计法设计如下:
定义成员个数为6的脉冲统计结构体数组Speed_pulse[6],周期性存储车速脉冲个数,脉冲率等价于一秒内的脉冲个数,则有公式如下:
 
脉冲频率=(Speed_pulse[5].cnt-Speed_pulse[0].cnt)   (2-1)
车速=脉冲频率*FACTOR                       (2-2)
 
FACTOR由变速比和轮胎直径共同决定。
当下计算的车速表示过去1秒内的平均车速,在下一个200ms到达后,将下标为15的结构体变量依次“滑动复制”到下标为04的结构体变量中,然后更新下标为5的结构体变量,此时根据公式2-1和公式2-2进行计算得到的车速为0.2-1.2秒之间的平均速度。这种方式计算得到的车速实时性更强,而且车速变化更加平滑,反映在指针的变化上也更加平稳平滑,能得到更佳的视觉体验,其代码实现如下:
void SpeedDetect(void)
  uint16_t i,j;
  uint16_t Carspeed_pulse_frequency=0;
  if(1==Speed_detect_enable){
    if(1==Timer[SPEED_PULSE_ACCUMU_200MS].overflow_flag){
      for(i=0;i<=5;i++){
        if(0==Speed_pulse[i].bank){   
          Speed_pulse[i].cnt=Car_speed_pulses;
          Speed_pulse[i].bank=1;
          if(5==i){
            Carspeed_pulse_frequency=Speed_pulse[5].cnt-Speed_pulse[0].cnt;
            Ev_speed=(float32_t)Carspeed_pulse_frequency*CAR_PULSE_FACTOR;
            EvSpeedRangeCheck();
            for(j=0;j<5;j++){
              Speed_pulse[j].cnt=Speed_pulse[j+1].cnt;
            }
            Speed_pulse[i].bank=0;  
          }
          break;
        }
      }      
    }
  }
}
结语
笔者采用MC9S12HY32设计实现了一款电动汽车仪表盘,从处理器特性、硬件结构、车速信号检测等方面描述了仪表盘的硬件设计,从软件流程设计,车速信号检测的软件实现上描述了仪表盘的软件设计。该仪表盘经装车试验,运行稳定,功能可靠,已经进入小批量预生产阶段,具有很高的实用价值。
关键字:LED  LCD  步进电机 引用地址:基于MC9S12HY32的电动汽车仪表盘设计

上一篇:英国推首款电动汽车“现收现付”充电系统
下一篇:车载通信技术在智能交通系统中发挥的作用

推荐阅读最新更新时间:2024-05-02 22:18

苹果新春发布会将至,Mini LED或会携AirTag重磅来袭
自从去年下半年业内传出芯片缺货的消息以来,“缺芯”已经成了诸多企业的心头难题。此前网上便有传闻,“芯片慌”是块试金石,谁能在这个时候拿到足够多的芯片,那就是趋势之上的好企业。 然而随着芯片缺货的蔓延,全球消费电子龙头苹果最近也没办法抢到足够多的芯片了。据日经亚洲报道,由于全球零部件的短缺,部分MacBook和iPad的生产已经推迟,苹果一般在每年3月份召开的新品发布会并未如期而至,便是这一消息最有力的佐证。这也侧面说明,即便是苹果这样对供应链有着强大掌控权的企业,在这场“缺芯潮”里也无法独善其身。 不过,随着苹果官宣“春晚”将于北京时间4月21日拉开帷幕,上述零部件短缺问题,或许已经得到解决。然而这场盛会姗姗来迟究竟是什么原因,
[手机便携]
8051单片机进行8路LED模拟分支控制
一、设计题目 用8051的P1口作为输入、P0口作为输出,通过74LS244接8路LED模拟分支控制。 P1.0为低电平时,点亮一LED;P1.0为高电平、P1.1为低电平时点亮全部LED;当P1.0、P1.1都为高电平时,LED按四个一组,轮流反复点亮;P1.0、P1.1、P1.2都为高电平时,8LED逐一点亮并反复循环。 二、设计目的 1. 进一步熟悉和掌握单片机的结构及工作原理。 2. 掌握单片机的接口技术及相关外围芯片的外特性,控制方法。 3. 通过课程设计,掌握以单片机核心的电路设计的基本方法和技术,了解表关电路参数 的计算方法。 4. 通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。 5. 通过完成
[单片机]
8051单片机进行8路<font color='red'>LED</font>模拟分支控制
LED洗墙灯及其基础参数介绍
   LED 洗墙灯又叫线型LED投光灯等等,因为其外形为长条形,也有人将之称为LED线条灯,主要也是用来做建筑装饰照明之用,还有用来勾勒大型建筑的轮廓,其技术参数与LED投光灯大体相似,相对於LED投光灯的圆形结构,LED洗墙灯的条形结构的散热装置显得更加好处理一点。      LED洗墙灯和护栏管有很多的相同点,让我们来对它的参数进行介绍:       1)电压:      LED洗墙灯的电压为220V,110V,24V,12V,几种,所以我们在选择 电源 时候就要注意相对应的电压.另外还有18V,36V,由于这两款变压器在市场上相对少,不好配变压器,故一般低压采用24V或12V。       2)工作温度:      因
[电源管理]
Microchip高性能USB、LCD及通用8位PIC系列再添12位ADC
12款新型PIC18单片机迎合需高分辨率模数转换功能的先进传感器设计,为外部模数转换器节省成本并化繁为简 全球领先的单片机和模拟半导体供应商——Microchip Technology Inc.(美国微芯科技公司)宣布推出12款全新的高性能、8位闪存单片机,其中包括该公司首款集成片上高速12位模数转换器外设的USB及LCD单片机系列。三个新产品系列共备有16种集成高分辨率片上模数转换器的高性能PIC18 单片机,扩展了Microchip通用PIC18F4523系列产品线并极大地丰富了客户的选择。 在这三个新产品系列中,PIC18F8723大容量存储器通用系列提供丰富的外设集以及高达10 MIPS的卓越性能;PIC18F4553
[新品]
如何合理挑选LED导热塑料
   LED照明 灯具 作为 照明 领域的后起之秀,在未来五年市场前景可观,并且表现出强劲的增长势头。根据 LED照明灯 具价格不断降低、性能不断提升的发展趋势,绝大多数 LED灯具 的全寿命周期的综合成本将在今后1-2年内明显低于传统灯具,成为主流的照明光源。   作为 LED灯 具的外壳,传统上会选用铝合金、陶瓷材料,而近两年来,新型材料导热塑料异军突起,逐渐为广大生产厂家所接受,成为备受瞩目的外壳材料。   总结起来,导热塑料具有以下几大优势:   1. 绝缘阻燃,安全性高。   2. 重量轻, 密度约为铝材的三分之二。   3. 加工成型方便,量产性好。   4. 无需二次加工,更绿色环保。   面对众多的导热塑料供应商
[电源管理]
步进电机的应用领域
  步进电机是一种特殊的电机,它的转动是以固定的步进角度为单位进行的。步进电机具有精度高、响应速度快、控制方便等优点,因此在许多领域得到了广泛的应用。本文将介绍步进电机的主要应用领域。   步进电机是一种将电脉冲信号转换成相应角位移或线位移的电动机。每输入一个脉冲信号,转子就转动一个角度或前进一步,其输出的角位移或线位移与输入的脉冲数成正比,转速与脉冲频率成正比。因此,步进电动机又称脉冲电动机。   步进电机主要应用在数控机床制造领域,之所以其主要应用在这个领域,是因为电机不需要A/D转换,能够直接将数字脉冲信号转化成为角位移,这正是数控机床设备所需要的,也是其它很多类型的电机无法达到的,所以步进电机可以说是数控机床最为理
[嵌入式]
韩国企业退出LCD的生产,对于国产LCD是否为契机?
近日,有消息称三星和 LG 在内的一些韩国企业宣布退出 LCD 的生产,这对于国产 LCD 来说,究竟意味着什么? 对此,TCL 创始人、董事长李东生在接受央视财经开展的“直击复工第一线”的采访中,给出了自己的看法。他表示,两家企业的退出原因,疫情仅仅是一个诱因,更多的是从全球产业结构调整的角度来考虑。韩国的这些企业并不是退出半导体显示产业,他们会更多集中资源在柔性显示产品技术、AMOLED 以及 OLED 方面。所以,对中国企业来讲,这既是机会也是挑战,机会就在于我们可以加快全球产业布局。 对于上述言论,有网友吐槽表示,韩系企业退出 LCD 面板行业,很可能是战略规划,就好比三星的有些价格竞争性的中低端手机用的是 BOE
[嵌入式]
韩国企业退出<font color='red'>LCD</font>的生产,对于国产<font color='red'>LCD</font>是否为契机?
8051单片机实战分析(以STC89C52RC为例) | 03 - LED流水灯
1 原理图 从图中不难看出,整个P2端口都接有LED,写代码时需要驱动整个P2端口。 2 代码 #include reg52.h //此文件中定义了单片机的一些特殊功能寄存器 #include intrins.h //因为要用到左右移函数,所以加入这个头文件 typedef unsigned int u16; //对数据类型进行声明定义 typedef unsigned char u8; #define led P2 //将P2口定义为led 后面就可以使用led代替P2口 /**********************************************************
[单片机]
8051单片机实战分析(以STC89C52RC为例) | 03 - <font color='red'>LED</font>流水灯
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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