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.

[参考译文] CC3235MODSF:UART 串行中断问题

Guru**** 2557530 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1071246/cc3235modsf-uart-serial-interrupt-issue

部件号:CC3235MODSF
“线程:测试”中讨论的其它部件

大家好,团队

关于最初的问题,客户已经确定了如下方法:

问: 实现从0x1002开始到0x1003结束的数据包接收。

步骤:  

a.准备用户缓冲区(Rx_my_Buf)。

b.配置串行端口参数:Readmode=UART 2_Mode_callback

c.执行 UART2_Read (句柄,Rx_my_Buf,sizeof (Rx_my_Buf))

d.在 readCallback 等回读函数中的实现:处理刚收到的许多数据,以及 bytesRead == ReadCount 时! 太棒了! 再次调用 UART2_READ()。 一路读取,读取数据被放置在 UART2驱动程序附带的 RingBuf 中,然后被放置在用户缓冲区 Rx_my_Buf 中。

e.当用户处理数据时,读取数据可以在 readCallback()处确定:如果标题为0x10 02,0x10或03末尾。 然后再次发送消息。

现在,客户想知道 RingBuf 的振铃缓冲区如何应对 DMA 的自动提升模式? 是否可以跨越 Ringbuf 的边界?

您可以帮您检查其他问题吗? 谢谢。

此致,

樱桃

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Cherry,

    我很抱歉,但我不完全理解步骤 A-E 您是否要求我回顾这些步骤并了解它们是否有意义? 我对客户的数据流不太熟悉,因此无法完全确定。 但是,使用 readCallback 来确定数据流的开始和结束是最有意义的。 客户似乎在正确的方向上。 我强烈建议实施,测试和重申。  

    [引用 userid="496057" url="~/support/wireless-connectivity /wi-fi-group/wi-fi /f/wi-fi-forume/1071246/cc3235modsf-UART 串行中断问题]\n 现在客户想知道 RingBuf 的振铃缓冲区如何处理 DMA 的自动提升模式? 是否可以跨越 Ringbuf 的边界?

    UART2驱动程序会隐藏应用程序中的环形缓冲区,因此只要应用程序获得中断/SEM_POSTs 并持续读取,则缓冲区就不应填充和过载。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,

    [引用 userid="313399" url="~/support/wireless-connectivity /wi-fi-group/wi-fi /f/wi-fi-forume/1071246/cc3235modsf-UART 串行中断问题/3964698#39646989]'我很抱歉,但我不完全理解步骤 A-E 您是否要求我回顾这些步骤并了解它们是否有意义? 我对客户的数据流不太熟悉,因此无法完全确定。 但是,使用 readCallback 来确定数据流的开始和结束是最有意义的。 客户似乎在正确的方向上。 我强烈建议实施,测试和重申。

    感谢你的帮助! 很抱歉,描述有误导性。 事实上,他们通过 A-E 步骤解决了最初的问题

    谢谢,致以诚挚的问候,

    樱桃