Mario Bambagini / Mbed 2 deprecated car_chassis

Dependencies:   Servo mbed-rtos mbed

Committer:
mariob
Date:
Thu Oct 08 13:36:17 2015 +0000
Revision:
2:7dfc8dd6aab3
Parent:
1:79b1ee0f97ef
Child:
3:bfc20ec72b15
added body implementation

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mariob 0:ce6055872f4e 1 #include "mbed.h"
mariob 0:ce6055872f4e 2 #include "car_config.hpp"
mariob 0:ce6055872f4e 3 #include "rtos.h"
mariob 0:ce6055872f4e 4
mariob 2:7dfc8dd6aab3 5 #include "can.hpp"
mariob 1:79b1ee0f97ef 6 #include "led.hpp"
mariob 1:79b1ee0f97ef 7 #include "body.hpp"
mariob 1:79b1ee0f97ef 8 #include "engine.hpp"
mariob 1:79b1ee0f97ef 9 #include "driver.hpp"
mariob 1:79b1ee0f97ef 10 #include "clock.hpp"
mariob 1:79b1ee0f97ef 11
mariob 2:7dfc8dd6aab3 12 //initialize the system:
mariob 2:7dfc8dd6aab3 13 //- single components: body, clock, driver (diagnosis), engine
mariob 2:7dfc8dd6aab3 14 //- hardware: leds, can
mariob 2:7dfc8dd6aab3 15 //- threads
mariob 0:ce6055872f4e 16 int init();
mariob 0:ce6055872f4e 17
mariob 0:ce6055872f4e 18 int main()
mariob 0:ce6055872f4e 19 {
mariob 2:7dfc8dd6aab3 20 //system setup
mariob 2:7dfc8dd6aab3 21 init();
mariob 0:ce6055872f4e 22
mariob 2:7dfc8dd6aab3 23 //main loop
mariob 2:7dfc8dd6aab3 24 while(1) {};
mariob 0:ce6055872f4e 25 }
mariob 0:ce6055872f4e 26
mariob 0:ce6055872f4e 27 Thread *th_body;
mariob 0:ce6055872f4e 28 Thread *th_can;
mariob 1:79b1ee0f97ef 29 Thread *th_engine;
mariob 1:79b1ee0f97ef 30 Thread *th_driver;
mariob 1:79b1ee0f97ef 31 Thread *th_clock;
mariob 0:ce6055872f4e 32
mariob 0:ce6055872f4e 33 void init_threads ()
mariob 0:ce6055872f4e 34 {
mariob 2:7dfc8dd6aab3 35 th_body = new Thread(thread_body);
mariob 2:7dfc8dd6aab3 36 th_engine = new Thread(thread_engine);
mariob 2:7dfc8dd6aab3 37 th_can = new Thread(thread_can);
mariob 2:7dfc8dd6aab3 38 th_driver = new Thread(thread_driver);
mariob 2:7dfc8dd6aab3 39 th_clock = new Thread(thread_clock);
mariob 0:ce6055872f4e 40 }
mariob 0:ce6055872f4e 41
mariob 0:ce6055872f4e 42 int init ()
mariob 0:ce6055872f4e 43 {
mariob 2:7dfc8dd6aab3 44 init_body();
mariob 2:7dfc8dd6aab3 45 init_clock();
mariob 2:7dfc8dd6aab3 46 init_driver();
mariob 2:7dfc8dd6aab3 47 init_engine();
mariob 0:ce6055872f4e 48
mariob 2:7dfc8dd6aab3 49 //printf("INIT LED\r\n");
mariob 2:7dfc8dd6aab3 50 init_led();
mariob 0:ce6055872f4e 51
mariob 2:7dfc8dd6aab3 52 //printf("INIT CAN\r\n");
mariob 2:7dfc8dd6aab3 53 init_can();
mariob 0:ce6055872f4e 54
mariob 2:7dfc8dd6aab3 55 //printf("INIT THREAD\r\n");
mariob 2:7dfc8dd6aab3 56 init_threads();
mariob 0:ce6055872f4e 57
mariob 2:7dfc8dd6aab3 58 return true;
mariob 0:ce6055872f4e 59 }