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:ERROR_PolicyMin

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1514534/cc1352r-error_policymin

器件型号:CC1352R

工具/软件:

您好:

我 使用 UART 作为回调、并通过串行接口使用 python 脚本获取数据。  数据不会被读入、而  是直接进入 Error_PolicyMin 中。  

有人能解释为什么吗?  

C 代码:

/*
*========= callbackFxn ========
*通过 UART 读取数据时调用函数
*/
void callbackFxn (UART2_handle handle、void *缓冲器、size_t 计数、
void *userArg、int_fast16_t 状态)

IF (STATUS!= UART2_STATUS_SUCCESS)

/* UART2_READ()中出现 RX 错误*/
printf ("UART RX error:%d\n"、status);

}

numBytesRead = count;//读取字节数
SEM_POST (&SEM_UART);// Erhöht 信标 um 1 -> Anderer Thread darf weiterarbeiten
}

/*
*========= UART_MAIN ========
*/
void *MAIN_UART (void *arg0)

uint8_t buffer[uart_buffer_size];/* UART 缓冲区*/
UART2_Handle UART;
UART2_Params uartParams;
int32_t semStatus;
uint32_t status = UART2_STATUS_SUCCESS;

/*调用驱动程序初始化函数*/
gpio_init ();

/*创建信标、0表示信标已锁定*/
semStatus = SEM_INIT (&SEM_UART、0、0);
printf ("semStatus error:%d\n"、semStatus);
if (semStatus!= 0)

/*创建信标时出错*/
printf ("semStatus error:%d\n"、semStatus);
}

/*在回调读取模式下创建 UART */
UART2_Params_init (&uartParams);
uartParams.readMode = UART2_Mode_callback;
uartParams.readCallback = callbackFxn;
uartParams.baudrate = 115200;

UART = UART2_OPEN (CONFIG_UART2_0、&uartParams);

IF (UART = NULL)

/* UART2_OPEN ()失败*/
printf ("UART_open 错误:%d\n"、UART);
}

/*循环永久回显*/
while (1)

numBytesRead = 0;
printf ("vor UART Read");
/*为 bytesRead 传递 NULL、因为它未在本示例中使用*/
STATUS = UART2_READ (UART、缓冲器、sizeof (缓冲器)、NULL);// UART 配置为回调->如果读取完成、则调用 callbackFxn
printf ("每个 UART 读取");
IF (STATUS!= UART2_STATUS_SUCCESS)

/* UART2_READ()失败*/
printf ("UART RX error:%d\n"、status);

}

printf ("vor SEM_WAIT");
/*等待 UART-READ 回调(callbackFxn)执行并释放 SEM_UART*/
SEM_WAIT (&SEM_UART);//

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

    您好、David:

    您似乎从 uart2callback 示例启动了工程。 这是正确的吗? 示例是否正常运行?

    我是否可以正确理解、在您运行程序时、它可以正常运行、直到您使用 python 脚本来从 PC 发送 UART 数据。 您得到的是在读取回调中?

    请检查连接参数(波特率、奇偶校验、停止位、流控制)。 它们需要在 python 脚本中设置、并配置为用于嵌入式 UART。

    此致、
    Theo

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

    我 尝试了 Callback2Uart Project、因为它正在使用相同的 python 脚本运行。  

    我将 Task-STACKSIZE 增加到2048、但没有任何变化。  

    为了 更好地理解、 当从脚本发送第一条 UART 消息时、我调试了代码并在以下位置执行了错误策略:SEM_WAIT (&SEM_UART)。  因此、Error_policy 仅在传入 UART 消息之后执行。 当未接收到 UART 消息时、代码正常运行。  

    我希望你能帮我解决这个问题。  
     

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

    您好、David:

    您能否验证 python 脚本是否使用与嵌入式 UART 配置相同的 UART 设置(波特率、奇偶校验、停止位、流控制) 

    当您说调试时:您是通过活动调试会话运行器件、还是在未连接调试会话的情况下运行器件时也会发生错误?

    此致、
    Theo