i.MX6UL開發板 管腳復用的參數配置方法(PINMUX)

原創 2017-11-29 16:10:00 i.MX6UL開發板 管腳復用的參數配置方法(PINMUX)
  NXP Cortex-A7 i.MX6UltraLite 的外設資源非常豐富。但是,需要提醒大家的是,這些接口是不能同時使用的,為了提供芯片的性價比,CPU廠家引入了PINMUX的架構,簡單說就是引腳存在復用,以上說的這些接口,只用了大約114個引腳,每個引腳最大可以有9種功能,每個功能有可以出現在不同的引腳上面。

本次開發使用的硬件平臺為飛凌嵌入式OKMX6UL-C開發板(產品詳情:www.powerye.cn/69.htm),其它板卡請酌情參考使用,具體實現操作步驟如下:

 

arch/arm/boot/dts/imx6ul-pinfunc.h中有

 

 

arch/arm/boot/dts/imx6ul-14x14-evk.dts中有

 

將管腳的配置展開即:0x0158  0x03E4 0x0000 1 0 0x1b0b1

 

      0x0158     |     0x 03E4     |     0x000 0        |      0x 1         |      0x0     |  0x1b0b1

---------------------------------------------------------------------------------------------------

mux_ctrl_ofs  |  pad_ctrl_ofs |  sel_input_ofs |  mux_mode   | sel_input  |  pad_ctrl

    

    以上參數在參考手冊怎么確定的呢?

    下面LCD_DATA16復用為UART7_DCE_TX為例說明復用管腳參數配置的方法。

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

 

    對于復用管腳的配置,應該在手冊管腳復用的章節IOMUXC)中查找。但是在確定pad name才方便,于是定義在 External Signals and Pin Multiplexing章節,搜索 MX6UL_PAD_LCD_DATA16__UART7_DCE_TX的中間部分 LCD_DATA16”可以直接跳轉至LCD_DATA16引腳的寄存器章節。 

    其中mux_ctrl_ofs 0x0158,mux_mode為ATL1,如圖:

 


       pad_ctrl_ofs 0x03E4,并根據此配置pad_ctrl 0x1b0b1(配置上拉電阻、頻率等等),如圖:

 

    

    input_ofs查找IOMUXC章節以SELECT_INPUT結尾的部分,中間選擇UART7_DCE_RTS,如果沒有這里sel_input_ofs=0x000即可,對應的sel_input為0即可。

    如果有例如MX6UL_PAD_ENET1_RX_ER__UART7_DCE_RTS,如下圖,所以ENET1_RX_ER的sel_input_ofs=0x650。所以ENET1_RX_ERMX6UL_PAD_ENET1_RX_ER__UART7_DCE_RTSsel_input=0x1

 

 


 更多i.MX6UL信息請關注FETMX6UL-C核心板詳情

相關產品 >

  • OKMX6UL-C開發板

    飛凌嵌入式專注imx6系列imx6ul開發板、飛思卡爾imx6ul核心板等ARM嵌入式核心控制系統研發、設計和生產,i.mx6UL系列產品現已暢銷全國,作為恩智浦imx6ul,imx6ul開發板,i.mx6提供者,飛凌嵌入式提供基于iMX6 iMX6UL解決方案定制。

    了解詳情
    OKMX6UL-C開發板
  • OKMX6ULL-C開發板

    40*29mm,雙網雙CAN,8路串口| i.MX6ULL開發板是基于NXP i.MX6ULL設計開發的的一款Linux開發板 ,主頻800MHz,體積小,其核心板僅40*29mm,采用板對板連接器,適應場景豐富。 了解詳情
    OKMX6ULL-C開發板

推薦閱讀 換一批 換一批