龙芯1C机器人主控板PWM功能操作教程

描述

  龙芯1C机器人主控板共有32路PWM输出,由板载的两颗PCA9685PW芯片提供,每颗芯片最大可输出16路PWM信号。

  详细使用方式如下:

  一、准备工作

  将各舵机的电源和信号线按线序插到主控板的插针上;

  连接上调试串口;

  接入主控版和舵机主电源;

  检查舵机电源是否正常;

  等待终端出现命令行界面;

  二、系统PWM输出功能操作

  1、查询系统中探测到的PWM芯片:

  [root@Loongson-gz:/]# ls /sys/class/pwm

  pwmchip0 pwmchip17

  两颗PWM芯片在sysfs中分别对应pwmchip0和pwmchip17两个目录(下面以pwmchip0为例)。

  2、列出pwmchip0下的文件接口:

  [root@Loongson-gz:/]# ls /sys/class/pwm/pwmchip0

  device export npwm subsystem uevent unexport

  3、请求并打开pwmchip0中的pwm0输出通道:

  [root@Loongson-gz:/]# echo 0 》 /sys/class/pwm/pwmchip0/export

  [root@Loongson-gz:/]# ls /sys/class/pwm/pwmchip0

  device export npwm pwm0 subsystem uevent unexport

  [root@Loongson-gz:/]# echo 1 》 /sys/class/pwm/pwmchip0/pwm0/enable

  每颗芯片有16路PWM信号输出,对应的编号为0~15,这里打开的是0号;

  4、设置pwm0输出信号的周期为20ms:

  [root@Loongson-gz:/]# echo 20000000 》 /sys/class/pwm/pwmchip0/pwm0/period

  注意这里的输入的时间单位是ns;

  5、设置一个PWM周期中高电平所占的时间为1.5ms:

  [root@Loongson-gz:/]# echo 1500000 》 /sys/class/pwm/pwmchip0/pwm0/duty_cycle

  设置完后,即可观察到连接到pwm0输出上的舵机发生了相应的转动;

  根据不同的舵机这里设置的值可能不同,目前我们所使用的DS3115MG这个舵机的设置范围是450000~2650000;

  6、关闭pwm0

  [root@Loongson-gz:/]# echo 0 》 /sys/class/pwm/pwmchip0/pwm0/enable

  [root@Loongson-gz:/]# echo 0 》 /sys/class/pwm/pwmchip0/unexport

  [root@Loongson-gz:/]# ls /sys/class/pwm/pwmchip0

  device export npwm subsystem uevent unexport

  三、另外一颗PWM芯片的使用步骤也和以上类似,在此不再赘述。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分