|
#include <Servo.h>
#include <SoftwareSerial.h>
#include <Wire.h>
int val,i=0,j=0,a;
int ang[5] = {0, 40, 80, 120, 160};
int anglength = sizeof(ang) / sizeof(ang[4]);
Servo myservo;
SoftwareSerial BT(0,1);
void setup() {
Serial.begin(9600);
BT.begin(9600);
myservo.attach(3);
myservo.write(0);
}
void loop() {
if(Serial.available() >0){
val = BT.read()-48;
switch(val){
case 0:
delay(500);
Serial.println(val);
break;
case 1:
if(i>0){
for(i=4;i>0;i--){
Serial.println(val);
Serial.println(ang);
delay(500);
if(val=0)break;
}//for
}//if
break;
case 2:
do{ i=i-1;
Serial.println(val);
Serial.println(ang);
delay(500);
}while(a=2);
break;
}//switch
}//if ava
}//loop
按下按鍵一 輸出1 放開按鍵輸出0
按下按鍵二 輸出2 放開按鍵輸出0
case1 跟 case2是我寫的兩種方式
但是放開按鈕時都無法馬上順利跳出迴圈
勞請各位前輩指點一下 感激不盡 |
|