From 6f4e8c1c89e4408a4ded739ddd2ff90e732c7988 Mon Sep 17 00:00:00 2001 From: godcreator <974980621@qq.com> Date: Tue, 23 Jan 2024 23:38:07 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A5=BD=E4=BA=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FSM_OOP/usr/keyFSM.c | 1 + FSM_OOP/usr/keyFSM_private.h | 1 + main.c | 3 ++- 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/FSM_OOP/usr/keyFSM.c b/FSM_OOP/usr/keyFSM.c index 1529f94..69c7806 100644 --- a/FSM_OOP/usr/keyFSM.c +++ b/FSM_OOP/usr/keyFSM.c @@ -40,6 +40,7 @@ static void initData(KeyFSM *pFSM){ // 必须重新实现 data->countMultiDown = 0; data->in = Up; data->out = Idle; + data->isLastHolding = 0; pFSM->base.data = data; } diff --git a/FSM_OOP/usr/keyFSM_private.h b/FSM_OOP/usr/keyFSM_private.h index 1d1c229..2f65fbc 100644 --- a/FSM_OOP/usr/keyFSM_private.h +++ b/FSM_OOP/usr/keyFSM_private.h @@ -208,6 +208,7 @@ const static char *eventStr[] = { "PhsicalDown", "PhsicalUp", "DelayCount5", + "HoldCount10", }; static void printFSM(KeyFSM* pFSM){ printf("\tKeyFSM: "); diff --git a/main.c b/main.c index 8c0a806..af9d6a5 100644 --- a/main.c +++ b/main.c @@ -3,7 +3,7 @@ #include "keyFSM.h" #include "FSM_public.h" -#define NUM 40 +#define NUM 50 // KeyIn testin[NUM] = { // Up,Up,Up,Up,Up, Up,pDown,pDown,pDown,Up, pDown,pDown,pDown,pDown,pDown, // pDown,pDown,pDown,Up,Up, pDown,pDown, @@ -12,6 +12,7 @@ KeyIn testin[NUM] = { Up,Up,pDown,pDown,Up, pDown,pDown,pDown,pDown,pDown, + pDown,pDown,pDown,Up,Up, pDown,pDown,pDown,pDown,pDown, pDown,pDown,pDown,pDown,pDown, pDown,pDown,pDown,pDown,pDown,