debounce state diagram FSM

D

Default User

CBFalconer said:
What baffles me is that here is a whole list of people complaining,
and not one of them sets the follow-up marker (except me). I am
wondering if there is something in the readers or servers involved.


As I mentioned elsewhere, I don't feel it's appropriate. The only
reason I see to set follow-ups is when attempting to move a thread to a
new group (not in the original distribution).

Setting follow-ups does nothing for where YOUR post appears. If it's
not appropriate for replies to yours to appear in group X, then your
post wasn't appropriate either.

The correct action is to remove group X from your post's distribution.
That's what I did in a couple of early, "please don't post replies to
clc" messages.

These, where we're discussing what I consider to be metatopics, retain
clc (I added it back).





Brian
 
R

Rich Grise

Rich Grise wrote:



People keep saying this like it's some sort of magic. All that does
direct replies to THAT message to certain groups. It has jack to do
with the thread.

Then change the "Newsgroups" field, like I've done with this post.

Good Luck!
Rich
 
F

Flash Gordon

Rich Grise wrote, On 03/05/07 19:36:
So, change the "Newsgroups" field in the post that you're actually
posting, and to hell with the followups!

See what I've done here? Look at my headers. See? No crosspost.

That still does sod all good for the reason stated above. Restringing
where MY post goes, or where follow ups to it go, does NOT affect where
other messages go.
I also had to put that in by hand, since your "followups to" did,
in fact, default to everything but comp.lang.c - you simply have
to be smarter than your newsreader.

No, it did not default, it was explicitly changed. I know EXACTLY how to
use my news reader.

Try reading what was written.
 
F

Fred Bloggs

CBFalconer said:
petrus bitbyter wrote:

... snip ...

Obviously wrong.

Right- it doesn't take a minute to synthesize an actual logic circuit
for this pathetically trivial requirement which then demands no more
than a simian brain development to produce a so-called state diagram.
The OP is that aggravating wog muslim, Meetul, a sorry-assed excuse for
an engineering practitioner , so I did not bother expanding any further.
 
R

Richard Heathfield

Fred Bloggs said:
The OP is that aggravating wog muslim

Well well well, another entry for the killfile. Racism is a clear sign
of stupidity. Were stupidity curable by reason, that might be another
matter, but it isn't, so it isn't.
 
F

Fred Bloggs

Richard said:
Fred Bloggs said:




Well well well, another entry for the killfile. Racism is a clear sign
of stupidity. Were stupidity curable by reason, that might be another
matter, but it isn't, so it isn't.

Stupidity is more often demonstrated by those who claim to see "a clear
sign" all the time...
 
C

christian.bau

I'm designing a debounce filter using Finite State Machine. The FSM
behavior is it follows the inital input bit and thinks that's real
output until it receives 3 consecutive same bits and it changes output
to that 3 consecutive bit until next 3 consecutive bits are received.
A reset will set the FSM to output 1s until it receives the correct
input and ouput.

This is the test sequence with input and correct output.

1 0 0 1 0 1 0 0 0 1 0 1 1 1 (input)
1 1 1 1 1 1 1 1 0 0 0 0 0 1 (output)

The state diagram I came up has 6 states and it's named SEE1, SEE11,
SEE111, SEE0, SEE00, SEE000. I am getting stuck at 11th bit, a 0 in
the input. Because it just came from SEE1 and before SEE1, it came
from SEE000, so at SEE1 it can not change ouput to 1 which is what I
have specified that state's ouput to be.

Anyone knows how to solve this problem? Or maybe there's other better
ways to design the state diagram?

Just describe the states in C first: "output" is the debounced output
value; "contradictions" is the number of bits that were input that
could convince you to switch the output state.

int output = 1; // 0 or 1
int contradicitions = 0; // 0, 1, or 2

for (;;) {
int input = get_input ();
if (input == output) contradictions = 0;
else if (contradictions < 2) ++contradictions;
else { output = input; contradictions = 0; }
}

Clearly there are six states; fill in the transitions according to
what the algorithm does.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,576
Members
45,054
Latest member
LucyCarper

Latest Threads

Top