jw007 发表于 2023-8-15 15:17:35

外部中断1按下按键之后数码管跳变两次,请大佬看下怎么解决!!!

本帖最后由 jw007 于 2023-8-15 15:19 编辑


使用的是stc32实验箱 9.4
void EXTI1_Init(void)
{
      IT1 = 1;                        //1:下降沿触发 0:上升下降沿触发
      IE1 = 0;                        //1:外部中断1向CPU请求中断,当CPU响应外部中断时,由硬件清“O”IEO(边沿触发方式)。
      EX1 = 1;                   //允许中断


}

//========================================================================
// 函数名称: INT1_Isr
// 函数功能: 外部中断1
// 入口参数: @
// 函数返回:
// 当前版本: VER1.0
// 修改日期: 2023
//当前作者:
// 其他备注:
//========================================================================
void INT1_Isr(void) interrupt 2
{
      
      SEG1+= 1;
      if(SEG1 > 21)
                SEG1=0;
      

}



zhp 发表于 2023-8-15 17:52:37

按键按下和放开的瞬间都是有抖动的,需要进行去抖动处理

神农鼎 发表于 2023-8-15 21:36:12

开个定时器中断,10ms中断一次,连续读到50mS以上按下,算按下,读到松开20mS后再处理
页: [1]
查看完整版本: 外部中断1按下按键之后数码管跳变两次,请大佬看下怎么解决!!!