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.

[参考译文] RTOS/CC2640R2F:UART_Open 仅返回0x000000

Guru**** 2589245 points


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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/601379/rtos-cc2640r2f-uart_open-return-only-0x000000

器件型号:CC2640R2F

工具/软件:TI-RTOS

大家好、

也许您已经知道我的问题:我无法打开 UART 进行通信。 我在普通 sensortag (Stack 2.1)上执行相同的操作、没有问题、但在新硬件(simplelink_cc2640r2_sdk_1_35_00_33 stack)-> LAUNCHXL_CC2640R2上无法打开 UART

SimpleBLECentral_init(){
//初始化 UART
UART_Params_init (&SbpUartParams);

SbpUartParams.readMode = UART_MODE_CALLBACK;
SbpUartParams.readCallback = UART_ReadCallback;
SbpUartParams.writeCallback = UART_WriteCallback;
SbpUartParams.readReturnMode = UART_RETURE_NEWLINE;
SbpUartParams.budrate=115200;


SbpUartHandle = UART_OPEN (CC2640R2_LAUNCHXL_UART0、&SbpUartParams);//返回:SbpUartHandle = 0x000000
UART_READ (SbpUartHandle、UART_ReadBuf、2);//设备在此处挂起,因为尝试使用闭合的句柄进行读取。

} 

我可以做什么,或者我做什么错了?

我使用 blestack->central 示例。

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

    UARTCC26XX.c:

    /*通过引脚驱动器打开并分配引脚*/
    object->hPin = PIN_open (&object->pinState、uartPinTable);

    /*是已分配的引脚*/
    if (!object->hPin){
    返回 false;


    在这里、返回时我始终得到一个 false。 我不知道为什么。 此时我尝试所有引脚、可能我发现2个引脚尚未对焦。 这些引脚不用于整个应用。 但司机说:“他们被使用了”
    是否有任何方法可以确定引脚的用途?

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

    您是否对 Simple Central 项目进行了任何修改?

    您可以在 CC2640R2_LAUNCHXL.c 文件中查看正在使用哪些引脚。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Rachel、

    感谢您的回复。

    我能够解决这个问题。 我的问题是,我将主板文件移到了 src->app 文件夹中,因为主板文件是从所有应用程序中使用的。 我不知道为什么,但我有一些失败。 因为如果我包含原始文件(相同的文件、但其他文件夹)、UART 就会打开。 我使用 CC2640R2_LAUNCHXL.c 重写 board.c、现在它可以正常工作。

    感谢您的支持!

    此致、

    罗马