基于stm8的EC11旋转编码器的应用

2019-12-26 18:54发布

新人不会,请大神帮忙,写一个C语言程序
7条回答
xydang
2019-12-27 12:42 .采纳回答
貌似要加电容滤波,那个会有抖动
然后同时检测A上升沿跟下降沿,这样处理比较好:
void ec11_int_handler(void)
{
        if(gpio_read_pin(GPIO_A,PIN_12)){
                if(tmp != gpio_read_pin(GPIO_A,PIN_11)){
                        if(gpio_read_pin(GPIO_A,PIN_11))
                                value-=1;
                        else
                                value+=1;
                        printf("%d ",value);
                }
        }else{
                tmp = gpio_read_pin(GPIO_A,PIN_11);
        }
}

一周热门 更多>