]> rtime.felk.cvut.cz Git - eurobot/public.git/commitdiff
robofsm: Remove fsmdisplay - it is unused now
authorMichal Sojka <sojkam1@fel.cvut.cz>
Fri, 23 Apr 2010 11:05:23 +0000 (13:05 +0200)
committerMichal Sojka <sojkam1@fel.cvut.cz>
Fri, 23 Apr 2010 11:05:23 +0000 (13:05 +0200)
src/robofsm/fsmdisplay.c [deleted file]
src/robofsm/robot.c

diff --git a/src/robofsm/fsmdisplay.c b/src/robofsm/fsmdisplay.c
deleted file mode 100644 (file)
index b8ed7f3..0000000
+++ /dev/null
@@ -1,322 +0,0 @@
-/**
- * @file       fsmdisplay.cc
- * @brief      FSM for uOLED display
- * @author     Martin Zidek
- *
- */
-#define FSM_DISP
-
-#include <robodata.h>
-#include <robot.h>
-#include <signal.h>
-#include <pthread.h>
-#include <unistd.h>
-#include <uoled.h>
-#include <string.h>
-#include <oledlib.h>
-#include <actuators.h>
-
-#define TRANS_LEN 300
-
-#ifdef DISPLAY_DEBUG
-   #define DBG(format, ...) printf(format, ##__VA_ARGS__)
-#else
-   #define DBG(format, ...)
-#endif
-
-/**
- * A thread for serial line communication.
- *
- * This thread is waititng for a character to be intercepted 
- * on the serial line, then the character is evaluated 
- * and appropriate EVENT is issued to inform the automaton.
- * @param arg
- *
- * @return
- */
-
-struct sercom_data *sercom;
-uint8_t msg[10];
-bool msg_waiting;
-bool wait_flag;
-uint8_t mode_to_go;
-
-enum {
-       LEFT=0,
-       RIGHT
-};
-
-void serial_comm(int status)
-{
-       uint8_t buff[10];
-       int  nr;
-
-       memset(buff, 0, 10);
-       nr = read(sercom->fd, buff, 10);
-
-       if(buff[0]==MSG_START_DISP) {
-               ROBOT_LOCK(disp);
-               memcpy(msg,buff,10);
-               msg_waiting = true;
-               ROBOT_UNLOCK(disp);
-//     printf("received serial msg: \n");
-//     for(i=0;i<nr;i++)
-//             printf("%d ",msg[i]);
-//     printf("\n");
-       }
-       
-       
-}
-
-int set_actuators(uint8_t actuator)
-{
-       switch(actuator) {
-//             case BRUSH_SERVOS:
-#if 0
-                       if(robot.orte.servos.brush_left==BRUSH_LEFT_OPEN) {
-                               brushes_in();
-                       }
-                       else {
-                               brushes_out();
-                       }
-#endif
-                       break;
-               default:
-                       break;
-       }
-       return 0;
-}
-
-void set_game_color(uint8_t col)
-{
-       if (col == BLUE)
-               robot.team_color = BLUE;
-       else
-               robot.team_color = YELLOW;
-}
-
-int process_msg(uint8_t *buff) {
-       switch(buff[1]) {
-               case SWITCH_TO_STATUS:
-                       uoled_switch_mode_rep(MODE_STATUS, CHANGE_MODE_STATUS);
-                       wait_flag = true;
-                       mode_to_go = MODE_STATUS;
-                       return MODE_STATUS;
-                       break;
-               case SWITCH_TO_CONTROL:
-                       uoled_switch_mode_rep(MODE_STATUS, CHANGE_MODE_CONTROL);
-                       wait_flag = true;
-                       mode_to_go = MODE_CONTROL;
-                       return MODE_CONTROL;
-                       break;
-               case SWITCH_TO_STATUS_DONE:
-                       wait_flag = false;
-                       mode_to_go = MODE_STATUS;
-                       return MODE_STATUS;
-                       break;
-               case SWITCH_TO_CONTROL_DONE:
-                       wait_flag = false;
-                       mode_to_go = MODE_CONTROL;
-                       return MODE_CONTROL;
-                       break;
-               case MSG_COLOR:
-                       printf("msg color: %d\n",buff[2]);
-                       set_game_color(buff[2]);
-                       break;
-               case MSG_LIFT_CAL:
-                       printf("msg lift cal\n");
-                       break;
-               /* Eurobot 2009:
-               case MSG_PUSHER_IN:
-                       act_pusher(PUSHER_INSIDE);
-                       break;
-               case MSG_PUSHER_OUT:
-                       act_pusher(PUSHER_OUTSIDE);
-                       break;
-               case MSG_LIFT_UP:
-                       printf("msg lift up\n");
-                       break;
-               case MSG_LIFT_DOWN:
-                       printf("msg lift down\n");
-                       break;
-               */
-               case MSG_CMU_INIT:
-                       printf("msg cmu init\n");
-                       break;
-               case MSG_START_ACT:
-                       printf("dislay: start\n");
-                       FSM_SIGNAL(MAIN, EV_START, NULL);
-                       break;
-               case MSG_INIT:  /* FIXME: EXIT */
-                       printf("display: robot_exit\n");
-                       robot_exit();
-                       break;
-               case MSG_STATUS:
-                       printf("display: status\n");
-                       break;
-               case MSG_RESTART: /* FIXME: RESTART ALL */
-                       printf("display: restart\n");
-                       system("killall ortemanager");
-                       system("killall cand");
-                       system("killall hokuyo");
-                       robot_exit();
-                       break;
-               default:
-                       break;
-       }
-       return -1;
-}
-
-
-FSM_STATE_DECL(init);
-FSM_STATE_DECL(control);
-FSM_STATE_DECL(status);
-FSM_STATE_DECL(set_init_mode);
-FSM_STATE_DECL(wait_for_mode_switch);
-
-FSM_STATE(init) 
-{
-
-       if (FSM_EVENT == EV_ENTRY) {
-               msg_waiting = false;
-               sercom = robot.sercom;
-#ifdef DISPLAY_DEBUG
-               fsm->debug_states = 1;
-#endif
-               FSM_TRANSITION(status);
-       }
-}
-
-/* FIXME: this state is unused */
-FSM_STATE(set_init_mode)
-{
-       switch(FSM_EVENT) {
-               case EV_ENTRY:
-                       DBG("switching mode\n");
-                       uoled_switch_mode_rep(MODE_STATUS, CHANGE_MODE_STATUS);
-                       DBG("mode switched\n");
-                       FSM_TIMER(500);
-                       break;
-               case EV_TIMER:
-                       DBG("timer hit\n");
-                       FSM_TRANSITION(status);
-                       break;
-               default:
-                       break;
-       }
-}
-
-FSM_STATE(status)
-{
-       uint8_t buff[10];
-       uint8_t ret;
-
-       switch (FSM_EVENT) {
-               case EV_ENTRY:
-                       uoled_switch_mode_rep(MODE_STATUS, CHANGE_MODE_STATUS);
-                       DBG("entry to status\n");
-                       FSM_TIMER(TRANS_LEN);
-                       break;
-               case EV_TIMER:
-                       ret = uoled_send_status(&robot);
-                       if(ret == -1)
-                               printf("send failed\n");
-                       ROBOT_LOCK(disp);
-                       if(msg_waiting) {
-                               memcpy(buff, msg, 10);
-                               msg_waiting = false;
-                               ROBOT_UNLOCK(disp);
-                               ret = process_msg(buff);
-                               switch(ret) {
-                                       case MODE_CONTROL:
-//                                             mode_to_go = MODE_CONTROL;
-//                                             wait_flag = false;
-                                               FSM_TRANSITION(wait_for_mode_switch);
-                                               break;
-                                       default:
-                                               break;
-                               }
-                       }
-                       else {
-                               ROBOT_UNLOCK(disp);
-                       }
-                       FSM_TIMER(TRANS_LEN);
-                       break;
-               default:
-                       break;
-       }
-}
-
-FSM_STATE(control)
-{
-       uint8_t buff[10];
-       int ret;
-
-       switch (FSM_EVENT) {
-               case EV_ENTRY:
-                       uoled_switch_mode_rep(MODE_CONTROL, CHANGE_MODE_STATUS);
-                       FSM_TIMER(TRANS_LEN);
-                       break;
-               case EV_TIMER:
-                       ret = uoled_send_control(&robot);
-                       ROBOT_LOCK(disp);
-                       if(msg_waiting) {
-                               memcpy(buff, msg, 10);
-                               msg_waiting = false;
-                               ROBOT_UNLOCK(disp);
-                               switch(process_msg(buff)) {
-                                       case MODE_STATUS:
-//                                             mode_to_go = MODE_STATUS;
-//                                             wait_flag = false;
-                                               FSM_TRANSITION(wait_for_mode_switch);
-                                               break;
-                                       default:
-                                               break;
-                               }
-                       }
-                       else
-                               ROBOT_UNLOCK(disp);
-                       FSM_TIMER(1000);
-                       break;
-               default:
-                       break;
-       }
-}
-       
-
-FSM_STATE(wait_for_mode_switch)
-{
-       uint8_t buff[10];
-
-       switch (FSM_EVENT) {
-               case EV_ENTRY:
-                       FSM_TIMER(500);
-                       break;
-               case EV_TIMER:
-                       ROBOT_LOCK(disp);
-                       if(msg_waiting) {
-                               memcpy(buff, msg, 10);
-                               msg_waiting = false;
-                               ROBOT_UNLOCK(disp);
-                               process_msg(buff);
-                       }
-                       else {
-                               ROBOT_UNLOCK(disp);
-                       }
-                       if(wait_flag) {
-                               uoled_switch_mode_rep(mode_to_go, CHANGE_MODE_STATUS);
-                               FSM_TIMER(500);
-                               break;
-                       }
-                       else {
-                               if(mode_to_go==MODE_STATUS)
-                                       FSM_TRANSITION(status);
-                               else if(mode_to_go==MODE_CONTROL)
-                                       FSM_TRANSITION(control);
-                       }
-                       break;
-               default:
-                       break;
-       }
-}
-
index cafea38d49abd13799f4e8de7494703eec68df71..3ea026d33a8220cc224c95bbed5e298871a1436e 100644 (file)
@@ -21,7 +21,6 @@
 #include <time.h>
 #include <unistd.h>
 #include "map_handling.h"
-#include <uoled.h>
 #include <string.h>
 #include "actuators.h"