#include #include "childFSM.h" #include "parentFSM.h" #include "FSM_public.h" 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}; int main(){ cFSM = createChildFSM(); pFSM = createParentFSM(); registerChildFSM(pFSM, cFSM, 2); ((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; } Step(pFSM); printf("\n"); } return 0; }