主题中讨论的其他器件:SysConfig
工具与软件:
大家好!
我需要 cc1352在 PWM 边沿上发出中断、但这似乎无法正常工作。 以下是代码的一个简单片段:
void Pulse_Call back ( GPTimerCC26XX_Handle hTimer, int_fast16_t nStatus )
{
//切换指示灯 LED
GPIO_TOGGLE ( CONFIG_GPIO_27_LED_2 );
}//结束" Pulse_Call back ()"
pwm_init();
PWM_Params_init (&pwmParams );
pwmParams.periodValue = 400;
// 50%占空比
pwmParams.dutyValue =( uint32_t )((( uint64_t ) PWM_DUTY_FRACTION_MAX * 50 )/ 100 );
PWM_Handle hPwm = PWM_OPEN (CONFIG_EXC_CLK、&pwmParams);
if ( hPwm == NULL )
{
// pwm_open()失败、在此停止
while (true);
}// endif
PWMTimerCC26XX_Object* pObject = hPwm ->对象;
GPTimerCC26XX_Handle hTimer = pObject -> hTimer;
//在 匹配时生成中断
GPTimerCC26XX_registerInterrupt (hTimer、(GPTimerCC26XX_HwiFxn) Pulse_Call back、GPT_INT_MATCH);
PWM_START ( hPwm );
//停止此处仅用于测试
while (1);
当 Pulse_Call 信号在所选输出上正确可见时(通过 SysConfig 确定)、永远不会达到 PWM B。 这永远不会与 GPTimerCC26XX_Interrupt 屏蔽(即使用 GPT_INT_TIMEOUT、GPT_INT_CAPTURE_MATCH 、GPT_INT_CAPTURE_MATCH 或 GPT_INT_MATCH )的值无关
我的错误在哪里?
谢谢!
真诚的路易吉