由此可知,车轮转动一圈,霍尔电路只能导通一次,输出一个脉冲。这样只需测出车轮的周长,并利用单片机记录时间内脉冲变化的次数,就可以计算出汽车的速度和走过的路程,计算如下。
设汽车单位时间车轮转动圈数为num
汽车单位时间行驶路程为mile(m)
汽车车速为speed(km/h)
汽车车轮周长为cricle(m)
mile=num*cricle;
speed=num*cricle*3600/1000;
3。3存储电路设计
AT24C02是断电不丢失数据的串行EEPROM芯片,该芯片的存储容量为2KB(256*8Bit)。可以反复擦写十万次以上,芯片里的数据可保存100年。
AT24C02的引脚功能简绍如下:
A0~A2为可编程地址输入端,可在同一系统中接8块该芯片,芯片地址由A0~A2的值决定,即从000~111。
VSS为电源地引脚,接0V电平GND。
SDA串行数据输入/输出端。里程表系统中接STC89C52RC单片机P3^1口。
SCK串行时钟输入端。里程表系统中接STC89C52RC单片机P3^0口。
WP写保护端口。作用是保护硬件数据。该引脚接高电平表示只能对该芯片进行读操作而不能改变芯片里的数据,接低电平表示可以对该芯片进行读和写的操作。本系统需要对该芯片进行读和写的操作,因此在里程表系统中接0V电平GND。
VCC电源正端。接5V电平VCC引脚。
图3。4存储器接线图
在该里程表系统中,SDA和SCK两个引脚需要接一个5K左右的上拉电阻,以保证不会出现数据的错误读写。A0~A2和WP引脚直接接GND引脚,即该芯片在本系统中的地址为000,而且可以对该芯片进行读和写操作,与单片机的接口如图3。4所示。
3。4按键电路设计
单片机上电后各I/O口为高电平,当键按下后,与按键相连的I/O口电平被拉低,电路如图3。5所示。
图3。5按键电路
因为本系统中需要调节的信息较多,共设计了6个独立按键来实现相应功能,各按键功能简述如下。
Key1: 复位按钮。短按Key1键,单次里程清零;长按Key1键(约5秒),总里程清零
Key2:按一次Key2键,显示速度和单次里程;按两下Key2键,显示时间;
按三次Key2键,显示车轮周长和报警速度值;按四下Key2键,返回初始
状态,显示速度和总里程,再按以此循环文献综述
Key3:显示时间时,按一下Key3键,时间秒值可以调整,按两次Key3键,时间分值可以调整,以此类推;当显示车轮周长和报警速度值,按一下Key3键,可以调整车轮周长,按两下Key3键,可以调整报警速度值,以此循环。
Key4:当时间、车轮周长和报警速度值可以调整时,按一次Key4键,相应值加一。
Key5: 当时间、车轮周长和报警速度值可以调整时,按一次Key5键,相应值减一。
Key6: 按一次背光亮,按两次循环显示,按三次背光灭,按四次停止循环显示,再按以此循环。
3。5显示电路设计
在本次设计中所用的显示器为LCD1602。由LCD1602显示器组成的显示单元具有显示内容多,人机界面友好、更省电,具有控制简单,使用单片机接口少等优点,因此本次设计采用LCD1602液晶显示屏,能够实时的显示里程速度等信息。
LCD显示器的段选码都由单片机的P1口连接控制,连接电路如图3。6所示。