C语言的一道题,求高手解释
C语言的一道题,求高手解释
答案:1 悬赏:40 手机版
解决时间 2021-05-21 06:40
- 提问者网友:寂寞梧桐
- 2021-05-20 18:45
最佳答案
- 五星知识达人网友:白昼之月
- 2021-05-20 19:53
if(seconds()>5.0)
{
stop();
break;
}//运行超过5秒,停止,跳出while循环
wait(T);
v1=(float)rotation(1)*0.619/T;
v2=(float)rotation(2)*0.659/T;
printf(v1=%f,v2=%f\n,v1,v2);
}//等待T秒后,分别求出v1,v2,v1,v2是两个坐标方向上的速度,并打印
再问: 但是T明明给的是1.5s,这个while循环有意义么?
再答: 有意义啊,while(1)就是为了循环中代码一直运行,这是典型常驻检测程序的形式啊,T是为了设定检测的间隔罢了
再问: 那rotation这个函数需要先声明么?声明怎么写呢?
再答: 这个程序明显不全啊,rotation应给是给定的函数才对,我也是根据程序猜测是计算两个方向或是两个轮子的参数
再问: #include M51Robot.H #include reg51.h #include float v1,v2; float T=1.5; void main() { SetMoto(1,50); SetMoto(2,50); encoder_start(0); encoder_start(1); resettime(); while(1) { if(seconds()>5.0) { SetMoto(0,0); SetMoto(1,0); } wait(T); v1=(float)encoder_end(0)*0.619/T; v2=(float)encoder_end(1)*0.659/T; printf(v1=%f,v2=%f\n,v1,v2); } } 这是我改后的程序
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯