霍尔传感器输出的信号经AT89C51的INT0口输入并存储在内部ROM 中,使按键模块与单片机的P1口相连,通过按键设定汽车超速报警值,汽车的报警速度值通过键盘设置并存储起来。然后通过单片机检测霍尔传感器输出的信息,计算出汽车当前的速度V,将汽车实时的速度与设定的报警速度值相比较,当V≥Vm时,对应的黄色LED指示灯和蜂鸣器进行提示,同时LCD显示模块显示当前速度和设定的报警速度,从而达到提醒驾驶员注意行车速度的目的。
2. 硬件设计
2.1单片机的选择
2.1.1单片机简介及主要功能
本设计所实现的主要功能是报警功能和显示功能。其中报警功能要及时,显示功能要准确,这在数据处理和储存上的要求并不是特别高。只是需要大量的程序控制,所以选择的单片机要有足够大的ROM和RAM,鉴于以上要求本设计采用AT89C51单片机来实现。
单片机的内部功能如图2所示
图2 AT89C51单片机的硬件结构图
AT89C51的主要功能:4k片内 Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器技术,而且其输出引脚和指令系统都与MSC51兼容。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。片内置通用8位中央处理器(CPU)和FLASH存储单元,片内的存储器允许在系统内改编程序或用常规的非易失性存储器编程。因此,AT89C51是一种功能强、灵活性高且价格合理的单片机,可方便的应用于各种控制。
2.1.2单片机的部分引脚功能
MCS-51系列中各型号芯片的引脚是互相兼容的。制造工艺为HMOS的MCS-51的单片机都采用40只引脚的双列直插封装(DIP)方式[1]。AT89C51的引脚如图3所示。
VCC:供电电压GND:接地 图3 AT89C51的引脚图
P0口:是个8位漏极开路双向I/O口,每脚可吸收8个LSTTL门电流。P0口能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻[2]。
P1口:是内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4个TSTTL门电流。在FLASH的编程及校验时,P1口当作低八位地址的接收。
P2口:是具有内部能够提供上拉电阻的8位双向I/O口,P2口缓冲器能够接收和输出4个TSTTL门电流。用于外部程序存储器或16位地址外部数据存储器进行存取时,地址的高八位由P2口输出。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:是8个带有内部上拉电阻的双向I/O端口,可接收输出4个TSTTL门电流。 P3口也可作为AT89C51一些特殊功能端口,即P3.0 RXD为串行输入口;P3.1 TXD为串行输出口; P3.2 /INT0为外部中断0; P3.3 /INT1为外部中断1 ;P3.4 T0为记时器0外部输入; P3.5 T1为记时器1外部输入; P3.6 /WR为外部数据存储器的写选通; P3.7 /RD为外部数据存储器的读选通。 P3口同时为是闪烁编程及编程校验接收的一些控制信号。
RST:单片机复位引脚。
ALE/PROG:当访问外部存储器时,地址锁存所允许的输出电平用作锁存地址的地址字节。在FLASH编程期间,此引脚用于输入编程脉冲。在一般情况下,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6[3]。因此它可用作对外部输出的脉冲或用于定时目的。 AT89C51单片机的汽车超速报警器设计+电路图(3):http://www.751com.cn/zidonghua/lunwen_4652.html