硬件开发板默认的uart为uart1,我遇到过这个问题,在Vivado里设置uart1,裸机上输出是没有任何问题,但是一旦我设置了两个uart,既uart0,uart1,SDK里helloworld都无法打印,一开始我以为是系统死掉了,但是我看到电流,是系统已经跑起来了,可是为什么没有输出。之后看了一下代码,发现了猫腻。



原因就在这了,E0000000为uart0的地址,修改为uart1的地址即可。
在Zynq7020开发板上,初始默认使用UART1进行裸机输出并无问题。然而,当尝试配置两个UART(UART0和UART1)时,SDK中的HelloWorld程序停止打印。虽然系统运行正常,但输出缺失。问题根源在于代码中E0000000是UART0的地址,需更改为UART1的地址以解决无输出问题。
硬件开发板默认的uart为uart1,我遇到过这个问题,在Vivado里设置uart1,裸机上输出是没有任何问题,但是一旦我设置了两个uart,既uart0,uart1,SDK里helloworld都无法打印,一开始我以为是系统死掉了,但是我看到电流,是系统已经跑起来了,可是为什么没有输出。之后看了一下代码,发现了猫腻。



原因就在这了,E0000000为uart0的地址,修改为uart1的地址即可。
2802
1426

被折叠的 条评论
为什么被折叠?