l i n u x - u s e r s - g r o u p - o f - d a v i s
Next Meeting:
July 7: Social gathering
Next Installfest:
Latest News:
Jun. 14: June LUGOD meeting cancelled
Page last updated:
2006 Mar 08 10:52

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] general algorithm question for an embedded system
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] general algorithm question for an embedded system

On Tue, 07 Mar 2006 18:41:32 -0800
Jeff Newmiller <jdnewmil@dcn.davis.ca.us> wrote:

> "finite state machine"

Indeed, I love state machines. I've built entire projects around them.

Had to do some bit-twiddling radio communications (including generating
-- and detecting, of course -- Manchester coding) on a PIC micro once.
Boy, that was fun, let me tell you! Naturally I used a state machine,
as I was generating (and receiving) the bits on-the-fly. And, well, a
bunch of stuff. It was complex, and the most complex part was in the
battery-powered handheld remote, which had the least resources
available. (For speed I stored the next state directly as a pointer
rather than as an index for a case statement.) And naturally, after I
left they designed in a more sophisticated and faster radio system,
which means they took all that carefully designed and tuned code and
tossed it right out the window. *sigh*

State machines are particularly useful where you've got an
interrupt-driven system that needs to remember what it was doing last,
and what it needs to do next, based on current conditions and/or input,
because you're not sitting in a polling loop waiting for the next
event. Or anything where the events happen asynchronously. 

Like, debouncing and tracking the mute button.

Oh right, they changed that too. O_o
vox-tech mailing list

LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
O'Reilly and Associates
For numerous book donations.