i.MX6UL 管腳復用的參數配置方法(以設備樹為例)


  NXP Cortex-A7 i.MX6UltraLite 的外設資源非常豐富。為了提供芯片的性價比,CPU廠家引入了PINMUX的架構,簡單說就是引腳存在復用,以上說的這些接口,只用了大約114個引腳,每個引腳最大可以有9種功能(具體可查看Pin List),每個功能有可以出現在不同的引腳上面。

  這里以使用UART3 作為RS485功能為例來說明;

  首先查看i.MX6ul哪些引腳可做為uart3功能;

注:上述參考手冊為《IMX6ULRM.pdf》

Chapter 4​: External Signals and Pin Multiplexing --- Muxing Options

這里選

UART3_TX_DATA作為TX_DATA,

UART3_RX_DATA作為RX_DATA;

UART3_RTS引腳485方向引腳

接下來便是設備樹中PINMUX的配置:

&uart3 {
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_uart3>;
    fsl,rs485-gpio-txen = <&gpio1 27 GPIO_ACTIVE_HIGH>;
    linux,rs485-enabled-at-boot-time;
    status = "okay";
};
pinctrl_uart3: uart3grp {
    fsl,pins = <
    MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX   0x1b0b1
    MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX   0x1b0b1
    MX6UL_PAD_UART3_RTS_B__GPIO1_IO27       0x1b0b1 /* RS485 RE/DE  */
    >;
};
MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX,MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX這些屬性名稱可以在 arch/arm/boot/dts/imx6ul-pinfunc.h 文件中搜索引腳關鍵
字來確定,如 UART3_TX_DATA 就可以找到 MX6UL_PAD_UART3_TX_DATA__*********,然后就是根據需要復用成的功能做選擇了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM