中北大学2009届毕业设计说明书
系统要求显示电路通过数字显示屏向驾驶员实时提供轮胎的状态信息,其核心器件选用的是北京青云创新科技公司的通用仪器仪表液晶显示模块LCM046。该模块为 4 位 8 段带小数点液晶显示,3~4 线串行接口,显示清晰,稳定可靠。其低功耗特性特别适用于电池供电系统,在显示状态下功耗为 50μA(典型值),省电模式下<1μA。表 3.8 给出了 LCM046 的各引脚功能说明。当模块工作电压>3.3V 时,VLCD 脚与 VDD 脚间需要串接一个 50K 电位器调节,在 5V 时一般为 36KΩ;当模块工作电压为 3.3V 以下时,VLCD 脚与 VDD 短接后再接系统电源即可。
表3.8 LCM046 引脚说明
序号 1 2 3 4 5 6 7 8 9 10 引脚 /CS /RD /WR DATA GND VLCD VDD IRQ BZ /BZ 功能说明 模块片选控制,内部上拉 模块数据读出控制线,内部上拉,不用可不接 模块数据/指令写入控制线,内部上拉 数据输入/输出,内部上拉 接地线 LCD 屏工作电压调整,可调整视角对比度 模块正电源 定时器输出,集电极开路输出,不用可不接 压电陶瓷蜂鸣片驱动正极,不用可不接 压电陶瓷蜂鸣片驱动负极,不用可不接 输出 输出 输入 输入 输入/输出 输入 输入 输入 输入/输出 3.5 系统功耗设计
系统功耗设计上最大的问题是必须满足在封闭环境下的轮胎模块能够长时间的可靠工作。从中国普遍不佳的路况和轮胎缺乏保养的基本现状来看,业内人士认为国内汽车轮胎的使用寿命一般在 2~3 年,如果采用较大容量的电池供电与低的系统功耗相结合,可以满足这一要求。轮胎模块采用一片供电电压为3V 的纽扣式锂电池供电,其重量轻、体积小的特点符合系统设计要求。安装在驾驶室内的系统主机由于无需像轮胎模块那样在封闭环境下工作,其工作电源的提供可以有多种选择。考虑到系统的适用性,兼顾了车载供电和电池供电。系统主机电路的工作电压为 5V,采用 MC7805 三端稳压芯片,既可以由一节 9V 电池供电,也可不使用电池而接入汽车电瓶的 12V 标准电压供电。图 3.9 是生产厂商提供的 MC7805 典型电路。但在实际应用中,多采用图 3.10 的电路,在电压输入端加入大容量有极性电解电容。C1~C4 为滤波电容,大电容滤除低频干扰,小电
第 24 页 共 43 页
中北大学2009届毕业设计说明书
容滤除高频干扰,这样可以使电压输出更加稳定,纹波更小。
使用三端稳压芯片时,需要注意输入的最大直流电压不能大于集成稳压器的最大输入电压,MC7805 的最大输入电压为 35V,否则容易击穿稳压器;但同时又不能小于稳压器的最小输入电压,否则将引起稳压器输出电压纹波变大,导致稳压性能变差。在稳压器使用中也不能超出其能够输出的最大电流,否则将烧毁稳压器。
图 3.9 MC7805 典型电路
这在应用中需要有目的地选择稳压器输出电流,7800系列为 1.5A。稳压器内部尽管有芯片过热、过流保护,但使用时间过长仍然会发热,所以为安全起见,一般要加一定面积的散热片。
第 25 页 共 43 页
中北大学2009届毕业设计说明书
图 3.10 系统主机电源电路图
3.6 系统硬件设计的抗干扰技术
系统运行的可靠性及抗干扰能力是电子产品质量的一个重要衡量标准,尤其是在电子产品的硬件设计中,由于产品定型的需要,硬件设计不具有随意更改性,因此,在电子产品的设计阶段必须重视系统可靠性及抗干扰问题。
系统运行的可靠性是一个不容忽视的问题。在实际的系统应用中,微控制器在程序运行时极有可能因受到干扰而发生程序“跑飞”现象。为了克服这种情况,在可能的情况下需要对系统的软硬件都进行相应的处理。对于轮胎模块的微控制器 MC68HC908RF2,其外部复位引脚(RST )连接到传感器 MPXY8020A 的复位信号输出引脚(RST )上。传感器通过内部低频振荡器能够按时向微控制器发出复位信号,使轮胎模块进行周期性的复位操作,保证长期可靠地运行。对于主机模块的微控制器 MC68HC908KX8,其外部复位功能与 OSC2 共用。在引脚 OSC2 接入外部晶体振荡器时,外部复位功能失效。
第 26 页 共 43 页
中北大学2009届毕业设计说明书
4 汽车轮胎气压实时监测系统的软件设计
本文上一章已经介绍了系统硬件的设计过程,而要完整地实现汽车轮胎爆胎预警系统的各项功能,使其具有智能化的测量监控功能,必须要有相应的系统监控软件来实现。本章主要结合 MC68HC908 系列微控制器的程序开发特点来介绍系统软件的设计工作。 4.1 系统软件设计
系统软件的设计就是为了在硬件电路基础上实现系统的应用智能化,系统软件设计的质量直接关系到系统技术性能的好坏。在汽车轮胎爆胎预警系统的软件设计中,必须要考虑到系统应用的实际情况和具体技术性能要求,才能设计出符合现场要求的应用系统。
汽车轮胎爆胎预警系统的软件设计根据硬件模块划分,也分为轮胎模块软件设计和主机模块软件设计两大部分,为了开发的便利,其中双方涉及到数据无线收发功能的部分又可以合为无线收发模块。图 4.1 是系统软件的功能框图。
轮胎模监控主程序 主机模块监控主程序 测量程序 数据处理 发射控制 接收控制 数据处理 显示程序 报警门限
图 4.1 系统软件功能框图
从图中可以看出,轮胎模块的软件需要具有 3 种主要功能:测量、处理数据和发射。轮胎模块是由一块锂电池供电,锂电池的电池容量通常为 200~300mAH,因此需要综合考虑效率与时间,以得到高效率的算法,才能保证系统长期有效地可靠运行。主机模块虽然没有严格的耗能标准,但接收效率和监控算
法仍很重要,因为好的算法可以使主机模块电池使用寿命更长[17]。 4.2 MC68HC908 系列微控制器的程序开发
Freescale(原 Motorola 半导体部)公司的 MC68HC908 系列微控制器以其
第 27 页 共 43 页
中北大学2009届毕业设计说明书
质量可靠、性能优越等特点在微控制器市场上独树一帜,但其在存储器结构、汇编语言语句格式以及程序架构上都有着自己的鲜明特点。所以,在采用 MCS-51 指令集的微控制器大行其道的中国市场,MC68HC908 系列微控制器还并不普及,在软件开发过程中还有很多问题需要注意。 4.2.1 汇编程序框架结构
从根本上来看,微控制器至少由 CPU、存储器和 I/O 端口这三个部分构成,它们能以不同的方式来组合,因而形成了微控制器不同的体系结构。存储器有程序存储器与数据存储器,一般情况下前者使用 ROM,后者使用 RAM,它们与 CPU 之间的连接通常有两种方案。 4.2.2 汇编程序框架结构
为使源代码清晰、易读,便于维护,在编写一个完整的 MC68HC908 源程序时,通常需要按照一定的框架结构来实现。这里以 MC68HC908RF2 为例,说明其可以在微控制器上运行的完整源程序代码范例:
RamStart EQU $0080 ;MC68HC908RF2 的 RAM 起始地址 RomStart EQU $7800 ;Flash 程序存储器起始地址 RstVector EQU $FFFE ;复位向量地址 $Include` rk2regs.inc` ;寄存器头文件
ORG RamStart ; 在 RAM 区定义程序变量
Ram_Data ds 2 ; 从0080H定义2B (16位)RAM 空间给 Ram_data ORG RomStart ; 用户应用程序开始
INIT_PRO: RSP ; 初始化子程序,首先堆栈复位 CLRA ; 00H→A,累加器 A 清零
CLRX ; 00H→X,变址寄存器低 8 位 X 清零
MOV #$01,CONFIG ; 禁止 COP 复位,关闭看门狗定时器 LDA #0FFH ; FFH→A STA Ram_Data ; (A)→Ram_Data 低 8 位(0081H),初始化 RAM STA Ram_Data+1 ; (A)→Ram_Data 低 8 位(0081H),初始化 RAM RTS ; 子程序返回
MAIN: BSR INIT_PRO ; 主程序开始,跳到初始化子程序
...... ; 其它主程序指令
AGAIN: ...... ; 主循环体
JMP AGAIN ; 构成主循环,使微控制器连续不断地运行
ORG RstVector ; 复位向量定义
dw MAIN ; 复位向量指向 MAIN 地址,程序执行起始地址
(1) 常量初始化
将标志性地址如 RAM 起始地址和 Flash 起始地址等初始化为字符常量[18],
第 28 页 共 43 页