本文適用于觸覺智能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 (引腳控制) | 表示綁定的引腳,如: 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%的占空比,測量結果,如下圖所示:
-
芯片
+關注
關注
456文章
51170瀏覽量
427244 -
PWM
+關注
關注
114文章
5198瀏覽量
214877 -
開源硬件
+關注
關注
8文章
212瀏覽量
29976 -
嵌入式開發
+關注
關注
18文章
1035瀏覽量
47717 -
SigmaStar
+關注
關注
1文章
12瀏覽量
6923
發布評論請先 登錄
相關推薦
評論