Thank you to anyone who has already donated - your generous donations helped make three months of treatment possible.

My brother Nate continues to fight stage IV Hodgkin's lymphoma. He's just 31, with a wife and baby girl. They have no active income (since he's been unable to return to work), no insurance, and cannot afford the treatment he needs. Nate and his family need your help. Please consider a donation, every dollar helps. Thanks.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#include <dangershield.h>

//de volgende variabelen zijn 'unsigned' omdat ze geen waarde onder 0 kunnen bevatten.
unsigned int val1 = 0;
unsigned int val2 = 0;
unsigned int val3 = 0;
unsigned int slider1val = 0;
unsigned int slider2val = 0;
unsigned int slider3val = 0;

void setup() {
  //startup serial
  Serial.begin(9600);
  Serial.println("started");
  dangershield_init();
}

void loop() {
  
  slider1val = analogRead(SLIDER1_PIN); //waarde van 1e slider opgeslagen in variabele
  slider2val = analogRead(SLIDER2_PIN); //waarde van 2e slider opgeslagen in variabele
  slider3val = analogRead(SLIDER3_PIN); //waarde van 3e slider opslaan in variabele
 
  /*
    de waarde van de knoppen uitlezen:
      - dit kan HIGH zijn, dan is de knop omhoog & niet ingedrukt.
      - dit kan LOW zijn, dan is de knop omlaag & ingedrukt. 
  */
  val1 = digitalRead(BUTTON1_PIN); //waarde van 1e knop
  val2 = digitalRead(BUTTON2_PIN); //waarde van 2e knop
  val3 = digitalRead(BUTTON3_PIN); //waarde van 3e knop
  
  //////////////////////////////////
  // wanneer geen knop is ingedrukt:
  if (val1 == HIGH && val2 == HIGH && val3 == HIGH) {
    digitalWrite(LED1_PIN, LOW); //gele LED uit
    digitalWrite(LED2_PIN, HIGH); //rode LED aan
    noTone(BUZZER_PIN); //geen signaal afspelen
    digitalWrite(LATCH_PIN, LOW);
    shiftOut(DATA_PIN, CLOCK_PIN, MSBFIRST, LCDoff); //lcd scherm uit
    digitalWrite(LATCH_PIN, HIGH);
  }
  //////////////////////////////////
  //wanneer wel wat wordt ingedrukt:
  else if(val1 == LOW && val2 == HIGH && val3 == HIGH)// wanneer button 1 is ingedrukt
  {
    tone(BUZZER_PIN, slider1val); 
    digitalWrite(LED1_PIN, HIGH); 
    digitalWrite(LED2_PIN, LOW); 
    digitalWrite(LATCH_PIN, LOW); 
    shiftOut(DATA_PIN, CLOCK_PIN, MSBFIRST, LCD1); //lcd scherm op '1'
    digitalWrite(LATCH_PIN, HIGH);
  } 
  else if(val1 == HIGH && val2 == LOW && val3 == HIGH) // wanneer button 2 is ingedrukt
  {
    tone(BUZZER_PIN, slider2val); 
    digitalWrite(LED1_PIN, HIGH); 
    digitalWrite(LED2_PIN, LOW); 
    digitalWrite(LATCH_PIN, LOW); 
    shiftOut(DATA_PIN, CLOCK_PIN, MSBFIRST, LCD2); //lcd scherm op '2'
    digitalWrite(LATCH_PIN, HIGH);
  }
  else if(val1 == HIGH && val2 == HIGH && val3 == LOW) // wanneer button 3 is ingedrukt
  {
    tone(BUZZER_PIN, slider3val); 
    digitalWrite(LED1_PIN, HIGH); 
    digitalWrite(LED2_PIN, LOW); 
    digitalWrite(LATCH_PIN, LOW); 
    shiftOut(DATA_PIN, CLOCK_PIN, MSBFIRST, LCD3); //lcd scherm op '3'
    digitalWrite(LATCH_PIN, HIGH);
  }
  else if(val1 == LOW && val2 == LOW && val3 == LOW) // wanneer 1 2 en 3 zijn ingedrukt
  {
    tone(BUZZER_PIN, slider1val + slider2val + slider3val); 
    digitalWrite(LED1_PIN, HIGH); 
    digitalWrite(LED2_PIN, LOW);
  }
  else if(val1 == LOW && val2 == LOW && val3 == HIGH) // wanneer 1 en 2 zijn ingedrukt
  {
    tone(BUZZER_PIN, slider1val + slider2val); 
    digitalWrite(LED1_PIN, HIGH); 
    digitalWrite(LED2_PIN, LOW);
  } 
  else if(val1 == LOW && val2 == HIGH && val3 == LOW) // wanneer 1 en 3 zijn ingedrukt
  {
    tone(BUZZER_PIN, slider1val + slider3val); 
    digitalWrite(LED1_PIN, HIGH); 
    digitalWrite(LED2_PIN, LOW);
  }
  else if(val1 == HIGH && val2 == LOW && val3 == LOW) // wanneer 2 en 3 zijn ingedrukt
  {
    tone(BUZZER_PIN, slider2val + slider3val); 
    digitalWrite(LED1_PIN, HIGH); 
    digitalWrite(LED2_PIN, LOW);
  }

}//einde van de loop functie