All tasks complete
Dependencies: mbed MCP23017 mbed-rtos WattBob_TextLCD
assignment3tasks.cpp
- Committer:
- aingks
- Date:
- 2019-03-25
- Revision:
- 3:f88d667629e6
- Parent:
- 2:9d6d07c9cc9c
- Child:
- 4:27340b291c09
File content as of revision 3:f88d667629e6:
#include "header.h" //definitions of taskss //lock and unlock variables in struct whne performing calculations //pedals AnalogIn brake_pedal(pin_analog_1); AnalogIn accel_pedal(pin_analog_2); //switches DigitalIn ngene(pin_digital_1); DigitalIn leftsw(pin_digital_2); DigitalIn rightsw(pin_digital_3); DigitalIn sidesw(pin_digital_4); //indicators DigitalOut ngeneind(pin_LED1); DigitalOut leftind(pin_LED2); DigitalOut rightind(pin_LED3); DigitalOut sideind(pin_LED4); //RED box lights DigitalOut brakeind(pin_LED5); DigitalOut overspeedind(pin_LED6); Mutex stdio_mutex; void task1readbrake() { stdio_mutex.lock();//lock speed.brakevalue = brake_pedal.read(); stdio_mutex.unlock();//unlock } void task2readaccel() { stdio_mutex.lock();//lock speed.accelvalue = accel_pedal.read(); stdio_mutex.unlock();//unlock } void task3enginestate() { //lock stdio_mutex.lock(); uint8_t engineonoff = ngene.read(); info.ENGINESTATE = engineonoff; stdio_mutex.unlock(); //unlock if(engineonoff == 1){ ngeneind = 1; } else{ ngeneind = 0; } } void task4average() { }