基于CAN总线的汽车仪表系统设计方案

2019-11-28 14:21发布

<p>系统MCU的选型在整个方案设计中至关重要,是主要功能实现的关键元件,并直接关系到外围元器件的配置要求和整体方案的可实现性。系统性能的稳定性、功能需求的可靠性以及市场定位要求和合理的经济性都是在MCU方案选择中必须考虑的。选择的MCU过于昂贵,即使性能良好也会因为价格的原因而失去市场;系统方案满足实验室台架试验,其价格也比较合理,但却不能满足汽车电气设备基本技术条件(QC门禅13一2002)中的振动、高低温、耐酸等试验,这同样会使你的开发方案失去价值。所以在进行开发方案系统设计时,选择适合本系统的MCU是开发方案成功的重要一步。如今,嵌入式应用技术在过去的20年里得到了迅猛的发展,世界上很多单片机公司都根据汽车的特定环境推出了各种不同性能的MCU 。其中在汽车领域内比较领先的有Freeseale、Philips,其他单片机公司如:microchip、atmel、fujitsu、ti、NEC、ST等也相继开发除了适合汽车工作环境的单片机。本系统MCU选择FREESCAI石公司的16位单片MC9512H128。Freescafe(飞思卡尔)半导体公司(原MOTOROLA公司半导体产品部)是世界上最大的单片机供应商。其单片机产品的技术根基可追溯到1974年的8位处理器MC6800和后来的MC6801,使用HMOS工艺,功耗高。最早出现CMOS工艺的单片机是MC14685,后来出现了HCMOS(高速CMOS)工艺的单片机MC68HC05,产量突破了20亿片,是世界上产量最高的单片机。其后又推出了HCS05和HCLDS两个系列的单片机,于2000年后推出了低功耗、低成本、高性能的8位单片机有Hc08、MCSOS、HCn,其系列品种繁多、片内资源丰富,应用范围广泛,可靠性高,抗干扰能力强。</p><br> <br> <p><img id="aimg_s8jb8" onclick="zoom(this, this.src, 0, 0, 0)" class="zoom" src="data/attach/1911/btoqdcr97qphm7jzdg8lrg2oao83sx7j.jpg" onmouseover="img_onmouseoverfunc(this)" lazyloadthumb="1" border="0" alt=""></p><br> <br> <br> <br> <p><br></p>
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
mzxcz
1楼-- · 2019-11-28 19:47
 精彩回答 2  元偷偷看……
脑洞大赛19
2楼-- · 2019-11-28 22:21
例如在初始化阶段对断点逻辑进行设置,使它在遇到错误地址时产生SWI,SWI服务历程可以调用安排在EEPROM中的补丁程序,替代受损的指令序列,最后跳转到错误指令序列后面继续运行。
H128集成了丰富的外围资源除包括闪速存储器FLASH和内部RAM以外,该芯片还集成多种功能模块。其各功能模块分别与外围电路接口对应,每个功能模块都对应一个系统功能需求,并与外围电路和元器件相对应,是选型的重要参考因素。主要集成的功能模块:
》26位的epuzZ内核 (starCore);
》单线BDM调试模块;
》具有可选16位或8位总线扩展能力;
》集成CAN控制器,带2路CAN控制接口,支持CAN2.OA旧协议;
》’8路10位精度的习D转换通道;
》2路PWM(脉宽调制)输出;
》6KB的RAM,128KB的FLASH,ZKB的片内EEPROM;
》内部集成的供单片机核心部分工作的SV电源;
》丰富的刀O资源,最多可利用的刀0引脚达61个;
》16位主计数器,7位分频计数器;
》可驱动32个前极和4个背极LCD;
》包括同步串行设备接口(SPI)和一步串行通信接口(Scl);
》6路步进电机驱动模块。
7vyydyfwef
3楼-- · 2019-11-28 23:28
4.1.1MSCAN控制器
H128片内具有可扩展的控制器区域网络MSCAN(Motorolascalablecontrofler areanetwort)模块,是为16位MCU设计的通用CAN通信模块,它和CAN2.0川2.0B完全兼容,实现CAN控制器的功能。MSCAN控制器和发动机、变速箱等底盘动力传动装置的CAN总线节点相连,实现CAN总线数据的接收与发送工作卿l。H128中有两路CAN总线接口,分别为RXCANO、TXCANO和RXCANI、TXCANI。其中CANO口可定义为CAN通信接口,也可定义为J1850通信接口,CANI除了定义为cAN端口外也可定义为IZc端口。双路CAN接口使得仪表不仅作为CAN总线上的一个节点,同样也可以作为一个中继器,实现不同网络协议之间的互连。MSCAN模块结构图如

MSCAN模块具有如下特点:
1)模块化设计结构;
2)符合CAN2.OA/B标准:支持标准帧和扩展数据帧,最多8个BYTE的数据长度,支持远程请求帧,高达IMbps的可编程通信速率;
3)4个具有先进先出FIFO(first·  infirstout)结构的缓冲区;
4)3个具有局部优先级的发送器;
5)灵活设置可屏蔽标识符  (maskableidentifierfilter)的工作方式,可以配置2个32位过滤码(适用于扩展模式)、4个16位过滤码或6个8位过滤码;
6)具有内置低通滤波的远端唤醒功能;
7)可编程为方便调试的自环工作模式,即自发、自收;
8)MSCAN模块提供了使用方便的自钡叮模式,用户可以在不加任何外围电路的情况下,是CAN的发送和接收两个引脚在芯片内部相连,用户可以编程测试CAN模块的正常使用。MSCAN模块通过引脚CANT和CANR和驱动器连接,在 CAN总线上,CANT输出引脚代表的CAN总线上的逻辑电平,0表示显性状态,输出1表示隐性状态。
siuhdwqiuhd
4楼-- · 2019-11-29 04:27
4.1.A/D转换模块
H128内置一个8路10位线性逐次逼近A/D转换模块,该模块特性如下:
1)10位数字量转换仅需75;
2)采样缓冲放大器
3)可编程采样时间
4)数据左/右对齐方式,无符号/有符号结果
5)外部触发转换通道
6)转换完成中断
7)模拟/数字量复用通道;
8)1一8位顺序转换长度
9)多通道扫描,连续转化模式
A/D模块内部可分为三个部分:IP总线接口、转换模式控制寄存器/寄存器列表、自定义模拟量。IP总线接口负责该模块与总线的连接,实现A/D模块和通用I/O的目的。转换模式控制寄存器列表中有控制该模块的所有寄存器,自定义模拟量负责模拟量到数字量的转换。A/D转换模块没有分频机制,最大转换时钟频率为 ZMHZ,最小转换时钟为5OOKHZ,所以必须是经过分频后的转换始终频率处于两者之间,可能得不到正确的结果。转换时间可用以下公式来计算:


4.1.3串行外设接口SPI
在一个单片机系统中,MCU除了进行控制数据传送外,还需要与外围器件进行数据交换。虽然并行接口传输速率比串行接口要快,但其占用了太多的硬件资源,而且连线复杂。所以为了简化系统,现在各厂家推出的芯片中大多都带有串行数据接口。
SPI(serialperipheralinterfaee)是一种高速高效率的同步串行技术,这种接口技术主要用于MCU与外部接口芯片交换数据,这在Freesca1e(原Motorola)单片机中已经是一个标准模块,也逐渐成为一种工业接口标准。SPI接口常用于主从分布系统,一个标准的SPI系统包括一个MCU和几个不同的外部设备。SPI使用4条线,具体为:

1)串行时钟线 SCLK(SerialCloCk)。SCLK是主机与从机之间数据传输的同步信号。对于主机来说,SCLK是时钟输出引脚,而对于从机来说,SCLK就是时钟输出引脚。
2)主机输入、从机输出数据线  MISO(masterin/slaveout).MISO是SPI模块的两根串行数据之一,在全双工操作模式下,SPI主机的MISO被连接到从机的MISO,这样,数据由从机传到主机。仅在SPI设备配置成主机模式时,才可以由M工50接受数据。
3)主机输出、从机输入数据线  MOSI(Masterout/slavein)。MOSI是Spl模块的另外一根串行数据线。
4)低电平有效的从机选择线 55(slaveseleet)。55在主机和从机模式中具有不用的功能。从机模式下,SS是依次数据传输开始前允许SPI工作的片选信号;主机模式下,SS可以置位 MODF标志位,保证一个系统只有一个SPI作为主机。SPI工作原理如同一个16位的分布式移位寄存器,一半在单片机里面,一半在外设中。当SPI工作时,通过串行时钟线的同步信号,循环移位8位,从而实现单片机与外设的数据交换。工作原理如图4一3所示:


leyun
5楼-- · 2019-11-29 10:20
4.1.4PWM脉宽调制模块
PWM(pulsewidthmodulate)即脉宽调制,脉宽调制波是一种可用程序来控制波形占空比、周期、相位的波形。H128单片机内部集成了2路PWM输出通道,在精度要求不高的情况下,PWM模块可以当作单片机的D/A口模块使用,从而降低系统成本Isl]。本系统正是利用了这一特性来改变仪表背光灯的明暗度,其原理如图4一4:


HCs12增强型定时器和HC12定时器一样,有8个输出比较瑜入捕捉通道,通过选择n0s寄存器的Iosx位可以在输出比较和输入捕捉的功能之间切换(见图4一5和图4一6)。



普通输入通道中带有一个捕捉寄存器用来记录管脚上电平变化时自由计数器的锁存值。在带缓冲的输入捕捉通道中,除了带有捕捉寄存器之外,还有一个保持寄存器,可以在不中断的条件下连续记录两次自由计数器的值。脉冲累加器与定时器中4个带缓冲的通道相连,通过检测相应管脚上的有效边缘来记录脉冲的个数。相邻的两个8位脉冲累加计数器可以联成为一个16位的脉冲计数器,用户可以选择4个8位或者2个16位累加计数器。定时器最常见的用法是用于内部定时和外部脉冲计数,脉冲累加器有两种工作模式:锁存方式和队列方式。
锁存方式:当模数计数器减为0、向模数计数器写入$仪刃0或写强制锁存位ICLA时,脉冲累加计数器将锁存到相应通道的保持寄存器中,并将累加计数器清零。
队列方式:当读取某通道保持寄存器的值时,相应的脉冲累加器的值将被写入该保持寄存器中并将脉冲累加器清零。

4.1.6.LCD接口模块

H128内部带有笔段式LCD驱动模块,可以驱动32个前极和4个背极,所有产生的波形均由片内的充电泵提供,不需采用外部元器件脚l。有4个1/0端口BPO一BP3专门用来驱动背极,其他32个前极驱动引脚为复用端口,从FPO一FP27,PT4一PT7。当LCD驱动模块禁止时,LCD显示将被关闭,所有的前极和后极驱动电压都为VDD,梯形电阻结构也将不在和VDD相连,以此来降低功耗。一般根据需要多少背极驱动来设置LCD输出波形的占空比,可以有三种设置方法:

1)静态占空比—仅使用BPO
2)1/3占空比—使用BPO、BPI和BPZ
3)1/4占空比—使用BPO、BPI、BPZ和BP3

当LCD驱动模块使能后,背极引脚就会按照设定好的占空比输出背极波形。背极波形是周期的。

4.1.7步进电机接口模块

H128内部集成了6个步专注电机驱动模块,无须在外围电路增加步进电机驱动芯片,是目前为止集成在芯片上驱动步进电机最多的汽车仪表芯片之一。其片内有单独的步进电机电源驱动模块,每路驱动两个步进电机。对应的引脚分别为PUO一PU7,PVO一PV7,PWO一Pw7,通过改变各引脚中的电平高低和频率来驱动步进电机按方向和速度运转。

4.1.8内部时钟生成模块和实时时钟

HCS12系列毗U具有内部时钟生成模块ICG.,可以不利用外部器件就可以为MCU产生稳定的时钟源,精度可达到士3.5%。内部时钟发生器具有可编程的时钟输出,同时可以选择外部时钟发生器,通过软件可选择总线时钟为内部或者外部时钟。HCS12系列MCU还具有实时时钟RTC模块,它可以提供实时时钟与日历功能,并具有年、月和日自动调整的作用,此外还可产生闹钟中断、周期性中断和0.015秒表记时中断。还可以根据闰年自动调整日历功能,其他中断包括报警中断、周期性中断和一个记时定时器。

4.1.9与其他开发方案的比较

由于51单片机在我国的普及与广泛应用,大多数的项目工程师都对51单片机的结构和性能非常熟悉。采用51单片机作为MCU,然后增加一个CAN控制器(如sJA10加)也可以组成一个CAN的节点,即51单片机+CAN控制器的模式。采用这种方式的特点是其结构简单易懂,开发费用比较低廉,大多数学生也可以有条件进行CAN节点的开发。其缺点是51单片机没有经过汽车上相关环境性能的试验,对于突发性的环境,会出现错误;同时,51单片机的珊口资源相对较少,需要扩充相当数量的外围电路,如多通道周D转换芯片,步进电机的驱动芯片,LCD的驱动芯片等等,致使外围电路结构复杂,工艺难度增加,性能也会相对降低,价格成本也比较昂贵脚]。也有部分在汽车仪表上使用的芯片如MICR0eHxP的PxC16F946系列PHILIPS的P8X591系列,FUJISTU公司的MB9()F系列的和Tl公司的TMS32OLF系列等,针对本方案的功能需求,也都存在着资源相对不足的问题。

一周热门 更多>