05-08-2014 11:49 AM
BIll,
Incrementing the contents of the shift register inside a state qualifies, because (1) the change is determined by the contents of the current state and (2) the programmer could easily change it to do something else. For example increment when a voltage is below a lower threshold, decrement if the voltage is above an upper threshold, and no change when it is between the thresholds.
Using the "i" value moves the determination of the next state outside the current state which is why we do not consider that to be a state machine.
Lynn
05-08-2014 11:59 AM
I completely agree with Lynn's assessment.
Bill, I appreciate your messages back and forth on this. I'm not going to claim I'm correct on what the exact definition of a state machine is. But this thread has given me the means to put down in writing the concepts I've been building in my head through the years as to what a state machine is and isn't.
05-08-2014 12:09 PM
@RavensFan wrote:
I completely agree with Lynn's assessment.
Bill, I appreciate your messages back and forth on this. I'm not going to claim I'm correct on what the exact definition of a state machine is. But this thread has given me the means to put down in writing the concepts I've been building in my head through the years as to what a state machine is and isn't.
At the same time, you two are hleping me to do the same thing. I am following your trains of thought and they seems pretty logical.. I had some abstract notions of just what a state machine is; now I have some very concrete examples and reasons. You are helping me to become a better CLD.
05-08-2014 12:35 PM
Look at the Wikipedia article on "Finite-state machine". It does a pretty good job of describing the concepts and some implementations.
Lynn