工具/软件:Code Composer Studio
您好!
SDK:simplelink_cc32xx_sdk_4_10_00_07
我正在使用 UART1发送文件, ,当波特率太高时,将发生异常。
回调函数返回 UART1_STATUS_EOVERRUN (FIFO 溢出)、并且我无法使用串行助手发送文件数据。
当前波特率:921600
问题是什么?
此致、
Kevin
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.
工具/软件:Code Composer Studio
您好!
SDK:simplelink_cc32xx_sdk_4_10_00_07
我正在使用 UART1发送文件, ,当波特率太高时,将发生异常。
回调函数返回 UART1_STATUS_EOVERRUN (FIFO 溢出)、并且我无法使用串行助手发送文件数据。
当前波特率:921600
问题是什么?
此致、
Kevin
尊敬的 Kevin:
虽然我在超过921600的极高数据速率下使用了 UART 外设硬件、但我以前没有遇到过 CC3235的 FIFO 溢出错误。 我使用它的最大值是1228800、没有任何错误、因此您的软件中很可能存在一些瓶颈、从而导致您的问题。
您的 UART 代码是什么样的? 您是否只是在循环中调用 UART_write()来发送数据?
您使用的是哪种 UART 驱动程序? 您使用的是 UART 驱动程序、选择了 DMA 选项的 UART 驱动程序还是 UART2驱动程序?
如果您使用的是 UART2驱动程序、能否切换到将 UART 驱动程序与 DMA 配合使用并查看这是否有用?
此外、通过查看驱动程序、似乎未定义 UART1_STATUS_EOVERRUN。 您是指 UART2_STATUS_EOVERRUN? 看起来、错误代码似乎在驱动程序代码实现中未使用。
此致、
Michael
您好、Michael、
感谢您的回复。我正在使用 UART2驱动程序。
稍后我将 UART 驱动程序与 DMA 一起使用时、异常发送和接收的问题已经解决。
根据 uartecho 进行了修改, 我需要 uart2的部分返回模式。连续传输文件时,高波特率下会出现异常。
这里只是为了确定接收到的字节数量和 传输的字节数量是否一致、并且没有进行其他处理。
根据当前测试结果、在 SDK 提供的 UART API 上、连续文件传输可支持的最大波特率为256000。
如果波特率进一步超过256000、将发生串行端口 FIFO 溢出错误。
您能不能解决我的困惑?
此致、
Kevin