1. 硬件设计
1.1 总体方案的设计
本设计由核心元器件单片机AT89C51和外围电路部分组成。根据设计需要外围电路可划分为液位传感器、A/D转换器、键盘控制电路、报警器、晶振电路、复位电路、LED显示电路等。由它们来实现数据初始化、信号采集、数据传输、功能制定、结果显示和报警等功能。上述各个模块的具体功能如下:
液位传感器:对汽车油箱内液位的高低进行采集。
A/D转换器:对传感器采集到的模拟信号进行模数转换,并将转换后的数字信号提供给单片机AT89C51。
AT89C51:系统核心处理器件,接收A/D转换器输出的信号,通过调用内存储器中的相关程序和数据,对接收到的信号进行分析处理,并将处理结果送给显示器,同时单片机还控制显示模块和报警模块。
晶振电路:为单片机提供准确的信号源。本设计采用的晶振频率是12MHz。
复位电路:复位单片机,本设计中的复位电路采用上电自动复位方式。
LED显示电路:准确及时地显示油箱所剩油量。
键盘控制电路:可根据个人需要增大或减小油量报警值,实现人机“对话”,同时还有保持油量报警值的功能。
报警电路:当油箱油量超出预设报警值的时,启动声音和灯光报警系统。
本设计的系统结构框图如图1所示。
图1 系统结构框图
1.2 单片机的选择
1.2.1 单片机简介及主要功能
本设计所实现的主要功能是报警功能和显示功能。其中报警功能要及时,显示功能要准确,这在数据处理和储存上的要求并不是特别高。只是需要大量的程序控制,所以选择的单片机要有足够大的ROM和RAM,鉴于以上要求本设计采用MCS-51单片机中的AT89C51单片机来实现。
AT89C51的主要功能:4kb的片内Flash闪速存储器,128字节内部RAM,32 个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内具有振荡器和时钟电路。它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器技术,并且其指令系统和输出引脚都与MSC—51兼容。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式CPU被停止工作,但是允许RAM,定时/计数器, 中断系统和串行通信口照常工作。掉电方式保存RAM中的内容,但是振荡器停止工作并禁止其它所有部件工作直至对下一个硬件进行复位操作。片内置有通用8位中央处理器(CPU)和FLASH存储单元,片内的存储器允许在系统内改编程序或用常规的非易失性存储器编程。因此,AT89C51是一种功能强大、灵活性高且价格合理的单片机,可方便的应用于各种控制领域。
单片机的硬件结构图如图2所示。
图2 AT89C51单片机的硬件结构图
1.2.2 单片机的部分引脚功能
MCS-51系列中各型号芯片的引脚是互相兼容的。制造工艺为HMOS的MCS-51的单片机都采用40只引脚的双列直插封装(DIP)方式[2]。AT89C51的引脚如图3所示。
VCC:供电电压。
GND:接地。
P0口:是个8位漏级开路双向I/O口,每脚可吸收8个LSTTL门电流。P0口能够用于外部程序数据存储器,它可作为数据/地址的低八位。当FIASH编程时,原码输入口为P0,当FIASH进行校验时,原码输出口为P0,这时P0外部需要接上拉电阻[3]。
图3 AT89C51引脚图
P1口:是内部提供上拉电阻的8位双向I/O口,P1口缓冲器能够接收输出4个TSTTL门电流。当FLASH编程和校验时,P1口可接收低八位地址。
P2口:是内部提供上拉电阻的8位双向I/O口,P2口缓冲器能够接收输出4个TSTTL门电流。用于外部程序存储器或16位地址外部数据存储器进行存取时,地址的高八位由P2口输出。当FLASH编程和校验时P2口接收高八位地址信号和控制信号。 51单片机汽车油量检测报警器的设计+仿真图+源码(2):http://www.751com.cn/zidonghua/lunwen_912.html