Table driven Finite State Machine library based on the Harel state machine, supporting actions on transitions, state entry and state exit. Comes with example illustrating use with interrupts and timers. 03/01/2010 - fixed potential memory leak in DebugTrace.

Dependencies:   mbed

Committer:
snatch59
Date:
Sun Jan 03 11:56:03 2010 +0000
Revision:
0:918566a376fb

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
snatch59 0:918566a376fb 1 /*
snatch59 0:918566a376fb 2 * FiniteStateMachine. Table driven Finite State Machine library
snatch59 0:918566a376fb 3 * based on theHarel state machine, supporting actions on transitions, state
snatch59 0:918566a376fb 4 * entry and state exit.
snatch59 0:918566a376fb 5 *
snatch59 0:918566a376fb 6 * Copyright (C) <2009> Petras Saduikis <petras@petras.co.uk>
snatch59 0:918566a376fb 7 *
snatch59 0:918566a376fb 8 * This file is part of FiniteStateMachine.
snatch59 0:918566a376fb 9 *
snatch59 0:918566a376fb 10 * FiniteStateMachine is free software: you can redistribute it and/or modify
snatch59 0:918566a376fb 11 * it under the terms of the GNU General Public License as published by
snatch59 0:918566a376fb 12 * the Free Software Foundation, either version 3 of the License, or
snatch59 0:918566a376fb 13 * (at your option) any later version.
snatch59 0:918566a376fb 14 *
snatch59 0:918566a376fb 15 * FiniteStateMachine is distributed in the hope that it will be useful,
snatch59 0:918566a376fb 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
snatch59 0:918566a376fb 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
snatch59 0:918566a376fb 18 * GNU General Public License for more details.
snatch59 0:918566a376fb 19 *
snatch59 0:918566a376fb 20 * You should have received a copy of the GNU General Public License
snatch59 0:918566a376fb 21 * along with DebugTrace. If not, see <http://www.gnu.org/licenses/>.
snatch59 0:918566a376fb 22 */
snatch59 0:918566a376fb 23
snatch59 0:918566a376fb 24 #include <mbed.h>
snatch59 0:918566a376fb 25 #include "MyInterruptHandler.h"
snatch59 0:918566a376fb 26
snatch59 0:918566a376fb 27 int main()
snatch59 0:918566a376fb 28 {
snatch59 0:918566a376fb 29 MyInterruptHandler client;
snatch59 0:918566a376fb 30
snatch59 0:918566a376fb 31 while (true)
snatch59 0:918566a376fb 32 {
snatch59 0:918566a376fb 33 wait(5);
snatch59 0:918566a376fb 34 }
snatch59 0:918566a376fb 35
snatch59 0:918566a376fb 36 }