用Arduino控制舵机,供电不能用USB或者电源输入吗?还得另外接电源吗?电路图是怎样的啊?
答案:1 悬赏:60
解决时间 2021-10-24 22:10
- 提问者网友:雪舞兮
- 2021-10-24 16:57
用Arduino控制舵机,供电不能用USB或者电源输入吗?还得另外接电源吗?电路图是怎样的啊?
最佳答案
- 二级知识专家网友:胯下狙击手
- 2021-10-24 18:24
不要使用电脑usb供电,因为如果电流需求大于500ma,会有烧毁usb的可能,推荐使用电池外置供电。
Arduino板子上不是有个电源插座吗?外接电源5-12V插到Arduino电源插座上,然后舵机接5V和GND,信号口接数字7号口。代码如下:
int readPin = 0; //用来连接电位器
int servopin = 7; //定义舵机接口数字接口7
void servopulse(int angle)//定义一个脉冲函数
{
int pulsewidth=(angle*11)+500; //将角度转化为500-2480的脉宽值
digitalWrite(servopin,HIGH); //将舵机接口电平至高
delayMicroseconds(pulsewidth); //延时脉宽值的微秒数
digitalWrite(servopin,LOW); //将舵机接口电平至低
delayMicroseconds(20000-pulsewidth);
}
void setup()
{
pinMode(servopin,OUTPUT);//设定舵机接口为输出接口
}
void loop()
{
//读取电位器(传感器)的读数,接到3.3V,值范围从0到660左右
int readValue = analogRead(readPin);
//把值的范围映射到0到165左右
int angle = readValue / 4;
//发送50个脉冲
for(int i=0;i<50;i++)
{
//引用脉冲函数
servopulse(angle);
}
}
Arduino板子上不是有个电源插座吗?外接电源5-12V插到Arduino电源插座上,然后舵机接5V和GND,信号口接数字7号口。代码如下:
int readPin = 0; //用来连接电位器
int servopin = 7; //定义舵机接口数字接口7
void servopulse(int angle)//定义一个脉冲函数
{
int pulsewidth=(angle*11)+500; //将角度转化为500-2480的脉宽值
digitalWrite(servopin,HIGH); //将舵机接口电平至高
delayMicroseconds(pulsewidth); //延时脉宽值的微秒数
digitalWrite(servopin,LOW); //将舵机接口电平至低
delayMicroseconds(20000-pulsewidth);
}
void setup()
{
pinMode(servopin,OUTPUT);//设定舵机接口为输出接口
}
void loop()
{
//读取电位器(传感器)的读数,接到3.3V,值范围从0到660左右
int readValue = analogRead(readPin);
//把值的范围映射到0到165左右
int angle = readValue / 4;
//发送50个脉冲
for(int i=0;i<50;i++)
{
//引用脉冲函数
servopulse(angle);
}
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯