We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hai All,
Now I am working in finite state machines and Now I am in need of executing more than one finite state machines parallel.....and one FSM should be able to see the state of other FSM....that is one FSM state will be input of other FSM.......is it possible in 8051 programming.... FSM1 FSM2 .......FSMN
State1 State1 .......... State2 State2 .......... State3 State3 .......... . . . . StateN StateN ..........
As shown above there shall be N number of FSMs...in the system and each and every FSM shall share common input table and output table...each FSM transition condition shall be based on inputs and state of other FSM....
For example for FSM1 to transfer from State 1 to State 2...It needs input IP1=1 and IP2=0....and FSM2 should be in State 3..FSM3 should be in State2... FSM1 Current State:State 1 Transition1: State1-->State2 Condition: IP1=1 && IP2=0 && FSM2=State3 && FSM3=State2 Next State: State2
Like this I am in need of running a parallel FSMs to be executed...Kindly help me...... with regards, Karthik Ragunath.
Of course, there is no specific 8051 reason why you shouldn't make your state variables public so that everything can see them.
However, it sounds very much like you have a fundamentally flawed design here: if all the inputs and all the outputs and all the states are really shared, then you don't have separate state machines - you just have one big state machine!
I think you should probably revisit you system analysis and/or design...
Perhaps you should try googling for Hierarchical State Machines...
eg, www.state-machine.com/.../glossary.htm