龍芯1C機(jī)器人主控板共有32路PWM輸出,由板載的兩顆PCA9685PW芯片提供,每顆芯片最大可輸出16路PWM信號(hào)。
詳細(xì)使用方式如下:
一、準(zhǔn)備工作
將各舵機(jī)的電源和信號(hào)線(xiàn)按線(xiàn)序插到主控板的插針上;
連接上調(diào)試串口;
接入主控版和舵機(jī)主電源;
檢查舵機(jī)電源是否正常;
等待終端出現(xiàn)命令行界面;
二、系統(tǒng)PWM輸出功能操作
1、查詢(xún)系統(tǒng)中探測(cè)到的PWM芯片:
[root@Loongson-gz:/]# ls /sys/class/pwm
pwmchip0 pwmchip17
兩顆PWM芯片在sysfs中分別對(duì)應(yīng)pwmchip0和pwmchip17兩個(gè)目錄(下面以pwmchip0為例)。
2、列出pwmchip0下的文件接口:
[root@Loongson-gz:/]# ls /sys/class/pwm/pwmchip0
device export npwm subsystem uevent unexport
3、請(qǐng)求并打開(kāi)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信號(hào)輸出,對(duì)應(yīng)的編號(hào)為0~15,這里打開(kāi)的是0號(hào);
4、設(shè)置pwm0輸出信號(hào)的周期為20ms:
[root@Loongson-gz:/]# echo 20000000 》 /sys/class/pwm/pwmchip0/pwm0/period
注意這里的輸入的時(shí)間單位是ns;
5、設(shè)置一個(gè)PWM周期中高電平所占的時(shí)間為1.5ms:
[root@Loongson-gz:/]# echo 1500000 》 /sys/class/pwm/pwmchip0/pwm0/duty_cycle
設(shè)置完后,即可觀(guān)察到連接到pwm0輸出上的舵機(jī)發(fā)生了相應(yīng)的轉(zhuǎn)動(dòng);
根據(jù)不同的舵機(jī)這里設(shè)置的值可能不同,目前我們所使用的DS3115MG這個(gè)舵機(jī)的設(shè)置范圍是450000~2650000;
6、關(guān)閉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芯片的使用步驟也和以上類(lèi)似,在此不再贅述。
-
機(jī)器人
+關(guān)注
關(guān)注
210文章
28224瀏覽量
206594 -
PWM
+關(guān)注
關(guān)注
114文章
5148瀏覽量
213436
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論