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

EK-TM4C123GXL: 急!!!UART冲突,UART1、3、4、5的传感器正常运行,但是当UART2串口引脚接上相应的传感器后,其他传感器就无法正常工作了。断开UART2后立马恢复正常。

Part Number:EK-TM4C123GXL

如题,谢谢您~

Susan Yang:

这个的话,建议您在线调试一下

1 先单独使用UART2,看是否可以正常工作

2 查看是否有引脚冲突或者中断抢占等问题

,

Xu Yuchen:

您好,单独调试UART2是正常工作的。我们用的是不同的UART串口,这种情况下会出现中断抢占的情况吗?

我已经通过delay()函数间隔开各个串口的通信,成功运行了代码。但是还是不理解为何会出现串口冲突的情况。

,

Susan Yang:

Xu Yuchen 说:我们用的是不同的UART串口,这种情况下会出现中断抢占的情况吗?

每个硬件uart相互独立,可以同时接收数据。但是只有一个内核,因此 mcu 必须按顺序读取数据

Xu Yuchen 说:单独调试UART2是正常工作的

请问您使用的是launchpad?能否贴出该launchpad的照片(包括版本号)?

您使用的UART引脚是哪个?

,

Xu Yuchen:

是的,EK-TM4C123GXL launchpad。

不知您说的版本号在哪里标示。UART2引脚是RX(2)-PD_6,TX(2)-PD_7,

UART1引脚是RX(1)-PB_0,TX(1)-PB_1,

UART3引脚是RX(3)-PC_6,TX(3)-PC_7,

UART5引脚是RX(5)-PE_4,TX(5)-PE_5。

(UART4未使用,标题写错)

,

Susan Yang:

谢谢您的反馈。看原理图上该RX(2)-PD_6,TX(2)-PD_7没有做特殊应用,理论上是使用没问题的。

建议您在单独的UART2上再依次加入UART1、3、5看在哪一步出现问题

,

Xu Yuchen:

您好,使用UART1和UART2时没有问题,再加上使用UART3就会出现问题。但是如果在不同串口收发数据时添加足够长的延时,就可以继续使用。

以我的理解不同串口之间是不冲突的,之前也有过同时进行的经验,现在就是不理解为什么会出现问题。

,

Susan Yang:

Xu Yuchen 说:以我的理解不同串口之间是不冲突的,

是的,他们是不冲突的

Xu Yuchen 说:再加上使用UART3就会出现问题。

应该是MCU没有来得及处理各个串口的中断或数据等

,

Xu Yuchen:

Susan Yang 说:应该是MCU没有来得及处理各个串口的中断或数据等

您的意思是,确实需要添加足够的延时让MCU去处理串口数据吗?delay()函数会不会也占用MCU的资源

,

Susan Yang:

是的,如果数据过多或者串口中断服务函数内需要执行的操作很多的话,是需要加足够延时的

,

Xu Yuchen:

收到,谢谢您。

,

Susan Yang:

不客气~

赞(0)
未经允许不得转载:TI中文支持网 » EK-TM4C123GXL: 急!!!UART冲突,UART1、3、4、5的传感器正常运行,但是当UART2串口引脚接上相应的传感器后,其他传感器就无法正常工作了。断开UART2后立马恢复正常。
分享到: 更多 (0)