/*注意事項:(在燒寫的過程中,請先斷開藍牙模塊和Nano板的連接,否則會燒不進程序。)
1.寫代碼到Arduino板上時,數字0和1口不能接線,必需撥掉(不要帶電撥線,容易燒)
2.藍牙的TX口接Arduino板上的0口,RX口接Arduino板上的1口
*/
#include <Servo.h> // 聲明調用Servo.h庫
Servo myservo; // 創建一個舵機對象
int pos = 0;
// 變量pos用來存儲舵機位置
void setup() {
Serial.begin(9600); //串口波特率(使用藍牙串口必需此句)
//舵機引出三根線。一根是紅色,連到+5V上。一根棕色(有些是黑的),連到GND。
//還有一根是黃色或者橘色,連到數字引腳9。
myservo.attach(9); // 將引腳9上的舵機與聲明的舵機對象連接起來
}
void loop() {
while(Serial.available()) //判斷緩沖器狀態。
{
char c=Serial.read(); //讀取串口
if(c=='A') //判斷串口是否等于A
{
for(pos = 0; pos < 180; pos += 1){ // 舵機從0°轉到180°,每次增加1°
myservo.write(pos); // 給舵機寫入角度
delay(15); // 延時15ms讓舵機轉到指定位置
}
Serial.println("LEFT");// 串口輸出數據并帶回車符。
}
if(c=='B') //判斷串口是否等于B
{
for(pos = 180; pos>=1; pos-=1) { // 舵機從180°轉回到0°,每次減小1°
myservo.write(pos); // 寫角度到舵機
delay(15); // 延時15ms讓舵機轉到指定位置
}
Serial.println("RIGHT");// 串口輸出數據并帶回車符。
}
}
}
|