You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu20.04下Jetson Nano安装Adafruit PWM Servo库报错求助

解决方法与替代方案

针对Adafruit库的问题解决

  • 这个库的Makefile里没有编写install目标规则,所以执行sudo make install会报错,你可以手动编译使用:
    1. 把库中的Adafruit_PWMServoDriver.h和Adafruit_PWMServoDriver.cpp文件复制到自己的项目目录
    2. 编译代码时将这两个文件一起编译,示例命令:
      g++ -o your_program your_code.cpp Adafruit_PWMServoDriver.cpp -lwiringPi
      
      若缺少wiringPi依赖,先执行sudo apt install libwiringpi-dev安装
  • 若想把库作为系统级库使用,可手动编译成静态库:
    1. 在库目录下执行:
      g++ -c Adafruit_PWMServoDriver.cpp -o Adafruit_PWMServoDriver.o
      ar rcs libAdafruitPWMServoDriver.a Adafruit_PWMServoDriver.o
      
    2. 将生成的libAdafruitPWMServoDriver.a复制到/usr/local/lib,Adafruit_PWMServoDriver.h复制到/usr/local/include
    3. 编译自己的代码时链接该库:
      g++ -o your_program your_code.cpp -lAdafruitPWMServoDriver -lwiringPi
      

替代库推荐

  • pigpio库:支持Jetson Nano,可通过I2C控制PCA9685,安装步骤:
    1. 克隆仓库:git clone https://github.com/joan2937/pigpio
    2. 进入目录执行make,再执行sudo make install
    3. 使用时在代码中包含pigpio.h,通过I2C函数直接操作PCA9685寄存器,或使用基于pigpio封装的PCA9685控制代码
  • 手动编写I2C控制代码:PCA9685的寄存器操作逻辑简单,直接通过Linux的I2C设备文件(/dev/i2c-1)读写,无需第三方库。核心步骤为打开设备文件,用ioctl设置从设备地址,再读写寄存器配置PWM参数。

内容的提问来源于stack exchange,提问作者yume

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 03:32:16