From d48d5c7cc17664c43c35429a7c5ff14aafcc999a Mon Sep 17 00:00:00 2001 From: godcreator02 Date: Tue, 2 Jul 2024 14:51:35 +0800 Subject: [PATCH] =?UTF-8?q?=E7=88=B6=E5=AD=90=E7=8A=B6=E6=80=81=E6=9C=BA?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=EF=BC=8C=E7=88=B6=E7=8A=B6=E6=80=81=E6=9C=BA?= =?UTF-8?q?during166=EF=BC=8C=E7=AC=AC=E4=B8=80=E6=AC=A1=E8=BF=9B=E5=85=A5?= =?UTF-8?q?=E5=AD=90=E7=8A=B6=E6=80=81=E6=9C=BA530=EF=BC=8C=E5=90=8E?= =?UTF-8?q?=E7=BB=ADduring=E5=AD=90=E7=8A=B6=E6=80=81=E6=9C=BA319=EF=BC=8C?= =?UTF-8?q?=E5=AD=90=E7=8A=B6=E6=80=81=E6=9C=BA=E7=8A=B6=E6=80=81=E5=8F=98?= =?UTF-8?q?=E5=8C=96416?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- test_on_28377/.cproject | 2 +- test_on_28377/main.c | 39 ++++++++++++++++++++++++++++++++++----- vscode/CMakeLists.txt | 4 ++-- 3 files changed, 37 insertions(+), 8 deletions(-) diff --git a/test_on_28377/.cproject b/test_on_28377/.cproject index a7ce628..203d62c 100644 --- a/test_on_28377/.cproject +++ b/test_on_28377/.cproject @@ -113,7 +113,7 @@ - + diff --git a/test_on_28377/main.c b/test_on_28377/main.c index b8276e0..44dcbae 100644 --- a/test_on_28377/main.c +++ b/test_on_28377/main.c @@ -63,9 +63,38 @@ void keyFSMTest(){ } } -typedef int (*fcn)(int, int); -int printtest(int a, int b){ - return a+b; + + +ChildFSM *cFSM; +ParentFSM *pFSM; + +enum ParentFSMSignals i[20] = {0, Signal_toA, Signal_toB,0,0,0,0,0, Signal_toC, Signal_toA, Signal_toB, Signal_toA}; +enum ChildFSMSignals j[20] = {0,0,Signal_toD,0,0,Signal_toE, Signal_toD, Signal_toE,0,0,0,0}; + +void childFSMTest(){ + cFSM = createChildFSM(); + pFSM = createParentFSM(); + + bind_ParentFSM_ChildFSMs(pFSM, (FSM *)cFSM); + + ((ParentFSMData *)GetData(cFSM))->external.x = 1; + + for (int k = 0; k < 15; k++) + { + printf("第%d次: ",k+1); + SetSignal(pFSM, i[k]); + SetSignal(cFSM, j[k]); + + if(k > 5){ + ((ParentFSMData *)GetData(cFSM))->external.x = 0; + } + + tic(); + Step(pFSM); + toc(index++); + + printf("\n"); + } } @@ -81,8 +110,8 @@ void main(void) GPIO_SetupPinMux(LED_BLINKY_GPIO, GPIO_MUX_CPU1, 0); GPIO_SetupPinOptions(INPUT_GPIO, GPIO_INPUT, GPIO_PULLUP); - keyFSMTest(); - +// keyFSMTest(); + childFSMTest(); } diff --git a/vscode/CMakeLists.txt b/vscode/CMakeLists.txt index 7d8bb29..198660d 100644 --- a/vscode/CMakeLists.txt +++ b/vscode/CMakeLists.txt @@ -6,8 +6,8 @@ include_directories(${PROJECT_SOURCE_DIR}/FSM_OOP/baseFSM) aux_source_directory(${PROJECT_SOURCE_DIR}/FSM_OOP/baseFSM SRC_FSM_OOP) -set(keytest 789) -#set(child_parent 789) +# set(keytest 789) +set(child_parent 789) if(DEFINED keytest) include_directories(${PROJECT_SOURCE_DIR}/FSM_OOP/keytest) aux_source_directory(${PROJECT_SOURCE_DIR}/FSM_OOP/keytest SRC_FSM_USR)