Ian Hua / Quadcopter-mbedRTOS
Committer:
pHysiX
Date:
Mon May 19 13:21:17 2014 +0000
Revision:
48:9dbdc4144f00
Parent:
45:3847d7bf8b2c
Altimeter and IMU changed to non-blocking I2C

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pHysiX 22:ef8aa9728013 1 /* File: Task3.h
pHysiX 22:ef8aa9728013 2 * Author: Trung Tin Ian HUA
pHysiX 22:ef8aa9728013 3 * Date: May 2014
pHysiX 22:ef8aa9728013 4 * Purpose: Thread3: RC & BT Command, and Telemetry
pHysiX 22:ef8aa9728013 5 * Settings: 50Hz
pHysiX 22:ef8aa9728013 6 */
pHysiX 1:43f8ac7ca6d7 7 #include "mbed.h"
pHysiX 1:43f8ac7ca6d7 8 #include "rtos.h"
pHysiX 1:43f8ac7ca6d7 9 #include "tasks.h"
pHysiX 1:43f8ac7ca6d7 10
pHysiX 1:43f8ac7ca6d7 11 #ifndef _TASK3_H_
pHysiX 1:43f8ac7ca6d7 12 #define _TASKS3_H_
pHysiX 1:43f8ac7ca6d7 13
pHysiX 22:ef8aa9728013 14 // ms timing: Refer to tasks.h to change frequency of Task3.
pHysiX 1:43f8ac7ca6d7 15 #define TASK3_PERIOD 1000/TASK3_FREQUENCY
pHysiX 1:43f8ac7ca6d7 16
pHysiX 25:a7cfe421cb4a 17 enum FLIGHT_MODE {
pHysiX 25:a7cfe421cb4a 18 RATE,
pHysiX 27:18b6580eb0b1 19 ATTITUDE
pHysiX 25:a7cfe421cb4a 20 };
pHysiX 25:a7cfe421cb4a 21
pHysiX 44:4be5c01c6de2 22 extern volatile int RCCommand[5];
pHysiX 44:4be5c01c6de2 23 extern volatile int inputYPR[3];
pHysiX 44:4be5c01c6de2 24 extern volatile float ypr_offset[3];
pHysiX 1:43f8ac7ca6d7 25
pHysiX 36:d95e3d6f2fc4 26 extern FLIGHT_MODE mode;
pHysiX 3:605fbcb54e75 27
pHysiX 22:ef8aa9728013 28 /* Thread3: RC & BT Command, and Telemetry */
pHysiX 1:43f8ac7ca6d7 29 void Task3(void const *argument);
pHysiX 1:43f8ac7ca6d7 30
pHysiX 33:f88a6ee18103 31 // ========================
pHysiX 33:f88a6ee18103 32 // === Helper functions ===
pHysiX 33:f88a6ee18103 33 // ========================
pHysiX 17:18c3bd016e49 34 int constrainRCCommand(int input);
pHysiX 32:7a9be7761c46 35 int deadbandInputYPR(int input);
pHysiX 45:3847d7bf8b2c 36 int constrainInputY(int input);
pHysiX 45:3847d7bf8b2c 37 int constrainInputPR(int input);
pHysiX 32:7a9be7761c46 38 void uartDecoder(char input);
pHysiX 17:18c3bd016e49 39
pHysiX 1:43f8ac7ca6d7 40 #endif