PROP_ERROR_RXBUF错误 怎么解决
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.
还有个问题 看门狗计时结束后系统没有复位,调用SysCtrlSystemReset函数也不能复位
#include "bsp_watchdog.h" #define TIMEOUT_MS 1000 #define SLEEP_US 500000 /* * ======== watchdogCallback ======== */ void watchdogCallback(uintptr_t watchdogHandle) { /* * If the Watchdog Non-Maskable Interrupt (NMI) is called, * loop until the device resets. Some devices will invoke * this callback upon watchdog expiration while others will * reset. See the device specific watchdog driver documentation * for your device. */ myPrintf("Watchdog reset!\r\n"); usleep(SLEEP_US); SysCtrlSystemReset(); while (1) {} } /* * ======== gpioButtonIsr ======== */ void gpioButtonIsr(uint_least8_t index) { // GPIO_write(Board_GPIO_LED0, Board_GPIO_LED_ON); /* * Simulate the application being stuck in an ISR. This ISR can be * preempted by the watchdog Non-Maskable Interrupt (NMI). */ while (1) {} } void WatchdogTask(UArg arg0, UArg arg1) { Watchdog_Handle watchdogHandle; Watchdog_Params params; uint32_t reloadValue; /* Call driver init functions */ Watchdog_init(); /* Open a Watchdog driver instance */ Watchdog_Params_init(¶ms); params.callbackFxn = (Watchdog_Callback) watchdogCallback; params.debugStallMode = Watchdog_DEBUG_STALL_ON; params.resetMode = Watchdog_RESET_ON; watchdogHandle = Watchdog_open(Board_WATCHDOG0, ¶ms); if (watchdogHandle == NULL) { /* Error opening Watchdog */ while (1) {} } /* * The watchdog reload value is initialized during the * Watchdog_open() call. The reload value can also be * set dynamically during runtime. * * Converts TIMEOUT_MS to watchdog clock ticks. * This API is not applicable for all devices. * See the device specific watchdog driver documentation * for your device. */ reloadValue = Watchdog_convertMsToTicks(watchdogHandle, TIMEOUT_MS); /* * A value of zero (0) indicates the converted value exceeds 32 bits * OR that the API is not applicable for this specific device. */ if (reloadValue != 0) { Watchdog_setReload(watchdogHandle, reloadValue); } Power_disablePolicy(); while (1) { /* * Disabling power policy will prevent the device from entering * low power state. The device will stay awake when the CPU is * idle. */ // Power_disablePolicy(); /* Sleep for SLEEP_US before clearing the watchdog */ usleep(SLEEP_US); Watchdog_clear(watchdogHandle); // GPIO_toggle(Board_GPIO_LED0); /* * Enabling power policy will allow the device to enter a low * power state when the CPU is idle. How the watchdog peripheral * behaves in a low power state is device specific. */ // Power_enablePolicy(); // // /* Sleep for SLEEP_US before clearing the watchdog */ // usleep(SLEEP_US); // Watchdog_clear(watchdogHandle); // GPIO_toggle(Board_GPIO_LED0); } }
您好,
RF_cmdPropRx.maxPktLen已修改为正常通信的2倍 但是还出错
您修改了 maxPktLen,那您有没有修改相应的 packet size 和RF队列中数据条目的大小?
请问下怎么可以复位其状态 用RF_runCmd调用rfc_CMD_CLEAR_RX_t这个命令后卡死了
您这边指得是什么状态?RX commands 的状态?您不需要清空相关的命令。
看门狗计时结束后系统没有复位,调用SysCtrlSystemReset函数也不能复位
请参考看门狗的示例,有相关如何使用看门狗的方法介绍。要注意的是看门狗不会在standby模式下运行。
您好,
是这样的,您可以查看这个文档:Power.h File Reference (ti.com)