请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:SIMPLELINK-CC13X2-26X2-SDK 工具与软件:
通过在 simplelink 7.10.01.24中使用 UART2、我们会在回调模式下启动 UART 传输时遇到多个事件回调。 这有点让人困惑、我们需要增加一些功能来应对。 在 Simplelink SDK 中的 UART2.c 第575行中、可以看到以下代码:
/* Invoke event callback if necessary */
if ((object->eventMask & UART2_EVENT_TX_BEGIN) && object->eventCallback)
{
object->eventCallback(handle, UART2_EVENT_TX_BEGIN, 0, object->userArg);
}
key = HwiP_disable();
/* Start TX transaction */
UART2Support_dmaStartTx(handle);
HwiP_restore(key);
在此、触发事件回调 UART2_EVENT_TX_BEGIN。 但是、它也会在 稍后调用的函数 UART2Support_dmaStartTx 内触发。 下面是 UART2CC26XX2.c 中的第612行:
if ((object->eventMask & UART2_EVENT_TX_BEGIN) && object->eventCallback)
{
object->eventCallback(handle, UART2_EVENT_TX_BEGIN, 0, object->userArg);
}
这是预期行为吗?