bool 1 bite = true of false
byte 8 bite / 1 byte 0 t/m 255
int 16 bite / 2 byte -32.568 tot 32.567
unsigned int 16 bite / 2 byte 0 t/m 65.535 (uno)
unsigned int 32 bite / 4 byte 0 t/m 4.294.967.295 (due)
long 32 bite / 4 byte -2.147.483.647 t/m 2.147.483.647
unsigned long 32 bite / 4 byte 0 t/m 4.294.967.295
float 32 bite / 4 byte -3.4028235E38 t/m 3.4028235E38
//Wachttijd met millis geeft
If (millis() - intervalTijd >= aanTijdGroen){ // > kan ook >= zijn.
Doe dan het volgende (Code)
}
/* Bijvoorbeeld: 10000 (millis) - 2000 (reset millis) > 2000 Groter dan 2000
Millis arduino - millis op reset moment */
//Tijdsbepaling of duurtijd van een actie geeft
If (millis() - intervalTijd < aanTijdGroen){ // < kan ook <= zijn
Doe het volgende (Code) zolang
}
/* Bijvoorbeeld: 10000 (millis) - 2000 (reset millis) > 2000 Kleiner dan 2000
Millis arduino - millis op reset moment */
// Modulo
for (int i = 0; i <= aantal; i++) {
if (i % 2 == 0) { // is i modulo 2? maw. als we i delen door 2 is er dan een rest
Serial.println("Even"); //restgetal? Nee,print "Even" anders " Oneven".
// 4 gedeeld door 2 = 0 dus print "even"
// 5 gedeeld door 2 = 1 dus print "oneven"
// Modulo samen met een arry
byte spoelen[4] = {Bm, Ap, Bp, Am}; //arry van 4 spoelen, in dit geval eigenlijk uitgangen
unsigned long step = 1; // vb: poort 8, 9, 10, 11
step++; // stap + 1 ofwel step += 1 Elke Loop wordt step met 1 verhoogt
digitalWrite(spoelen[step % 4], HIGH); // modulo met getal 4 om 0, 1, 2, 3 te krijgen
/* 0 = eerste waarde in arry
1 = tweede waarde in arry
2 = derde waarde in arry
3 = vierde waarde in arry
Bijvoorbeeld: 47 gedeeld door 4 = 11 rest = 3 47 gedeeld door 5 = 9 rest = 2
48 gedeeld door 4 = 12 rest = 0 48 gedeeld door 4 = 9 rest = 3
49 gedeeld door 4 = 12 rest = 1 49 gedeeld door 4 = 9 rest = 4
50 gedeeld door 4 = 12 rest = 2 50 gedeeld door 4 = 10 rest = 0
51 gedeeld door 4 = 12 rest = 3 51 gedeeld door 4 = 10 rest = 1
52 gedeeld door 4 = 13 rest = 0 52 gedeeld door 4 = 10 rest = 2
53 gedeeld door 4 = 13 rest = 1 53 gedeeld door 4 = 10 rest = 3
54 gedeeld door 4 = 13 rest = 2 54 gedeeld door 4 = 10 rest = 4
55 gedeeld door 4 = 13 rest = 3 55 gedeeld door 4 = 12 rest = 0
56 gedeeld door 4 = 14 rest = 0 56 gedeeld door 4 = 12 rest = 1
*/
digitalWrite(spoelen[3 - (step % 4)], HIGH) ;
/* 3- geeft een andere volgorde ipv 0,1,2,3 nu 3,2,1,0
Bijvoorbeeld: 3- (2)= 1
3- (1)= 2
3- (3)= 0
3- (0)= 3
*/
digitalWrite(spoelen[(step - 1) % 4], LOW) ; // Zet vorige blok in arry terug op LOW.
digitalWrite(spoelen[step % 4], HIGH);