//Outputpoorten verklaren
int KLL = 13;
int KLR = 12;
int RL = 11;
int DLA = 10;
int DLGL = 9;
int ZLL = 6;
int ZLR = 5;
//Input poorten verklarern
int KKLL = A0;
int KKLR = A1;
int KRL = A2;
int KDL = A3;
int KGL = A4;
int KZL = A5;
//Andere waardes verklaren
int DutyCycle_DLGL = 200;
void setup() {
Serial.begin(9600);
//Pinmodes verklaren:
pinMode(KLL, OUTPUT);
pinMode(KLR, OUTPUT);
pinMode(RL, OUTPUT);
pinMode(DLGL, OUTPUT);
pinMode(ZLL, OUTPUT);
pinMode(ZLR, OUTPUT);
pinMode(KKLL, INPUT);
pinMode(KKLR, INPUT);
pinMode(KRL, INPUT);
pinMode(KDL, INPUT);
pinMode(KGL, INPUT);
pinMode(KZL, INPUT);
}
void loop() {
Bediening_uitlezen();
}
//Het uitlezen van de bediende knoppen
int Bediening_uitlezen(){
//Knipperlicht knop links uitlezen
if (digitalRead(KKLL) == HIGH){
KnipperLichtLinks();
}
else {
digitalWrite(KLL, LOW);
}
//Knipperlicht knop rechts uitlezen
if (digitalRead(KKLR) == HIGH){
KnipperLichtRechts();
}
else {
digitalWrite(KLL, LOW);
}
//Remlicht knop uitlezen
if (digitalRead(KRL) == HIGH){
RemLicht();
}
else {
digitalWrite(RL, LOW);
}
//Dimlicht knop uitlezen
if (digitalRead(KDL) == HIGH){
DimLicht_Voor ();
DimLicht_Achter ();
}
else {
digitalWrite(RL, LOW);
}
}
//Outputs sturen
void KnipperLichtLinks () {
digitalWrite(KLL, HIGH);
delay(650);
digitalWrite(KLL, LOW);
delay(650);
}
void KnipperLichtRechts () {
digitalWrite(KLR, HIGH);
delay(650);
digitalWrite(KLR, LOW);
delay(650);
}
void RemLicht () {
digitalWrite(RL, HIGH);
delay(500);
digitalWrite(RL, LOW);
}
void DimLicht_Voor () {
analogWrite(DLGL, DutyCycle_DLGL);
}
void DimLicht_Achter () {
analogWrite(DLA, HIGH);
}
void ZwaaiLicht () {
analogWrite(ZLL, HIGH);
analogWrite(ZLR, LOW);
delay(500);
analogWrite(ZLL, LOW);
analogWrite(ZLR, HIGH);
delay(500);
}