这个是个大问题 困扰了我很多天
在使用arduino连接传感器和舵机实现项目的过程中, 一上电舵机就抽风了 抽风了 抽了 一直抽来回动 我的天 弄得我好几天都没有睡好 到底是什么原因 什么原因 我又没让你动 就写了个代码 你他妈的疯了
好了 不说了
原因如下
我们在用的时候 是直接导入了一个 舵机库文件 然后声明对象 进行控制
但是不行 舵机库和传感器比如温湿度传感器啥的 有冲突 导致的
怎么解决呢
原理就是舵机用的PWM信号 我们直接写个循环 进行输出信号不用他的舵机库了 就没有问题了
int servoPin = 7;
void setup() //初始化内容
{
Serial.begin(9600);
pinMode(servoPin, OUTPUT); //设定舵机接口为输出接口
}
void loop() //主循环
{
servo(50); //调用函数传值直接动
}
void servo(int angle) { //定义一个脉冲函数
//发送50个脉冲
for(int i=0;i<50;i++){
int pulsewidth = (angle * 11) + 500; //将角度转化为500-2480的脉宽值
digitalWrite(servoPin, HIGH); //将舵机接口电平至高
delayMicroseconds(pulsewidth); //延时脉宽值的微秒数
digitalWrite(servoPin, LOW); //将舵机接口电平至低
delayMicroseconds(20000 - pulsewidth);
}
delay(100);
}