串口复用笔记 - 飞凌OKMX6DL/Q平台

基于飞凌FETMX6DL/Q核心板的串口复用配置应用笔记,版本V1.0,发布于2018年11月10日。

核心内容

本文档详细介绍了如何在OKMX6DL/Q-C平台(Linux 3.0.35)上复用UART5串口,以KEY_ROW1和KEY_COL1引脚为例。

串口复用步骤

  1. 查找可用引脚

    • 查看CPU手册(IMX6DQRM)第四章外部信号与引脚复用
    • UART5_TX_DATA可映射到KEY_COL1(mode为ALT4)
    • UART5_RX_DATA可映射到KEY_ROW1(mode为ALT4)
  2. 修改pinmux配置

    • 文件:Linux-3.0.35/arch/arm/mach-mx6/board-mx6q_c_sabresd.h
    • 添加定义:
      MX6Q_PAD_KEY_ROW1__UART5_RXD,
      MX6Q_PAD_KEY_COL1__UART5_TXD,
    • 注释掉原有的pinmux配置
  3. 初始化串口

    • 文件:Linux-3.0.35/arch/arm/mach-mx6/board-mx6q_c_sabresd.c
    • 在mx6q_sabresd_init_uart()函数中添加:
      imx6q_add_imx_uart(4, NULL);
  4. 验证

    • 编译烧写后,在/dev目录下会生成ttymxc4节点

关键要点

  • 不同平台间可能存在差异,需客户自行调整
  • 引脚复用需同时修改头文件定义和初始化函数
  • 串口编号从0开始,UART5对应ttymxc4

关联笔记