问答

汇集网友智慧,解决技术难题

21ic问答首页 - 037E比较器来测过零,CMP没有动作的?

se ST struct Tru ni 比较器

037E比较器来测过零,CMP没有动作的?

zero9490797832022-10-31
你好。我037E比较器来测过零,[color=var(--text_link)][url=]CMP[/url]没有动作的?
          CMP_InitTypeDef CMP_InitStruct;       
          CMP_StructInit(&CMP_InitStruct);
       
                SYS_AnalogModuleClockCmd(SYS_AnalogModule_CMP0,ENABLE);
               
                CMP_InitStruct.CLK10_EN =ENABLE;                        //CMP0时钟使能
          CMP_InitStruct.FIL_CLK10_DIV16 = 16;         //比较器 1/0 滤波时钟分频
                CMP_InitStruct.FIL_CLK10_DIV2 = 0;          //比较器 1/0 滤波时钟分频 0:1 分频
                CMP_InitStruct.CMP_HYS = CMP_HYS_20mV;//// 比较器回差选择            0:回差20mV 1:回差0mV
       
               
                CMP_InitStruct.CMP0_IE = ENABLE;                        //CMP0中断使能
                CMP_InitStruct.CMP0_IN_EN = ENABLE;         //比较器 0 信号输入使能
                CMP_InitStruct.CMP0_IRQ_TRIG  = 0 ;                //0:电平触发,1:边沿触发
                CMP_InitStruct.CMP0_POL = 1;               
                CMP_InitStruct.CMP0_SELP        = CMP_SELP_IP0;        // 比较器 0 信号正端选择
                CMP_InitStruct.CMP0_SELN =        CMP_SELN_IN;        // 比较器0信号负端选择
       
               CMP_Init(&CMP_InitStruct);
                NVIC_SetPriority(CMP_IRQn, 0);    /* 设置CMP_IRQn中断优先级为0 | 共0,1,2,3四级中断优先级,0为最高*/
回答 +关注 14
948人浏览 1人回答问题 分享 举报
1 个回答
  • 比较器中断进入了吗,还有CMP中断的标志位判断更改了吗,还有比较中断判断比较器输出的if语句内容该了吗?MCPWM的FALL的FALL0事件使能了吗?如果还不行可以使用我们各模块例程中的CMP例程单独测试一下。

您需要登录后才可以回复 登录 | 注册