Ian Hua / Quadcopter-mbedRTOS
Committer:
pHysiX
Date:
Mon May 19 14:16:47 2014 +0000
Revision:
50:8a0accb23007
Parent:
44:4be5c01c6de2
Child:
51:04c6af4319e1
Semaphores implemented, currently no hanging. Need to test flight

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pHysiX 27:18b6580eb0b1 1 /* File: Task2_Master.h
pHysiX 27:18b6580eb0b1 2 * Author: Trung Tin Ian HUA
pHysiX 27:18b6580eb0b1 3 * Date: May 2014
pHysiX 36:d95e3d6f2fc4 4 * Purpose: Thread2M: Master PID control loop (attitude)
pHysiX 36:d95e3d6f2fc4 5 * Functions: AHRSSample: Read MPU6050 DMP and calculate YPR
pHysiX 36:d95e3d6f2fc4 6 * Settings: 200Hz
pHysiX 36:d95e3d6f2fc4 7 */
pHysiX 27:18b6580eb0b1 8 #include "mbed.h"
pHysiX 27:18b6580eb0b1 9 #include "rtos.h"
pHysiX 27:18b6580eb0b1 10 #include "tasks.h"
pHysiX 27:18b6580eb0b1 11
pHysiX 27:18b6580eb0b1 12 #ifndef _TASK2_MASTER_H_
pHysiX 27:18b6580eb0b1 13 #define _TASK2_MASTER_H_
pHysiX 27:18b6580eb0b1 14
pHysiX 29:6c03b30b59ec 15 // ms timing: Refer to tasks.h to change frequency of Task2_Master.
pHysiX 38:ef65533cca32 16 #define TASK2_MASTER_PERIOD 1000/TASK2_MASTER_FREQUENCY
pHysiX 27:18b6580eb0b1 17
pHysiX 36:d95e3d6f2fc4 18
pHysiX 36:d95e3d6f2fc4 19 #ifdef ENABLE_COMPASS
pHysiX 36:d95e3d6f2fc4 20 extern double heading;
pHysiX 36:d95e3d6f2fc4 21 #endif
pHysiX 36:d95e3d6f2fc4 22
pHysiX 38:ef65533cca32 23 extern volatile float ypr[3];
pHysiX 27:18b6580eb0b1 24 extern volatile float adjust_attitude[3];
pHysiX 27:18b6580eb0b1 25
pHysiX 27:18b6580eb0b1 26 /* Thread2-Master: Attitude PID Control */
pHysiX 27:18b6580eb0b1 27 void Task2_Master(void const *argument);
pHysiX 27:18b6580eb0b1 28
pHysiX 36:d95e3d6f2fc4 29 // ========================
pHysiX 36:d95e3d6f2fc4 30 // === Helper functions ===
pHysiX 36:d95e3d6f2fc4 31 // ========================
pHysiX 50:8a0accb23007 32 void Task2_Master_ISR(void const *argument);
pHysiX 36:d95e3d6f2fc4 33 void AHRSSample(void);
pHysiX 36:d95e3d6f2fc4 34
pHysiX 27:18b6580eb0b1 35 #endif