Part Number:CC2642R
Hi ,您好,关于uart配置我有一些疑问,《CC13x2, CC26x2 SimpleLink Wireless MCU》中的解释比较笼统,希望可以详细解释一下,十分感谢!
1、如上图所示,如果trigger等级配置成⅞,那么会在接收多少个字节后产生一个中断?这个配置向在实际收发数据时,不同的配置项会有什么区别,比如会增大系统中断次数等这方面的影响?
2、syscfg中的Ring buff size设置项:如果每次收发的数据大小固定为128字节,Rx / Tx Ring buff size设置为32字节,收发数据会有丢包的问题吗?对比Rx / Tx Ring buff size设置为128字节,每次收发128字节的数据有什么区别?不同的配置项会有哪些影响?
snail leo:
问题一在《CC13x2, CC26x2 SimpleLinkTm Wireless MCU》中的位置:21.4.5 FIFO Operation
,
Alex Zhang:
使用UART2_read和/或UART2_write函数时,必须始终使用固定长度。 但是,在执行读取操作时,可以使用UART2_ReadReturnMode_PARTIAL。 例如,这允许您设置100字节的固定长度,但如果通过UART接收的数据只有20字节, 然后,读取操作将返回20个字节,以进一步了解部分返回模式的工作方式,请参阅您正在使用的SDK中UART2驱动程序的文档
https://dev.ti.com/tirex/explore/content/simplelink_cc13xx_cc26xx_sdk_7_10_01_24/docs/drivers/doxygen/html/_u_a_r_t2_8h.html
文档链接我在这边为您附上。
您这边可以参考以上两个例程,希望可以帮助到您。
,
snail leo:
你好,我想了解的是下图uart配置项的具体意义,API使用方法我已经清楚了
1、如上图所示,如果 Interrupt FIFO Threshold 等级配置成⅞,那么会在接收多少个字节后产生一个中断?这个配置向在实际收发数据时,不同的配置项会有什么区别,比如会增大系统中断次数等这方面的影响?
2、syscfg中的Ring buff size设置项:如果每次收发的数据大小固定为128字节,Rx / Tx Ring buff size设置为32字节,收发数据会有丢包的问题吗?对比Rx / Tx Ring buff size设置为128字节,每次收发128字节的数据有什么区别?不同的配置项会有哪些影响?
,
Alex Zhang:
您好,我已经联系了e2e工程师,这需要一些时间来查看您的问题,谢谢。
,
Alex Zhang:
为了使 UART 生成中断,您需要考虑 UART 当前处于什么模式(例如非阻塞或阻塞)以及 TX/RX 中断 FIFO 阈值设置为什么值。有关 TI 驱动程序 API 的一些有用信息,请参阅UARTCC26XX.h 文件参考,该文件提供了有关函数、FIFO 和用例的一般行为的一些有用的见解。
如果您打算使用特定值,请在 Display/UART2 UART 之间共享该值;因此,在本例中,由于数据大小 128 大于 32,因此也将 UART2 设置为 128。
对于配置选项,展开“?” 位于 UART2 旁边(已添加 1 个),它将为您提供有关使用 UART2 驱动程序 API 的有用信息。
在TRM第 1860 页左右,如果您需要该信息,它提供了有关 UART 和 UART FIFO 寄存器的 FIFO 操作的更多信息。
FIFO阈值定义如下:TX 1/8 将在 4 个字节后生成中断,RX 4/8 将在 16 个字节后生成中断。
一些有用的代码参考,如“ UART2_getRxCount”可以在 UART2.h 文件中找到。