Schritt 5: Programmierung der Uhr für Anfänger: Cap Sensoren
Kapazität-Sensoren sind nette kleine Geräte; Sie sehen sie jederzeit, da sie für Dinge wie Lampen verwendet werden, die Helligkeit ändern nur durch Berührung. Das Breakout-Board habe ich von Adafruit, Ausgänge, ob die Drähte berührt worden mit I2C und sendet Zahlen als Potenzen von 2 (ich bin nur zu lernen, dies, vielleicht sind Sie auch). Für die meisten von Ihnen werden zu simpel, aber es verwirrt mich, immer noch, also ich eine Tabelle wie die Kappe machte gegen Berührung reagiert.
"Der Aufruf zu sehen, ob etwas berührt wurde berührt" und kann wie folgt kodiert werden:
Wenn (berührt == 1) {etwas tun, wenn der erste Draht- und nur die ersten ein - berührt werden}
Beispielsweise wird der 5. Draht berührt, sieht"die Arduino" die Nummer 16. Darüber hinaus vermuten, dass die 3. Draht und 6. Drähte berührt werden zum gleichen Zeitpunkt die Arduino sähe die Zahl 36. Warum? Da die Drähte an der Kapazität Sensor befestigt von 0-7 nummeriert sind und der 3. Draht die Nummer 2 hat ^ 2 = 4 und 6. Draht hat die Nummer 2 ^ 5 = 32 und die Summe der beiden Zahlen ist 4 + 32 = 36.
Immer noch unsicher? Versuchen Sie dieses Video als ein Ort, um zu starten... (es hat mir geholfen).
So mit 8 Drähte an der Kapazität Sensor befestigt, haben wir viele verschiedene Kombinationen [(2^8)-1 = 255 Kombinationen], verschiedene Dinge zu tun. Ich codiert nur die Uhr für 13 verschiedene Dinge. Sie sind: etwas über die Person 1, etwas über die Person 2, etwas über sie zusammen, plus Stunden minus Stunden und Minuten minus Minuten plus Tage minus Tage und Monate minus Monate, Jahre, und abzüglich Jahre.
Schaut man sich den Arduino Code sehen Sie, wo ich den Arduino-Scheck für die verschiedenen Kombinationen haben, die Bedeutung haben. Jede kleine Schnipsel wie diese:
ElseIf (berührt == 36)
{k = plusmin();}
fordert ein kleines Unterprogramm, etwas bestimmtes zu tun. Das obige Beispiel erfordert das Unterprogramm zur Einstellung der Minuten voraus von einer Minute.