Ian Hua / Quadcopter-mbedRTOS
Committer:
pHysiX
Date:
Mon May 12 04:43:38 2014 +0000
Revision:
30:d9b988f8d84f
Parent:
27:18b6580eb0b1
Child:
32:7a9be7761c46
WIP

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 12:953d25061417 17 /* Scale:
pHysiX 12:953d25061417 18 Vin = ADC * Vread * scale
pHysiX 12:953d25061417 19 Vin = (2^n-1)/3.3 * k*Vin * scale * ADJUST
pHysiX 12:953d25061417 20 */
pHysiX 12:953d25061417 21 #define VOLTAGE_SCALE 49.60248447
pHysiX 12:953d25061417 22
pHysiX 25:a7cfe421cb4a 23 //typedef enum {
pHysiX 25:a7cfe421cb4a 24 enum FLIGHT_MODE {
pHysiX 25:a7cfe421cb4a 25 RATE,
pHysiX 27:18b6580eb0b1 26 ATTITUDE
pHysiX 25:a7cfe421cb4a 27 };
pHysiX 25:a7cfe421cb4a 28
pHysiX 1:43f8ac7ca6d7 29 extern float ypr_offset[3];
pHysiX 1:43f8ac7ca6d7 30
pHysiX 3:605fbcb54e75 31 extern bool box_demo;
pHysiX 5:4879ef0e6d41 32 extern bool rc_out;
pHysiX 5:4879ef0e6d41 33 extern bool gyro_out;
pHysiX 21:b642c18eccd1 34 extern bool command_check;
pHysiX 21:b642c18eccd1 35 extern bool adjust_check;
pHysiX 3:605fbcb54e75 36
pHysiX 3:605fbcb54e75 37 extern int RCCommand[5];
pHysiX 21:b642c18eccd1 38 extern int inputYPR[3];
pHysiX 3:605fbcb54e75 39
pHysiX 25:a7cfe421cb4a 40 extern FLIGHT_MODE mode;
pHysiX 25:a7cfe421cb4a 41
pHysiX 22:ef8aa9728013 42 /* Thread3: RC & BT Command, and Telemetry */
pHysiX 1:43f8ac7ca6d7 43 void Task3(void const *argument);
pHysiX 1:43f8ac7ca6d7 44
pHysiX 17:18c3bd016e49 45 int constrainRCCommand(int input);
pHysiX 17:18c3bd016e49 46
pHysiX 1:43f8ac7ca6d7 47 #endif