IDO-SOM2D0X配置四路PWM教程

描述

本文适用于触觉智能2D0X核心板四路PWM的配置。触觉智能的IDO-SOM2D0X是基于SigmaStar SSD201/202 SoC的超小SOM模组,双核A7,1.2GHz主频,1080P视频解码,支持MIPI/RGB显示接口,支持双以太网,支持SDIO/USB/SPI/I2C/UART/DMIC/I2S,集成音频Codec,支持麦克风阵列;模组集成了WiFi和NAND Flash;支持Linux系统;高性能,低成本;批量供货保障,主要应用于智能楼宇室内机,智能家居中控,86盒家庭中控,电梯楼层显示器,IP网络广播设备等。


 

 

开源硬件开源硬件

 

一、关于PWM的简介

IDO-SOM2D0X-V1采用Sigmastar SSD201/SSD202D SoC 设计,Sigmastar SSD201/SSD202D拥有4路硬件PWM。其编号为 PWM0-PWM3。默认复用引脚,如下表所示:

编号

默认复用引脚

PWM0

GPIO4

PWM1

GPIO5

PWM2

SD_D1

PWM3

GPIO12

二、配置步骤

2.1 修改PWM节点的配置文件

在kernel/arch/arm/boot/dts/infinity2m-doublenet.dtsi中,

定义寄存器、时钟和PWM的个数,以及对应的GPIO引脚,如下图所示:
 

开源硬件

 

参数及说明,如下表所示:

参数

说明

reg(寄存器)

指定了PWM控制器的内存映射寄存器的位置和大小。

clocks (时钟)

指定了PWM控制器使用的时钟源。

npwm (PWM数量)

表示使用多少个PWM

pad-ctrl (引脚控制)

表示绑定的引脚,如:
PWM0绑定PAD_GPIO4

PWM1绑定PAD_GPIO5

PWM2绑定PAD_SD_D1

PWM3绑定PAD_GPIO12

status (状态)

“ok”是激活,“disable禁用。

2.2 修改GPIO配置

输出的GPIO可通过修改如下配置文件:

kernel/arch/arm/boot/dts/infinity2m-ssc011a-s01a-padmux-rgb565-rmii-doublenet.dtsi

进行配置,其中一路是用来调整PWM背光的,默认为PWM0。使用到哪个引脚就需要屏蔽掉(注释掉对应的代码)哪路引脚的GPIO,使其变为PWM模式。如下图所示:
 

开源硬件

 

开源硬件

 

开源硬件

 

2.3 内核配置

kernel需要加载PWM驱动:在编译内核前,通过make menuconfig进入配置菜单,找到Device Driver -> SStar Soc platform drivers,然后启用SSTAR_PWM选项保存并退出。
 

cd kernel

 

配置菜单选择,如下图所示:

开源硬件开源硬件开源硬件开源硬件开源硬件

 

2.4 重新编译固件烧录到核心板

具体编译及烧录步骤,见下面链接

Purple Pi R1 系统编译:

https://industio.yuque.com/mdtih8/gyzv1h/fa4r1wmkpkvlo9pi?singleDoc#

Purple Pi R1烧录流程

https://industio.yuque.com/mdtih8/gyzv1h/yezo0g3ragnuar79?singleDoc#

2.5 在板子上配置PWM

cd /sys/class/pwm/pwmchip0

 

注:此方式断电重启后,设置参数会恢复成默认状态。PWM参数设置如果需要保存,请按照以下步骤操作:

打开位于 /customer/ 目录下的 demo.sh 脚本文件。

将上述PWM配置命令逐一添加到 demo.sh 文件中。这将确保每次系统启动时,脚本都会自动执行这些命令,从而应用PWM设置。

完成命令添加后,保存 demo.sh 文件的更改。

最后,执行 sync 命令以确保所有更改被正确地同步并持久化到存储设备上。

开源硬件

 

开源硬件

 

2.6 验证

验证需要使用示波器测量对应的引脚波形,也可以通过调节占空比0%,50%,100%后用万用表测量对应引脚的电压进行粗略的验证。例如设置25%的占空比,测量结果,如下图所示:

开源硬件

 

 

 

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

全部0条评论

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

×
20
完善资料,
赚取积分