查看: 1055|回复: 12

pca9685+arduino驱动舵机失败

[复制链接]

该用户从未签到

发表于 2021-9-8 18:45 | 显示全部楼层 |阅读模式
  1. <div class="blockcode"><blockquote>#include <Wire.h>
  2. #include <Adafruit_PWMServoDriver.h>

  3. // 默认地址 0x40
  4. Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();

  5. #define SERVO_0  102
  6. #define SERVO_45  187
  7. #define SERVO_90  280
  8. #define SERVO_135  373
  9. #define SERVO_180  510

  10. // our servo # counter
  11. uint8_t servonum = 0;
  12. char comchar;

  13. void setup() {
  14.   Serial.begin(9600);
  15.   Serial.println("8 channel Servo test!");

  16.   pwm.begin();
  17.   pwm.setPWMFreq(50);  // 50HZ更新频率,相当于20ms的周期

  18.   delay(10);
  19. }

  20. void loop() {
  21.     while(Serial.available()>0){
  22.     comchar = Serial.read();//读串口第一个字节
  23.     switch(comchar)
  24.     {
  25.       case '0':
  26.       pwm.setPWM(0, 0, SERVO_0);
  27.       Serial.write(comchar);
  28.       break;
  29.       case '1':
  30.       pwm.setPWM(0, 0, SERVO_45);
  31.       Serial.write(comchar);
  32.       break;
  33.       case '2':
  34.       pwm.setPWM(0, 0, SERVO_90);
  35.       Serial.write(comchar);
  36.       break;
  37.       case '3':
  38.       pwm.setPWM(0, 0, SERVO_135);
  39.       Serial.write(comchar);
  40.       break;      
  41.       case '4':
  42.       pwm.setPWM(0, 0, SERVO_180);
  43.       Serial.write(comchar);
  44.       break;
  45.       default:
  46.       Serial.write(comchar);
  47.       break;                  
  48.     }
  49.   }
  50. }
复制代码
我网上别人的代码,编译通过且上传,但舵机不转,怎么解决?Arduino uno使用PCA9685模块实现16路舵机控制_ai2robot-CSDN博客
电源用的手机充电器(旧 5V 2A),接入LED可以亮,我这连线有问题吗?

1

1

该用户从未签到

 楼主| 发表于 2021-9-8 18:46 | 显示全部楼层
https://blog.csdn.net/u010841775/article/details/99701182这个是dalao代码的地址

该用户从未签到

发表于 2021-10-8 09:26 来自手机 | 显示全部楼层
楼主,后面有解决嘛?求助,谢谢

该用户从未签到

 楼主| 发表于 2021-10-8 17:27 | 显示全部楼层
qaws1127 发表于 2021-10-8 09:26
楼主,后面有解决嘛?求助,谢谢

还没解决,我怀疑我9685坏了,可能学习的时候接错烧了

该用户从未签到

发表于 2021-10-8 18:23 来自手机 | 显示全部楼层
ASDjkl 发表于 2021-10-8 17:27
还没解决,我怀疑我9685坏了,可能学习的时候接错烧了

我的是新买的,参考的接线和程序也是你发的那个贴,也是不动,我看其他人的贴也有这个问题,但没有答复出怎么解决的

该用户从未签到

发表于 2021-10-16 12:37 来自手机 | 显示全部楼层
ASDjkl 发表于 2021-10-8 17:27
还没解决,我怀疑我9685坏了,可能学习的时候接错烧了

我的解决了:原因是给pca9865外接供电的电源板是坏的,后面用电池直接给pca9685供电解决了

签到天数: 71 天

[LV.6]常住居民II

发表于 2021-10-16 13:58 | 显示全部楼层
这个要串口发送数据才能控制动的

该用户从未签到

 楼主| 发表于 2021-10-17 15:32 | 显示全部楼层
qaws1127 发表于 2021-10-16 12:37
我的解决了:原因是给pca9865外接供电的电源板是坏的,后面用电池直接给pca9685供电解决了 ...

程序方便发出来看一下吗

该用户从未签到

 楼主| 发表于 2021-10-20 21:31 | 显示全部楼层
XlinliY.Zhang 发表于 2021-10-16 13:58
这个要串口发送数据才能控制动的

https://blog.csdn.net/qq_42807924/article/details/82229997   换了很多代码,都没能动起来,有什么办法能检测9685是否损坏?

该用户从未签到

 楼主| 发表于 2021-10-24 00:06 | 显示全部楼层
我的问题解决了,就是电源的线接错了,应该是把电源正极接到SCL,SDA下方的V+,而另一个v+不接。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门推荐

毕设求助!max30102与gy906实现脉搏体温测量
毕设求助!max30102与gy90
各位大佬,我最近在搞毕业设计,想通过arduino,max30102,gy906实现脉搏体温测量,但
arduino解码sbus
arduino解码sbus
市面上有很多sbus接收机,它只有一根线就可以实现很多通道的通信,其本质利用了串口通
香蕉派 BPI-R3 开源路由器开发板采用 联发科MT7986(Filogic 830)
香蕉派 BPI-R3 开源路由器
香蕉派 BPI-R3 开源路由器开发板采用 联发科MT7986(Filogic 830)芯片设计,支持Wi-Fi 6
求智能垃圾桶编程代码
求智能垃圾桶编程代码
求大佬解答 很急!!
安信可ESP32点灯APP自动浇花和天气空气质量
安信可ESP32点灯APP自动浇
本人是完全不懂C语言,大部分都是借鉴各位大佬的,没有时间和精力去学习C语言,能达
Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
快速回复 返回顶部 返回列表