#include <stdio.h>
#include "pico/stdlib.h"
#include "pico/time.h"
#include "hardware/gpio.h"
#include "hardware/pwm.h"
#include "gctrl.h"
#include "als.h"
#include "lighting.h"
LightingController lighting;
GeneralControlModule GenCtrl;
AdvancedLoggingSystem ALS;
bool initError = false;
//----------
int main() {
stdio_init_all();
if(!initError && !GenCtrl.Initialize(26)) initError=true;
if(!initError && !ALS.Initialize()) initError=true;
if(!initError && !lighting.Initialize(2, 4, 3, 24)) initError=true;
if(initError) {
GenCtrl.SetStatusColour(255, 0, 0); // Set LED to red
ALS.Log("An error has occurred. Please restart or try again later. Code: ", 0000);
} else {
GenCtrl.SetStatusColour(0, 255, 0); // Set LED to green
GenCtrl.InitPin(6, GPIO_OUT);
// Test data for whilst there are no inputs
lighting.SetLight("dipBeam", "all", true);
lighting.SetLight("sidelights", "all", true);
lighting.SetLight("daytimeRunningLights", "all", true);
lighting.SetLight("indicators", "ns", true);
lighting.SetBlink("indicators", "all", true);
while (1) {
if(lighting.UpdateRequired) {
lighting.Update();
}
sleep_ms(500);
}
return 0;
}
}
Loading
pi-pico-w
pi-pico-w