Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: Servo mbed-rtos mbed
main.cpp@2:7dfc8dd6aab3, 2015-10-08 (annotated)
- 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?
User | Revision | Line number | New 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 | } |