00001 #include "robot.h" 00002 #include <fsm.h> 00003 #include <unistd.h> 00004 00005 FSM_STATE(state1) 00006 { 00007 FSM_TIMER(1000); 00008 switch(FSM_EVENT) { 00009 case EV_STATE_ENTERED: 00010 case EV_INIT: 00011 printf("Zacinam\n"); 00012 break; 00013 case EV_TIMER: 00014 printf("Timer\n"); 00015 default:; 00016 } 00017 } 00018 00019 int main() 00020 { 00021 struct robo_fsm fsm; 00022 fsm_init(&fsm, "timer_test"); 00023 fsm.state = &fsm_state_state1; 00024 if (fsm_start(&fsm, NULL) != 0) { 00025 perror("fsm_start"); 00026 exit(1); 00027 } 00028 sleep(1000); 00029 return 0; 00030 }