新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于C8051F020单片机的汽车故障诊断仪的研究

基于C8051F020单片机的汽车故障诊断仪的研究

作者:时间:2009-02-11来源:网络收藏

串行总线接口电路

图 4 串行总线接口电路

  2.5 键盘显示及存储器电路

  本设计主键盘采用4X4键盘输入模块,其驱动模块采用的是SK5278,它是福州贝能科技有限公司推出的采用PIC内核的键盘控制器。该芯片采用4线串行接口,可与任何种类的接口;它具有按键有效指示输出,可用中断方式管理键盘;其行线X0~X3与列线Y0~Y3可构成4×4键盘矩阵;SK5278的16键键盘控制器内含去抖动处理电路,因而可直接输出键值,并采用串行方式与或微处理器进行接口。系统设计的功能键采用中段方式输入,整个工作流程通过不断的扫描按键的状态,判断是否有健按下,当有任意键按下时,即产生中段,CPU执行相应的中段子程序,若没有健按下时,继续扫描键盘的状态,直到有健按下,用键盘中断处理程序完成一切和用户之间的的信息交流。

  显示电路选用的OCMJ5X10是160×80点阵的中文图文液晶图形显示器模块。该模块的内部由于含有国标一级简体字库,使得汉字的显示异常方便;同时,该模块与的硬件接口除数据总线外,仅使用了REQ/BUSY两根握手信号线,简化了与单片机的硬件接口电路设计。上述特点对软件、硬件资源均十分紧张的单片机系统来说是十分重要的。

  由于诊断系统中将涉及大量的代码,传感器信息,执行起信息等一些数据信息,需要较大的存储空间。因此,系统扩展了一片大容量的8Mbit的FLASH存储器AT45DB081 。

  3、系统的软件设计

  本系统的软件采用模块化的设计方法,整个程序包括主程序、初始化程序、定时器中断程序、诊断协议程序、串行通讯程序、键盘显示程序、存储器读写程序。所有的程序均采用C语言编写,可以很方便的调试和下载程序代码。限于篇幅,本文只给出主程序的流程图,如图5所示。系统的主程序主要完成单片机系统的初始化、设置系统时钟和功能寄存器,调用键盘处理程序,完成不同的功能,如根据不同的按键转入相应的服务程序,完成不同的功能。

系统的软件设计流程图

图5系统的软件设计流程图

  3.1 硬件抗干扰设计

  (1) 系统设计中对电源电路及IC器件周围配置适当的去耦电容滤波,系统中电源地线、MCU外围电路地线、信号地线采用单点接地的方法可靠接地,以减少不等位电势的干扰。

  (2) 硬件滤波,此方法对串模干扰有很好的抑制作用,常用RC 低通滤波器接在一些低频信号输入电路中,可大大消弱高频干扰信号。

  (3) 印刷电路板设计时,数字电路与模拟电路隔离,数字的和模拟的仅在一点相连,有效地防止了数字电路对模信号的影响。

  (4) 为了防止电路模块间的相互干扰,在电路板的设计中采用金属机壳有效地屏蔽外界射频信号的干扰.

  3.2 软件抗干扰设计

  (1)数字滤波。在软件设计时,考虑了数字滤波程序的设计,有效地排除了随机干扰。

  (2)设置冗余指令和软件陷井。通过应用软件陷阱法和数据冗余法有效的抑制了由于外部干扰、震动或瞬间引起的系统瘫痪和程序跑飞。

  (3)软件看门狗。为防止程序运行进入死循环,而不能被软件陷井捕获到,在系统软件设计时,设计了“软件看门狗”程序,有效地防止了死循环造成的系统瘫痪。

  4、结论

  本文以单片机为核心开发了ECU,该能够实现参数测量,在线故障诊断和执行器测试等功能,具有结构简单、成本低、体积小和性能可靠等优点,经实验证明:该工作稳定,操作方便,抗干扰能力强。从而说明了该诊断仪软硬件设计比较合理,具有广阔的应用前景。是维修人员的地得力助手,完全具有生产应用的价值。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭