请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:CC2652PSIP 工具与软件:
您好!
我尝试在边沿捕获模式下使用 gp 计时器、以便对数字脉冲进行计数。 是否有我可以参考的示例来实现该目的?
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.
工具与软件:
您好!
我尝试在边沿捕获模式下使用 gp 计时器、以便对数字脉冲进行计数。 是否有我可以参考的示例来实现该目的?
Chris、您好!
此处可能没有确切的示例、但我们可以尝试修改周期示例以使用边沿捕获:
(按下"GPTimer Driver"超链接以参考 SDK 文档)
GPTimerCC26XX_Handle hTimer; void timerCallback(GPTimerCC26XX_Handle handle, GPTimerCC26XX_IntMask interruptMask) { // interrupt callback code goes here. Minimize processing in interrupt. } void taskFxn(uintptr_t a0, uintptr_t a1) { GPTimerCC26XX_Params params; GPTimerCC26XX_Params_init(¶ms); params.width = GPT_CONFIG_16BIT; params.mode = GPT_MODE_PERIODIC; params.direction = GPTimerCC26XX_DIRECTION_UP; params.debugStallMode = GPTimerCC26XX_DEBUG_STALL_OFF; hTimer = GPTimerCC26XX_open(CC2650_GPTIMER0A, ¶ms); if(hTimer == NULL) { Log_error0("Failed to open GPTimer"); Task_exit(); } Types_FreqHz freq; BIOS_getCpuFreq(&freq); GPTimerCC26XX_Value loadVal = freq.lo / 1000 - 1; //47999 GPTimerCC26XX_setLoadValue(hTimer, loadVal); GPTimerCC26XX_registerInterrupt(hTimer, timerCallback, GPT_INT_TIMEOUT); GPTimerCC26XX_start(hTimer); while(1) { Task_sleep(BIOS_WAIT_FOREVER); } }
谢谢!
Alex F