请教各位大神Uart 发送数据的问题:
最近配置了一个Uart,用于同PC端软件实现通信。
配置方法如下:
开发工具是CSS,使用CSS配置Hwi,在中断函数中响应Uart的Rx与Tx,并设定了响应属性。通过测试,可以产生中断,发送少量字符时没有问题,但是发送大量字符时在PC端软件没有检测收到数据。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
请教各位大神Uart 发送数据的问题:
最近配置了一个Uart,用于同PC端软件实现通信。
配置方法如下:
开发工具是CSS,使用CSS配置Hwi,在中断函数中响应Uart的Rx与Tx,并设定了响应属性。通过测试,可以产生中断,发送少量字符时没有问题,但是发送大量字符时在PC端软件没有检测收到数据。
检查下你的发送函数,TIVA有两个TX发送函数,一个是只往FIFO中填数据,一个是要等待FIFO有空位置再发。如果你调用的第一个,又没判断FIFO是否为空,就可能发生错误。少量数据因为FIFO未填满,所以是正确的。
我这边确实没有判断呢
目前我使用的是UARTFIFOLevelSet来设定Uart,使用UARTCharPut来发送数据,
UARTFIFOLevelSet函数就是你说的填数据函数吧?
那么另一个判断函数是哪一个呢?具体怎么使用呢?
之前加过延迟,问题不能解决,
问题发生不适100%再现的,反复多次后再现率比较高
刚才回复的内容我又确认了一下,我认为亲回复的两个函数说的是:UARTCharPutNonBlocking()与UARTCharPut()是吗?
目前我使用的是UARTCharPut(),我将它们改成了UARTCharPutNonBlocking(),但是问题还是会出现,会是什么原因呢?