#ifndef servo_motor_h #define servo_motor_h // servo_motor.h // es - Input/Output general purpose board. {{{ // // Copyright (C) 2006 Dufour Jérémy // // Robot APB Team/Efrei 2004. // Web: http://assos.efrei.fr/robot/ // Email: robot AT efrei DOT fr // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // // }}} /** Module for controlling the servo motor for the totems. */ #include "common.h" /** All the states used to comunicate with this module. */ #define SRVM_LEFT_POS_IN 95 #define SRVM_LEFT_POS_OUT 130 #define SRVM_RIGHT_POS_IN 78 #define SRVM_RIGHT_POS_OUT 45 #define SRVM_TRASH_POS_OPEN 68 /* 44 */ #define SRVM_TRASH_POS_CLOSE 100 /* 64 */ /** Init the servo motor system. */ void servo_motor_init (void); /** Ask the servo motor to go to a position. * - servo_mask: mask for sensor ; * - servo_pos : desired position. */ void servo_motor_set_pos (uint8_t servo_mask, uint8_t servo_pos); /** What is your current position my dear servo motor ? * - servo_num : sensor number (not a mask) ; * - return : desired position. */ uint8_t servo_motor_get_pos (uint8_t servo_num); /** Open the trash. */ void servo_motor_open_trash (void); /** Close the trash. */ void servo_motor_close_trash (void); #endif // servo_motor_h