car chassis
Dependencies: Servo mbed-rtos mbed
main.cpp@4:7fa7f78cbb92, 2015-10-13 (annotated)
- Committer:
- mariob
- Date:
- Tue Oct 13 14:08:44 2015 +0000
- Revision:
- 4:7fa7f78cbb92
- Parent:
- 3:bfc20ec72b15
delete unused library
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| mariob | 3:bfc20ec72b15 | 1 | //this project implements the body/engine devices |
| mariob | 3:bfc20ec72b15 | 2 | |
| mariob | 0:ce6055872f4e | 3 | #include "mbed.h" |
| mariob | 0:ce6055872f4e | 4 | #include "car_config.hpp" |
| mariob | 0:ce6055872f4e | 5 | #include "rtos.h" |
| mariob | 0:ce6055872f4e | 6 | |
| mariob | 2:7dfc8dd6aab3 | 7 | #include "can.hpp" |
| mariob | 1:79b1ee0f97ef | 8 | #include "led.hpp" |
| mariob | 1:79b1ee0f97ef | 9 | #include "body.hpp" |
| mariob | 1:79b1ee0f97ef | 10 | #include "engine.hpp" |
| mariob | 3:bfc20ec72b15 | 11 | #include "diag.hpp" |
| mariob | 1:79b1ee0f97ef | 12 | #include "clock.hpp" |
| mariob | 1:79b1ee0f97ef | 13 | |
| mariob | 2:7dfc8dd6aab3 | 14 | //initialize the system: |
| mariob | 3:bfc20ec72b15 | 15 | //- single components: body, clock, diagnosis, engine |
| mariob | 2:7dfc8dd6aab3 | 16 | //- hardware: leds, can |
| mariob | 2:7dfc8dd6aab3 | 17 | //- threads |
| mariob | 0:ce6055872f4e | 18 | int init(); |
| mariob | 0:ce6055872f4e | 19 | |
| mariob | 0:ce6055872f4e | 20 | int main() |
| mariob | 0:ce6055872f4e | 21 | { |
| mariob | 2:7dfc8dd6aab3 | 22 | //system setup |
| mariob | 2:7dfc8dd6aab3 | 23 | init(); |
| mariob | 0:ce6055872f4e | 24 | |
| mariob | 2:7dfc8dd6aab3 | 25 | //main loop |
| mariob | 2:7dfc8dd6aab3 | 26 | while(1) {}; |
| mariob | 0:ce6055872f4e | 27 | } |
| mariob | 0:ce6055872f4e | 28 | |
| mariob | 0:ce6055872f4e | 29 | Thread *th_body; |
| mariob | 0:ce6055872f4e | 30 | Thread *th_can; |
| mariob | 1:79b1ee0f97ef | 31 | Thread *th_engine; |
| mariob | 3:bfc20ec72b15 | 32 | Thread *th_diag; |
| mariob | 1:79b1ee0f97ef | 33 | Thread *th_clock; |
| mariob | 0:ce6055872f4e | 34 | |
| mariob | 0:ce6055872f4e | 35 | void init_threads () |
| mariob | 0:ce6055872f4e | 36 | { |
| mariob | 2:7dfc8dd6aab3 | 37 | th_body = new Thread(thread_body); |
| mariob | 2:7dfc8dd6aab3 | 38 | th_engine = new Thread(thread_engine); |
| mariob | 2:7dfc8dd6aab3 | 39 | th_can = new Thread(thread_can); |
| mariob | 3:bfc20ec72b15 | 40 | th_diag = new Thread(thread_diag); |
| mariob | 2:7dfc8dd6aab3 | 41 | th_clock = new Thread(thread_clock); |
| mariob | 0:ce6055872f4e | 42 | } |
| mariob | 0:ce6055872f4e | 43 | |
| mariob | 0:ce6055872f4e | 44 | int init () |
| mariob | 0:ce6055872f4e | 45 | { |
| mariob | 2:7dfc8dd6aab3 | 46 | init_body(); |
| mariob | 2:7dfc8dd6aab3 | 47 | init_clock(); |
| mariob | 3:bfc20ec72b15 | 48 | init_diag(); |
| mariob | 2:7dfc8dd6aab3 | 49 | init_engine(); |
| mariob | 0:ce6055872f4e | 50 | |
| mariob | 2:7dfc8dd6aab3 | 51 | //printf("INIT LED\r\n"); |
| mariob | 2:7dfc8dd6aab3 | 52 | init_led(); |
| mariob | 0:ce6055872f4e | 53 | |
| mariob | 2:7dfc8dd6aab3 | 54 | //printf("INIT CAN\r\n"); |
| mariob | 2:7dfc8dd6aab3 | 55 | init_can(); |
| mariob | 0:ce6055872f4e | 56 | |
| mariob | 2:7dfc8dd6aab3 | 57 | //printf("INIT THREAD\r\n"); |
| mariob | 2:7dfc8dd6aab3 | 58 | init_threads(); |
| mariob | 0:ce6055872f4e | 59 | |
| mariob | 2:7dfc8dd6aab3 | 60 | return true; |
| mariob | 0:ce6055872f4e | 61 | } |
Mario Bambagini