#include <LiquidCrystal.h>
#include <Arduino_FreeRTOS.h>
#include <queue.h>
TaskBlinkLeft(void * pvParameters)
TaskBlinkRight(void * pvParameters)
QueueHandle_t speedometer;
LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
const int leftBlinker = 6;
const int rightBlinker = 5;
void setup() {
Serial.begin(9600);
pinMode(leftBlinker, OUTPUT);
pinMode(rightBlinker, OUTPUT);
speedometer = xQueueCreate(5, sizeof(int));
if(speedometer == NULL){
Serial.println("Failed to create queue.");
for(;;)
}
lcd.begin(16, 2);
xTaskCreate(TaskBlinkRight,"Right_Blinker",128,NULL, 1, NULL);
xTaskCreate(TaskBlinkLeft,"Left_Blinker", 128, NULL, 1, NULL);
xTaskCreate(TaskReadSpeed,"Read_Potentiometer_value", 128, NULL, 1, NULL);
xTaskCreate(TaskDisplaySpeed,"Display_on_LCD", 128, NULL, 1, NULL);
vTaskStartScheduler();
}
void loop() {
// ...
}
TaskBlinkLeft(void * pvParameters){
}
TaskBlinkRight(void * pvParameters){
}
TaskReadSpeed(void * pvParameters){
}
TaskDisplaySpeed(void * pvParameters){
}