超音波與伺服馬達問題
各位大大我有一些程式上的問題希望可以解惑我現在把超音波模組裝在伺服馬達上讓他左右來回轉當超音波感測距離小於5公分時
我讓伺服馬達停下來
當感測大於五公分時
我要讓伺服馬達繼續轉
程式碼如下
if(q==1){
hc_sr04_1();
if(cm1<5)g=0;
if(g==1){
angle+=2;
servo.write(angle);
delay(40);
if(angle>180){
g=-1;
angle=180;}
}
if(g==-1){
angle-=3;
servo.write(angle);
delay(40);
if(angle<0){
g=1;
angle=0;}
}
}
我現在可以讓他停下來
但是我要如何可以讓他繼續轉 這樣寫最簡單
if(cm1<5)g=0;
else if(g==0) g=1; 回復 2# 超新手
但是因為超音波會議感測這樣寫不會卡在g=1里面嗎?
我之前試了
if(cm1<5)
g=0;
if(cm1>5)
g=1;
他會一直卡在g=1
就不會左右轉了 你這樣寫, 確實會卡.
但我這樣寫也會卡嗎? 回復 4# 超新手
謝謝你的回復已經OK了
謝謝
頁:
[1]