Projet Drone de surveillance du labo TRSE (INGESUP)

Dependencies:   mbed PID ADXL345 Camera_LS_Y201 ITG3200 RangeFinder mbos xbee_lib Motor Servo

os.h

Committer:
Gaetan
Date:
2014-03-19
Revision:
36:1bbd2fb7d2c8
Parent:
34:4466839f5bb7

File content as of revision 36:1bbd2fb7d2c8:

/* Copyright (c) 2012 - 2013 Gaëtan PLEYBER
 *
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED 
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT 
 * SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 
 * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, 
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
 /*
 * Description
 * Input
 * Output
 */


#define TASK_COM                    1      // Id for task 1 (idle task is 0)
#define TASK_COM_PRIO               5      // priority for task 1
#define TASK_COM_STACK_SZ        1000      // stack size for task 1 in words
#define TIMER_COM_ID                0       // Id for timer 0
#define TIMER_COM_PERIOD           10    // Time period in milliseconds

#define TASK_MOUV                    2      
#define TASK_MOUV_PRIO              50      
#define TASK_MOUV_STACK_SZ          1000   
#define TIMER_MOUV_ID               1       
#define TIMER_MOUV_PERIOD           1000    

#define TASK_ENVOI                    3      // Id for task 1 (idle task is 0)
#define TASK_ENVOI_PRIO              10      // priority for task 1
#define TASK_ENVOI_STACK_SZ        1000      // stack size for task 1 in words
#define TIMER_ENVOI_ID                0       // Id for timer 0
#define TIMER_ENVOI_PERIOD           10    // Time period in milliseconds


#define TASK_DETEC                    3      
#define TASK_DETEC_PRIO              30      
#define TASK_DETEC_STACK_SZ          32      
#define TIMER_DETEC_ID                2      
#define TIMER_DETEC_PERIOD           1500    


#define TASK_VIDEO                    4      
#define TASK_VIDEO_PRIO              50      
#define TASK_VIDEO_STACK_SZ          32      
#define TIMER_VIDEO_ID               3       
#define TIMER_VIDEO_PERIOD           1000    


#define TASK_BATT                    5     
#define TASK_BATT_PRIO              50      
#define TASK_BATT_STACK_SZ          32      
#define TIMER_BATT_ID               4       
#define TIMER_BATT_PERIOD           1000    


#define TASK_TRAJ                    6      
#define TASK_TRAJ_PRIO              50      
#define TASK_TRAJ_STACK_SZ          32      
#define TIMER_TRAJ_ID               5       
#define TIMER_TRAJ_PERIOD           1000    


#define TASK_ARRET_URGENT                    7      
#define TASK_ARRET_URGENT_PRIO              50      
#define TASK_ARRET_URGENT_STACK_SZ          32      
#define TIMER_ARRET_URGENT_ID               6       
#define TIMER_ARRET_URGENT_PERIOD           1000    


#define TIMER_EVENT             1 // Event flag = 0000 0001
#define COMMUNICATION_EVENT     2 // Event flag = 0000 0010
#define COMMANDE_EVENT          4 // Event flag = 0000 0100
#define DETECTION_EVENT         8 // Event flag = 0000 1000