TI中文支持网
TI专业的中文技术问题搜集分享网站

DM8148的控制台串口如何从uart0改成uart2?

ipnc-rdk的控制台串口默认为uart0,现在想改成uart2,分析应该需要在uboot中做相应修改。

尝试了一下,在uboot的ipnc\Source\ti_tools\ipnc_psp_arago\u-boot\include\configs的ti8148_ipnc.h和ti8148_ipnc_quick_mmc.h中增加CONFIG_SYS_NS16550_COM3的定义

#define CONFIG_SYS_NS16550_COM1        0x48020000    /* Base EVM has UART0 */

#define CONFIG_SYS_NS16550_COM2        0x48022000

#define CONFIG_SYS_NS16550_COM3        0x48024000  /*增加uart2的地址定义*/

并对串口选择做出如下修改

/*
 * select serial console configuration
 */
/*#define CONFIG_SERIAL1            1
#define CONFIG_CONS_INDEX        1*/

#define CONFIG_SERIAL1            3        /*改成uart2*/
#define CONFIG_CONS_INDEX        3   /*改成uart2*/
#define CONFIG_SYS_CONSOLE_INFO_QUIET

但是,修改完以后,连上终端,uart2还是没有打印信息输出。

请问专家,是不是还有别的什么地方需要修改?谢谢!

Ternence_Hsu:

你好;

        /etc/inittab 有修改吗?

       uboot 、 内核 、 文件系统都需要修改

Huchong Li:

回复 Ternence_Hsu:

还没修改,只进行了uboot的修改,想法是先看到uboot的启动信息,然后再去修改内核和文件系统。

但是,目前uboot的启动信息没有打印出来,所以后续的修改也没有展开。

Ternence_Hsu:

回复 Huchong Li:

有先配置GPIO复用模式为 UART 模式吗?

Huchong Li:

回复 Ternence_Hsu:

没有啊,请问如何配置GPIO复用模式为 UART 模式?另外,之前用uart0输出是可以打印信息的

Huchong Li:

回复 Ternence_Hsu:

好的,谢谢!我试试看!

Huchong Li:

回复 Ternence_Hsu:

您好,我在ipnc/Source/ti_tools/ipnc_psp_arago/u-boot/board/ti/ti8148_ipnc中对mux.h文件进行修改:

/* -56 */       BIT(0), BIT(0), BIT(0), BIT(0),/* -60 */       BIT(0), BIT(0), BIT(0), BIT(0),

/* -56 */       BIT(0), BIT(0), BIT(0), BIT(3),/* -60 */       BIT(0), BIT(3), BIT(0), BIT(0),

依据是uart2_TXD和uart2_RXD接的分别是U3和U4,而根据DM8148的管脚复用表

重新编译uboot后运行,uart2还是没有输出!用示波器去测试uart2的TXD和RXD管脚,RXD的闲置状态为高电平,TXD的闲置状态为低电平,可以判断至少uart2的TXD管脚没有配置对。

请问到底是是管脚复用没有修改对,还是uboot还有什么其他需要修改的地方呢?

十分感谢您的解答!

Huchong Li:

回复 Ternence_Hsu:

重发管脚复用的表格

Huchong Li:

回复 Huchong Li:

找到原因了,应该是改成

/* 60 */     BIT(0), BIT(0), BIT(3), BIT(0),

/* 64 */     BIT(3), BIT(0), BIT(0), BIT(0),

因为前面引脚的编号是每行的结束编号,不是起始编号。

谢谢!

赞(0)
未经允许不得转载:TI中文支持网 » DM8148的控制台串口如何从uart0改成uart2?
分享到: 更多 (0)