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.

[参考译文] CC1310:CC1310 GPTimer 问题。

Guru**** 2482105 points
Other Parts Discussed in Thread: CC1310

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

https://e2e.ti.com/support/wireless-connectivity/sub-1-ghz-group/sub-1-ghz/f/sub-1-ghz-forum/1253156/cc1310-cc1310-gptimer-issue

器件型号:CC1310

大家好、

以下是客户的请求:

CC1310使用 GPTimer、GPTimer 在开启后不能产生中断、具体代码如下:

//frequency control
void hzirqcallback(GPTimerCC26XX_Handle handle, GPTimerCC26XX_IntMask interruptMask)
{
    LEDOR();
}

void timerhz_init(void)
{
    GPTimerCC26XX_Params params;
    GPTimerCC26XX_Params_init(&params);
    params.width          = GPT_CONFIG_32BIT;
    params.mode           = GPT_MODE_PERIODIC_UP;
    params.debugStallMode = GPTimerCC26XX_DEBUG_STALL_OFF;
    Power_setDependency(PowerCC26XX_XOSC_HF); //Enable high-speed clock
    hztimer = GPTimerCC26XX_open(HZGPTIMERNUM, &params);
    
    GPTimerCC26XX_Value loadVal = 48000000 / hz - 1; //47999
    GPTimerCC26XX_setLoadValue(hztimer, loadVal);
    GPTimerCC26XX_registerInterrupt(hztimer, hzirqcallback, GPT_INT_TIMEOUT);
    timerhz_setstatus(0);
}

void timerhz_setstatus(uint8_t flag)
{
    if(flag == 1) //open frequency timer
    { 
        GPTimerCC26XX_start(hztimer);

    }
    else if(flag == 0) //off frequency timer
    {
        GPTimerCC26XX_stop(hztimer);
    }
}

void timerhz_sethz(uint8_t h)
{
    timerhz_setstatus(0);
    GPTimerCC26XX_Value loadVal = 48000000 / h - 1; //47999
    GPTimerCC26XX_setLoadValue(hztimer, loadVal);
}

调用 GPTimerCC26XX_START 后、无法生成中断的原因是什么? 如何判断计时器是否已启动?

您能帮助检查这个问题吗? 谢谢。

此致、                                                         

尼克

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

    您好、Nick。

    您可以在 CCS 上打开调试会话并检查计时器寄存器。 如果定时器正常工作、您可以看到定时器的值发生了更新。  

    请您提供最基本的项目、让我可以在办公桌上调试代码。 如果不编译和运行代码、很难在这里看到任何明显错误的东西。

    此致、

    SID