#include <Servo.h>
Servo myservo; // 創建Servo物件用以控制伺服電機
int pos = 0; // 存盤伺服電機角度資訊的變數
void setup() {
myservo.attach(9); // Servo物件連接在9號引腳
Serial.begin(9600);
}
void loop() {
for (pos = 0; pos <= 180; pos += 1) { // 0度轉到180度
// 每一步增加1度
myservo.write(pos); // 告訴伺服電機達到'pos'變數的角度
Serial.println(pos);
delay(15); // 等待15毫秒以確保伺服電機可以達到目標角度
}
for (pos = 180; pos >= 0; pos -= 1) { // 180度轉到0度
myservo.write(pos); // 告訴伺服電機達到'pos'變數的角度
Serial.println(pos);
delay(15); // 等待15毫秒以確保伺服電機可以達到目標角度
}
}
以上是我在網站看到的Arduino控制舵機轉動的程式,我試了一下,發現我的舵機不能實作0到180度轉動,而是在抽搐。。。然后我把delay(15)延遲時間改了,發現大于300就可以實作。所以是為什么延遲時間太小就運轉不了呢?人家的15ms都可以。舵機型號為DS3115
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/40894.html
標籤:單片機/工控
上一篇:UCProbe可以用Jlink嗎
