万分感谢! 楼主,能不能给一段完整的Arduino UNO模块控制16路PWM舵机拓展板的完整程序,新手,望指导,可有偿问答,望回复。 兄弟能把stm32 pca9685 舵机使用工程发我一份吗?谢谢
[email protected] #include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
#include <Servo.h>
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();
#define SERVOMIN150
#define SERVOMAX600
int val;
int val1;
int val2;
int val3,val4;
int val5,val6;
void setup() {
Serial.begin(57600);
pwm.begin();
pwm.setPWMFreq(60);// 在~ 60赫兹更新运行模拟伺服系统
}
void setServoPulse(uint8_t n, double pulse) {
double pulselength;
pulselength = 1000000;
pulselength /= 60;
Serial.print(pulselength); Serial.println(" 1");
pulselength /= 4096;
Serial.print(pulselength); Serial.println(" 1");
pulse *= 1000;//pulse=pulse*1000
pulse /= pulselength; //pulse=pulse/pulselength
Serial.println(pulse);
pwm.setPWM(n, 0, pulse);
}
void a1(){
val = analogRead(A1); //读取电位器控制的模拟值 (范围在0-647,建议取值646)
val1 = map(val, 0, 646, 150, 600);
val2 = map(val, 0, 646, 600, 150);
pwm.setPWM(0, 0, val1);
pwm.setPWM(1, 0, val2);
}
void a2(){
val3=analogRead(A0);
val4 = map(val3, 0, 646, 150, 600);
pwm.setPWM(2, 0, val4);
}
void a3(){
val5=analogRead(A2);
val6 = map(val5, 0, 646, 150, 600);
pwm.setPWM(3, 0, val6);
}
void loop() {
a1();
a2();
a3();
delay(20);
新手一枚,求问代码中的150和600是怎么得来的呢?? 据点兵长 发表于 2015-11-11 02:00 static/image/common/back.gif
#include
#include
#include
你好,能加我QQ吗?想给你交流一下arduino开发板和舵机控制器的问题。谢谢,我的qq:1065285339 可以把程序给我来一份吗 我弄了好几天iic都没有成功 你的程序我复制了一遍 也没有成效 [email protected] xiexie 楼主 我调试几天没有调试出来 能不能把源码给我一份 谢谢了 [email protected] 我也是调试了半个月找不到原因,应答都成功了,通信没问题,用arduino板子也没反应,就是pwm没输出,麻烦能分享下代码么?[email protected],非常感谢 想问一下楼主驱动的舵机是哪个型号,想问下楼主电源模块是外加的还是直接用板子提供电压?我现在想用外加电源,求问下这个板子最高承受电压是多少? 据点兵长 发表于 2015-11-11 02:00
#include
#include
#include
我也想要用Arduino控制这个,但不会,能不能教教我,谢谢 你好,我现在也在整这个用stm32控制舵机运转的实验,想请教一下相关的问题,请问可以加一下您的QQ吗?!多谢多谢啦
据点兵长 发表于 2015-10-28 00:20
我的舵机驱动板和你的一模一样,不过我用的就是Arduino。几个月前才弄懂让几号舵机在何时转动多少度。试过 ...
你好,306623457,能加一个好友吗? 求问下,怎么实现让几号舵机何时转动多少度? 调了很久不知道哪儿的问题,IIC初始化都成功了,也有应答,但是不知道为啥就是没有输出,可以把你的代码发我一份参考下吗?这个是我的邮箱,[email protected],先谢过啦
页:
1
[2]