imu rev1

Dependencies:   IMUfilter mbed

Fork of AIviate by UCLA IEEE

Committer:
teamgoat
Date:
Fri Nov 01 00:48:06 2013 +0000
Revision:
2:452dd766d212
Parent:
1:1abb115c2005
Child:
4:44a5b1e8fd27
broken :(

Who changed what in which revision?

UserRevisionLine numberNew contents of line
teamgoat 0:0c627ff4c5ed 1 #include "control.h"
teamgoat 0:0c627ff4c5ed 2 #include "sensor.h"
teamgoat 0:0c627ff4c5ed 3 #include "steps.h"
teamgoat 0:0c627ff4c5ed 4 #include "mbed.h"
teamgoat 0:0c627ff4c5ed 5
teamgoat 0:0c627ff4c5ed 6 #define MAXPROC 15
teamgoat 0:0c627ff4c5ed 7
teamgoat 0:0c627ff4c5ed 8 process procs[MAXPROC] = {0};
teamgoat 0:0c627ff4c5ed 9
teamgoat 0:0c627ff4c5ed 10 int main()
teamgoat 0:0c627ff4c5ed 11 {
teamgoat 2:452dd766d212 12 init();
teamgoat 0:0c627ff4c5ed 13 while (true)
teamgoat 0:0c627ff4c5ed 14 {
teamgoat 0:0c627ff4c5ed 15 schedule();
teamgoat 2:452dd766d212 16 }
teamgoat 0:0c627ff4c5ed 17 }
teamgoat 0:0c627ff4c5ed 18
teamgoat 2:452dd766d212 19 void init()
teamgoat 0:0c627ff4c5ed 20 {
teamgoat 2:452dd766d212 21 // initialize i2c sensors
teamgoat 2:452dd766d212 22 init_sensors();
teamgoat 2:452dd766d212 23 // set initial processes
teamgoat 0:0c627ff4c5ed 24 procs[0].status = READY;
teamgoat 0:0c627ff4c5ed 25 procs[0].start = &get_sensor_data;
teamgoat 0:0c627ff4c5ed 26 return;
teamgoat 0:0c627ff4c5ed 27 }
teamgoat 0:0c627ff4c5ed 28
teamgoat 0:0c627ff4c5ed 29 void schedule()
teamgoat 0:0c627ff4c5ed 30 {
teamgoat 0:0c627ff4c5ed 31 for (int i=0; i<MAXPROC; i++)
teamgoat 0:0c627ff4c5ed 32 {
teamgoat 0:0c627ff4c5ed 33 process proc = procs[i];
teamgoat 0:0c627ff4c5ed 34 if(proc.status == READY)
teamgoat 0:0c627ff4c5ed 35 {
teamgoat 0:0c627ff4c5ed 36 proc.start();
teamgoat 0:0c627ff4c5ed 37 return;
teamgoat 0:0c627ff4c5ed 38 }
teamgoat 0:0c627ff4c5ed 39 }
teamgoat 0:0c627ff4c5ed 40 }
teamgoat 0:0c627ff4c5ed 41