微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI WIFI设计交流 > cc3200 uart 只接收16字节,该怎么解决?

cc3200 uart 只接收16字节,该怎么解决?

时间:10-02 整理:3721RD 点击:

请教大家, cc3200 uart  只接收16字节。  

UARTIntRegister(UARTA1_BASE, UARTIntHandler);

MAP_UARTFIFODisable(UARTA1_BASE);   //关闭串口FIFO

MAP_UARTIntEnable(UARTA1_BASE, UART_INT_RX);

中断函数处理:

if (status & UART_INT_RX) {

UARTIntClear(UARTA1_BASE, UART_INT_RX);

while (UARTCharsAvail(UARTA1_BASE)) {
cCharacter = UARTCharGet(UARTA1_BASE);
Report("=%d ", cCharacter);

}

}

测试时,另一端串口每次发送200个字节, 在中断函数中。 只能接收到16个字节

如果启用:

MAP_UARTIntEnable(UARTA1_BASE, UART_INT_RT);

可以接收到更多, 但是是无序,且丢失了数据。(另一端数据为:0-199)

请教,如何正确接收串口数据?

程序不完整,不好判断,可以参考例程里的那个程序的形式写个试试看。或许你的波特率有问题呢?

谢谢你的回复, 你有试过,cc3200和另一端进行UART通讯吗? USB转串口到 电脑端也可以。 当数据有点大的时候, 数据接收好像会有些问题。 

波特率不会有问题, 否则数据接收不正确。

问题解决了, 在UART中断中,不要使用 report()等比较耗时的函数。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top