中易网

请问大神 为什么程序 超声波测距返回值一直是0.03 或0.05的错误值

答案:2  悬赏:70  
解决时间 2021-03-03 07:36
#include <.h>
const int trig = 8; // 触发信号
const int echo = 5; // 反馈信号
#include
Servo myservo0;
float pos0 = 0;
float i= 45;
float S=100;
void setup()
{
pinMode(echo, INPUT);
pinMode(trig, OUTPUT);
//触发端口设置为输出,反馈端口设置为输入
Serial.begin(9600);

myservo0.attach(9);
myservo1.attach(10);
myservo2.attach(11);
myservo3.attach(6);// attaches the servo on pin 9 to the servo object
}

void loop()
{
long IntervalTime=0; //定义一个时间变量
for(pos0 = i; pos0 < 48; pos0 += 0.5) // goes from 0 degrees to 180 degrees
{ // in steps of 1 degree
myservo0.write(pos0); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
i=pos0;
for(pos1 = k; pos1 <73; pos1+= 0.5) // goes from 0 degrees to 180 degrees
{ // in steps of 1 degree
myservo1.write(pos1); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
k=pos1;
while(S>15){
S=0;
digitalWrite(trig, 1);//置高电平
delayMicroseconds(15);//延时 15us
digitalWrite(trig, 0);//设为低电平
IntervalTime=pulseIn(echo, HIGH);//用自带的函数采样反馈的高电平的宽度, 单位 us
float S=IntervalTime/58.00; //使用浮点计算出距离,单位 cm
Serial.println(S);//通过串口输出距离数值
IntervalTime=0;//对应的数值清零。
delay(500);//延时间隔决定采样的频率,根据实际需要变换参数
}
最佳答案
先看看硬件是否有问题,硬件没有问题的前提下,应该是软件出问题了。软件只能慢慢仿真。
全部回答
不明白啊 = =!
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
粗苯的用途
十三香炒鸡我想知道这个在什么地方
看冰川时代4dx厅和imax厅比较哪个好
成都中新药业配送点(新津县邓双镇新桥村第二
越南HkT组合TiTi的妈妈为何结婚
如何处理公共关系与职业道德存在的矛盾
恒大冰泉公关策划案
物理问题:当一个人拉着一根绳子,绳子下系着
她说 我那么蠢你还和我玩 我该怎么答
asus/华硕 aio z240ic四核i5固态超薄独显
我想问一问芹菜焯水,是用热水吗?焯的时候火
谁知道移动 卡怎 么刷 钻。免 费 刷的。会的
以前看的一部电影,一个人之身杀到黑帮里和黑
别克昂科威两驱精英型带一键升窗?
跨省迁农村户口,户籍证明必须得用手写注明我
推荐资讯
改变一点点 作文 能不能把“改变”当名词写?
交通事故 被撞者没有事 不去交通队 可以结案
四季报春花是否有害
玲玲佳人时尚女装在什么地方啊,我要过去处理
中竞发(北京)工程造价咨询有限公司在什么地方
云南移山倒海农业科技发展有限公司怎么去啊,
江苏理工学院-汽车与交通工程学院地址在哪,
刚买的OPPO R807被偷了,设置了防盗追踪的,
渗坝乡地址有知道的么?有点事想过去
求烟雨江南的《罪恶之城》全本小说,希望错别
怎么把图片格式为png的转换为gif格式的呢?而
重庆美食盖浇饭地址在什么地方,想过去办事
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?