azm335x 串口配置
任務: 配置uart3和uart5
UART3
UART5
配置uart3
1. 修改mmu33xx.c
_AM33XX_MUXENTRY(MII1_RXD3, 0,
?? ??? ?"mii1_rxd3", NULL, "rgmii1_rd3", "mmc0_dat5",
?? ??? ?"mmc1_dat2", NULL, "mcasp0_axr0", "gpio2_18"),
_AM33XX_MUXENTRY(MII1_RXD2, 0,
?? ??? ?"mii1_rxd2", NULL, "rgmii1_rd2", "mmc0_dat4",
?? ??? ?"mmc1_dat3", NULL, "mcasp0_axr1", "gpio2_19"),
從上圖看uart3的rx和tx是Mode1,這里需要配置上,而且要注意這里的管腳名稱叫mii1_rxd3,而上圖是gmii1_rxd3,多了個g,所以需要mmu33xx.c和board-am335xevm.c保持一致。
2. 修改board-am335xevm.c
增加uart3的管腳配置。
static struct pinmux_config uart3_pin_mux[] = {
?? ?{"mii1_rxd3.uart3_rxd", OMAP_MUX_MODE1 | AM33XX_SLEWCTRL_SLOW |
?? ??? ??? ??? ??? ??? ?AM33XX_PIN_INPUT_PULLUP},
?? ?{"mii1_rxd2.uart3_txd", OMAP_MUX_MODE1 | AM33XX_PULL_UP |
?? ??? ??? ??? ??? ??? ?AM33XX_PULL_DISA |
?? ??? ??? ??? ??? ??? ?AM33XX_SLEWCTRL_SLOW},
?? ?{NULL, 0},
};
在對應位置增加
static void uart3_init(int evm_id, int profile)
{
?? ?setup_pin_mux(uart3_pin_mux);
?? ?return;
}
參照其它uart給azm335x_dev_cfg里追加一項
{uart3_init,?? ??? ?DEV_ON_BASEBOARD, PROFILE_ALL}
3. 屏蔽到其他用到這兩個管腳的地方即可。
總結
以上是生活随笔為你收集整理的azm335x 串口配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信用卡密码函是什么意思
- 下一篇: asterisk 学习笔记1