求高人指点按键扫描的思想

2020-01-30 13:57发布

本人是刚接触单片机的菜鸟,现在想做个小模块。
是这样的,有A,B,C三件事,通过一个按键在A,B,C之间选择,当按1下,执行A;再按1下,执行B;再按1下,执行C;再按1下,又回到A.其中有个D函数是A,B,C都得调用它,也就是A要完成A的事要调用D,B要完成B的事要调用D,C要完成C的事要调用D;同时我用马老的状态机原理编了个键盘扫描的程序的程序可以用。
希望高人能指点下实现这些功能应该怎样弄
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
17条回答
xslff
2020-01-30 20:25
本帖最后由 xslff 于 2013-3-28 22:48 编辑
jswd0810 发表于 2013-3-28 20:15
你将A、B、C、D分别做成函数呀,在设置一个变量Key_num来统计按下1键的次数,当Key_num=4时,Key_num清零
v ...


void main()
{
     while(1)
    {
        key_scan();
        switch(Key_num)
        {
            case 1:
                A();
                D();
            break;
            case 2:
                B();
                D();
            break;
            case 3:
                C();
                D();
            break;
            default:
            break;
         }
     }
}