-
-
-
skywind001 | 当前状态:离线
总积分:57 2025年可用积分:0
注册时间: 2007-03-31
最后登录时间: 2007-04-04
-
-
求助高手修改51单片机控制测速的程序
skywind001 发表于 2007/3/31 20:13:13 1443 查看 0 回复 [上一主题] [下一主题]
手机阅读
#include<reg51.h>
sbit SHURU =P1^0; /* 这是输入引脚 */
/* 三个选择引脚 */
sbit CHOSE1=P2^0;
sbit CHOSE2=P2^1;
sbit CHOSE3=P2^2;
int time=0;
/* 定义中断 */
void timer(void)interrupt 1
{ time=time+1;
TH0=0xFE;
TL0=0x0C;
}
float sudu(unsigned int n) /*计算速度的公式*/
{ float s;
s=n*2; /*1毫秒走的路程,2为假设的距离*/
float timers;
timers=time*0.0001;
float v;
v=s/timers;
return(v);
}
/* 主函数 */
main()
{ TMOD=0x01;
TH0=0xFE;
TL0=0x0C;
TR0=1;
ET0=1;
EA=1;
unsigned int n;
n=0;
/* unsigned int timers;
timers=0;
float v;
v=0; */ /*初始化原变量*/
/* 无限循环 */
while(1)
{
/*if 引导在50毫秒是计算一个速度*/
if (SHURU==1&&time!==50)
{n=n+1;
} /*记录脉冲次数 */
elseif(time==50)
{
v=sudu(n);
time=0;
n=0;
}
/* 调用显示函数显示速度 */
}
}