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.

[参考译文] CC1352R:UART 取消不能正常工作。

Guru**** 2481465 points
Other Parts Discussed in Thread: CC1352R

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1301377/cc1352r-uart-cancel-is-not-working-properly

器件型号:CC1352R

您好、专家!

目前我使用的是 CC1352r、我尝试关闭 UART 以降低功耗、在 尝试取消 UART 时出现了问题、读取请检查下面的代码

rf_yield (rfHandle);
display_printf (handle、0、0、"RX_Closed");
UART2_readCancel (UART);
UART2_rxDisable (UART);
display_printf (handle、0、0、"uart_closed");
UART2_Close (UART);
display_printf (handle、0、0、"all_ok");

我 在串行日志中看到 RX_CLOSED、但器件无法从 UART2_readCancel 函数退出、

UART2_Params_init (&uartParams);
uartParams.readMode = UART2_Mode_callback;
uartParams.readCallback = callbackFxn;
uartParams.baudrate = 9600;
uartParams.readReturnMode = UART2_ReadReturnMode_partial;

请告诉我需要执行什么操作才能进入低功耗、这里我使用了 rfUARTBridge 示例中使用的 UART_CALLBACK 没有信标...

此致

苏里亚

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

    您好、Surya:

    您正在使用哪个版本的 SimpleLink SDK?

    您能否指定具体意思: 器件无法从 UART2_readCancel 函数退出。

    您可以暂停调试会话并发布调用堆栈的屏幕截图吗?

    谢谢、

    M·H

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

    您好,

    感谢您的快速响应、

     我目前使用的 SDK 为 simplelink_cc13xx_cc26xx_sdk_6_30_01_03

    我的 cc1352在  UART2_readCancel 函数中生效... 在这里、我的器件意味着 cc1352r

    请让我知道我犯了什么错误...

    此致

    苏里亚

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

    您好、Surya:

    是否可能您使用与显示屏相同的 UART 外设?

    您是否可以在不使用显示 UART 的情况下重试?

    此致、

    马尔文

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

    您好、

    感谢您的回复、  

    否、我为 UART 和 DISPALY 使用不同的 GPIO。

    是的、当我的第二个器件(通过 UART 与 cc1352连接)无响应、但当我的第二个 器件通过 UART 进行响应时、一切正常、我尝试但消耗很大。

    此致

    苏里亚

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

    您好!

    是否检查 readCancel()是否返回任何内容? 该命令应返回"UART2_STATUS_ECANCELLD"。  

    如果它没有完成执行、您需要检查它被阻止的位置。 您可以进入调试模式、然后查看函数中它停止的位置。

    来自您上次的回复。  UART2_readCancel (UART)有时仅起作用、还是根本不起作用?

    此致、

    马尔文

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

    您好、 

    感谢您的回复、

    1.是的,它不会返回任何内容,因为控制器不会从  readCancel() 函数中退出。

    2. 很抱歉我对 CCS 不是很熟悉,所以请告诉我如何在调试模式下检查。

    3.在收到 UART 的数据时工作、没有收到 UART 的数据时工作。

    此致

    苏里亚

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

    https://software-dl.ti.com/ccs/esd/documents/users_guide/index.html

    上面的链接是 CCS 相关文档。 我建议您浏览一下。

    如果您在左上角的工具栏上看到一个绿色虫子。 按下它将使器件闪烁并打开调试模式。

    使用断点来停止函数中的程序、然后单步执行它以查看程序卡住的地方。

    相关文档在调试一章中详细介绍了如何执行此操作。  

    此致、

    马尔文

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

    您好、

    感谢您的回复、请告诉我、我在 UART 中使用了回调、 如果没有通过 UART 接收到任何数据、如何关闭 UART、因为器件发生了故障、而通过 UART 与 cc1352进行连接。

    关闭 UART 的原因、可降低功耗。

    此致

    苏里亚