關(guān)于使用arduino控制舵機(jī)的程序,驗(yàn)證成功。
方案一:使用PWM波庫控制-----------------------------------
include <Servo.h> //加載文件庫
int pos = 0;
Servo myservo;
void setup()
{
myservo.attach(9, 500, 2500); //修正脈沖寬度
}
void loop()
{
for (pos = 0; pos <= 180; pos += 1) { //pos+=1等價(jià)于pos=pos+1
myservo.write(pos);
delay(15);
}
for (pos = 180; pos >= 0; pos -= 1) {
myservo.write(pos);
delay(15);
}
}
方案二:使用IO高低電平模擬PWM波-----------------------------------
include <Servo.h> //加載文件庫
// 引腳命名
define analogPin 5
void setup()
{
pinMode(analogPin,OUTPUT);
}
void loop()
{
steer(0);
delay(100);
steer(1);
delay(100);
}
void steer(unsigned char direction) //參數(shù)是方向;
{
if(direction >= 1) //正轉(zhuǎn)
{
for(int i=0;i<=20;i++)
{
digitalWrite(5,HIGH);
delayMicroseconds(1500);//旋轉(zhuǎn)180度,1.5ms;正轉(zhuǎn)
digitalWrite(5,LOW);
delay(10);
}
}
else //反轉(zhuǎn)
{
for(int i=0;i<=20;i++)
{
digitalWrite(5,HIGH);
delayMicroseconds(2500);//旋轉(zhuǎn)180度,2.5ms;反轉(zhuǎn)
digitalWrite(5,LOW);
delay(10);
}
}
}
鏈接:https://www.dianjilingqu.com/637549.html