hunkxie 发表于 2022-4-24 18:01:45

将IIC2修改为UART5遇到的问题

iMX6ull核心板,参考应用笔记,将IIC2改成UART5,修改如下在dts文件中添加:

pinctrl_uart5: uart5grp {
            fsl,pins = <
                MX6UL_PAD_UART5_TX_DATA__UART5_DCE_TX 0x1b0b1
                MX6UL_PAD_UART5_RX_DATA__UART5_DCE_RX 0x1b0b1
            >;
      };



&uart5 {
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_uart5>;
    status = "okay";
};



然后将IIC2改成disable,如下
&i2c2 {
    clock-frequency = <100000>;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_i2c2>;
    status = "disabled";

    codec: wm8960@1a {
      compatible = "wlf,wm8960";
      reg = <0x1a>;
      clocks = <&clks IMX6UL_CLK_SAI2>;
      clock-names = "mclk";
      wlf,shared-lrclk;
    };

    ov9650: ov9650@30 {
      compatible = "ovti,ov9650";
      reg = <0x30>;
      pinctrl-names = "default";
      pinctrl-0 = <&pinctrl_csi1>;
      clocks = <&clks IMX6UL_CLK_CSI>;
      clock-names = "csi_mclk";
      pwn-gpios = <&gpio_spi 6 1>;
      rst-gpios = <&gpio_spi 5 0>;
      csi_id = <0>;
      mclk = <24000000>;
      mclk_source = <0>;
      status = "disabled";
      port {
            ov9650_ep: endpoint {
                   remote-endpoint = <&csi1_ep>;
            };
      };
    };
};


可是更新完后,串口5只能正常发送数据,但是不能接收数据,用示波器抓波形,核心板85脚即串口5接受脚波形正确,但是串口qt软件没显示接收数据,用的是出厂默认的qt串口软件。请各位大神帮忙分析一下

forqs 发表于 2022-4-25 08:54:41

您试一下把arch/arm/boot/dts/imx6ul-pinfunc.h
#define MX6UL_PAD_UART5_RX_DATA__UART5_DCE_RX    0x00C0 0x034C 0x0644 0x0 0x5
最后一个参数0x5改为0x7

hunkxie 发表于 2022-4-26 10:51:21

forqs 发表于 2022-4-25 08:54
您试一下把arch/arm/boot/dts/imx6ul-pinfunc.h
#define MX6UL_PAD_UART5_RX_DATA__UART5_DCE_RX    0x00 ...

成功解决,谢谢
页: [1]
查看完整版本: 将IIC2修改为UART5遇到的问题