51单片机自行车码表 速度里程计霍尔测速模拟电机设计

一、系统方案
本设计采用51单片机作为主控器,霍尔测速,数码管显示速度及里程数。
在这里插入图片描述

二、硬件设计
原理图如下:
在这里插入图片描述

三、单片机软件设计
1、首先是系统初始化
void init()
{
IT0=1; //INT0负跳变触发
TMOD=0x01;//定时器工作于方式1
TH0=0x3c; //50ms
TL0=0xb0;
EA=1; //CPU开中断总允许
ET0=1;//开定时中断
EX0=1;//开外部INTO中断
TR0=1;//启动定时
}
2、数码管显示程序
void display()
{

rclk=0;

	senddata_74595(tab[Mileage%1000/100]);
  senddata_74595(tab[Mileage%10000/1000]);
	senddata_74595(tab[Mileage%100000/10000]);
	senddata_74595(tab[Mileage%1000000/100000]|0x80);
  senddata_74595(tab[Mileage/1000000]);
	
	senddata_74595(tab[Velocity%10]);
  senddata_74595(tab[Velocity%100/10]);
	senddata_74595(tab[Velocity/100]);


rclk=1;	

}

3、测速程序
void time0() interrupt 1
{
uchar m;
TH0=0x3c;
TL0=0xb0; //50ms
m++;
if(m>=10)
{
m=0;
Mileage=Mileage+Velocity500/36; //里程m=速度km/h1000*5/3.6
Velocity=count/5;//将100ms内的脉冲数
count=0;
}
}
4、核心算法程序
void main()
{
init();

while(1)
{
	display();
}

}
四、 proteus仿真设计
Proteus软件是一款应用比较广泛的工具,它可以在没有硬件平台的基础上通过自身的软件仿真出硬件平台的运行情况,这样就可以通过软件仿真来验证我们设计的方案有没有问题,如果有问题,可以重新选择器件,连接器件,直到达到我们设定的目的,避免我们搭建实物的时候,如果当初选择的方案有问题,我们器件都已经焊接好了,再去卸载下去,再去焊接新的方案的器件,测试,这样会浪费人力和物力,也给开发者带来一定困惑,Proteus仿真软件就很好的解决这个问题,我们在设计之初,就使用该软件进行模拟仿真,测试,选择满足我们设计的最优方案。最后根据测试没问题的仿真图纸,焊接实物,调试,最终完成本设计的作品。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bbxyliyang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值