使用stc89c52,lcd12864,A3144E,DS1302,来设计自行车测速
时间: 2024-05-22 14:13:10 浏览: 82
系统。
步骤:
1. 连接硬件
将DS1302连接到P1口,A3144E连接到P3.2口,LCD12864连接到P2口。
2. 初始化DS1302和LCD12864
在程序开头使用DS1302_Init()函数和LCD12864_Init()函数初始化DS1302和LCD12864。
3. 读取速度
使用A3144E检测自行车轮子转动时的磁场变化,并通过计算得到速度值。
4. 显示速度
在LCD12864上显示速度值。
5. 增加计时功能
使用DS1302实现计时功能,并在LCD12864上显示计时时间。
6. 循环执行
将以上步骤组合在一个while循环中,使程序可以循环执行,实现实时测速和计时功能。
代码示例:
#include <reg52.h>
#include <intrins.h>
#include "lcd12864.h"
#include "ds1302.h"
#define A3144E P3_2
unsigned char speed = 0;
unsigned char last_speed = 0;
unsigned char time[8] = {0};
void delay(unsigned int t)
{
while(t--);
}
void main()
{
LCD12864_Init();
DS1302_Init();
while(1)
{
//测速
if(A3144E == 0)
{
delay(200); //消除抖动
if(A3144E == 0)
{
speed++;
}
}
if(speed != last_speed)
{
last_speed = speed;
LCD12864_Clear();
LCD12864_ShowString(0,0,"Speed:");
LCD12864_ShowNum(40,0,speed,3);
}
//计时
DS1302_ReadTime(time);
LCD12864_ShowString(0,1,"Time:");
LCD12864_ShowNum(40,1,time[2],2);
LCD12864_ShowString(55,1,":");
LCD12864_ShowNum(65,1,time[1],2);
LCD12864_ShowString(80,1,":");
LCD12864_ShowNum(90,1,time[0],2);
//重置速度和计时
if(P3_3 == 0) //按下复位按钮
{
speed = 0;
last_speed = 0;
time[0] = 0;
time[1] = 0;
time[2] = 0;
DS1302_SetTime(time);
}
}
}
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![application/x-zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![7z](https://img-home.csdnimg.cn/images/20241231044736.png)
![doc](https://img-home.csdnimg.cn/images/20241231044833.png)