我正在使用SAMA5D31-EK板,並試圖讓SAMA5D31內部PWM控制器通過PIO引腳輸出信號:特別是PE31。該主板運行Linux 3.10.0+,並使用sysfs接口管理PWM。這個界面似乎正確執行:我可以創建設備(寫入'導出'文件),激活它,更改period和duty_cycle文件的內容(當讀回它們包含寫入它們的最新值時)。 至於PIO PE31的配置我改變拱/ ARM /開機/ DTS/sama5d3.dtsi文件,包括PWM0的sama5d3 pwm拒絕工作
pwm0 {
pinctrl_pwml1: pwml1-0 {
atmel,pins =
<AT91_PIOE 31 AT91_PERIPH_B AT91_PINCTRL_NONE>; /*PE31*/
};
};
pwm0: [email protected] {
compatible = "atmel,sama5d3-pwm";
reg = <0xf002c000 0x300>;
interrupts = <28 IRQ_TYPE_LEVEL_HIGH 4>;
#pwm-cells = <3>;
status = "disabled";
};
狀態從「已禁用」,以「好」在sama5d31也發生了變化。 dts文件
因特網上的某處我已經瞭解到,這種行爲可能與這些dts文件中缺少的時鐘定義有關。我讀過的其他地方需要升級到3.11或3.12內核。
任何幫助將不勝感激。
謝謝, 瓊。
最後我成功具有PWM工作;或者更精確地說:通過PIO引腳使PWM輸出信號可用。 – user3215837