本文来源电子发烧友社区,作者:jf_25674040, 帖子地址:https://bbs.elecfans.com/jishu_2292781_1_1.html
一、硬件连接
这次我们使用PWM0,即GPIO7。
本次我们使用的是3.3V无源蜂鸣器。
硬件实际连接如上图。
二、软件
/sys/class/pwm/
时没有看到pwmchip0,需要将从linux中编译的dtb文件通过dtc -I dtb -O dts -o xxx.dts xxx.dtb
反汇编成dts文件,并增加resets = <0x0b 0x6d>;
属性。pwm@12490000 { compatible = "starfive,pwm0"; reg = <0x00 0x12490000 0x00 0x10000>; clocks = <0x07 0xb5>; resets = <0x0b 0x6d>; sifive,npwm = <0x08>; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <0x28>; };
root@ubuntu-star5:/sys/class/pwm/pwmchip0/pwm0# ls capture duty_cycle enable period polarity uevent root@ubuntu-star5:/sys/class/pwm/pwmchip0/pwm0# echo 0 >enable root@ubuntu-star5:/sys/class/pwm/pwmchip0/pwm0# echo 500000 > period root@ubuntu-star5:/sys/class/pwm/pwmchip0/pwm0# echo 250000 > duty_cycle root@ubuntu-star5:/sys/class/pwm/pwmchip0/pwm0# echo 1 > enable root@ubuntu-star5:/sys/class/pwm/pwmchip0/pwm0# echo 0 >enable
全部0条评论
快来发表一下你的评论吧 !