Benutzer-Werkzeuge

Webseiten-Werkzeuge


silentbase_neopixel:programmversion_0.4

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
silentbase_neopixel:programmversion_0.4 [13.11.2016 17:12] Frickelpietsilentbase_neopixel:programmversion_0.4 [18.05.2023 12:16] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
 ====== NeoPixel-Beleuchtung für SilentBase 800 Programmversion 0.4 ====== ====== NeoPixel-Beleuchtung für SilentBase 800 Programmversion 0.4 ======
-Diese Programmversion speichert den ausgewählten Programmmodus in das EEPROM. Nach einem Neustart wird der letzte Programmmodus wieder aufgerufen.+Diese Programmversion speichert den ausgewählten Programmmodus in das EEPROM. Nach einem Neustart wird der letzte Programmmodus wieder aufgerufen. Es können theoretisch 256 Programmmodi gespeichert werden.  
 + 
 +Ältere Programmversionen: 
 +  * [[silentbase_neopixel:Programmversion 0.2]] 
 +  * [[silentbase_neopixel:Programmversion 0.3]]
  
 Hilfreiche Links: Hilfreiche Links:
   * https://www.arduino.cc/en/Reference/EEPROM   * https://www.arduino.cc/en/Reference/EEPROM
  
-<code>+ToDo: Jetzt müssen noch ein paar coole Beleuchtungseffekte programmiert werden. Außerdem könnte man die Messwerte am analogen Eingang glätten.
  
 +Der Sketch enthält Code von [[https://www.baldengineer.com/millis-cookbook.html|Baldengineer]] und [[http://www.scynd.de/tutorials/arduino-tutorials/1-taster/1-2-taster-entprellt.html|Scynd]].
 +<code>
 // Bibliotheken einbinden // Bibliotheken einbinden
 #include <EEPROM.h> #include <EEPROM.h>
Zeile 25: Zeile 31:
 int rlast; int rlast;
 int last; int last;
-int atem; 
  
 int tasterStatus = HIGH;      // aktuelles Signal vom Eingangspin int tasterStatus = HIGH;      // aktuelles Signal vom Eingangspin
 int tasterGedrueckt = 0;      // abfragen ob Taster gedrückt war int tasterGedrueckt = 0;      // abfragen ob Taster gedrückt war
-int entprellZeit = 200;       // Zeit für Entprellunganpassen!+int entprellZeit = 200;       // Zeit für Entprellung ggf. anpassen
  
  
Zeile 128: Zeile 133:
      // Berechnung der Netzteillast in Prozent      // Berechnung der Netzteillast in Prozent
      float rlastmin = 350; // Messwert bei minimaler Last      float rlastmin = 350; // Messwert bei minimaler Last
-     float rlastmax = 1023; // Messwert bei maximaler Last+     float rlastmax = 700; // Messwert bei maximaler Last
      last = 100 - ((rlastmax - rlast) / (rlastmax - rlastmin)) * 100;      last = 100 - ((rlastmax - rlast) / (rlastmax - rlastmin)) * 100;
- 
-     // Berechnung der Atemgeschwindigkeit 
-     atem = last/200; // Der Wert kann theoretisch zwischen 0 und 0,5 variieren und die Geschwindigkeit des Atemeffekts beschleunigen  
- 
  
   //Speichere die aktuelle Zeit in die zughörige Variable   //Speichere die aktuelle Zeit in die zughörige Variable
Zeile 148: Zeile 149:
  
       // Ansteuerung der NeoPixel-Strips       // Ansteuerung der NeoPixel-Strips
-      counter = counter + (0.05 + atem);+      counter = counter + (0.05 * (last/10));
       if (counter >= 6.28) {       if (counter >= 6.28) {
         counter = 0;         counter = 0;
Zeile 173: Zeile 174:
  
       // Ansteuerung der NeoPixel-Strips       // Ansteuerung der NeoPixel-Strips
-      counter = counter + (0.05 + atem);+      counter = counter + (0.05 * (last/10));
       if (counter >= 6.28) {       if (counter >= 6.28) {
         counter = 0;         counter = 0;
silentbase_neopixel/programmversion_0.4.1479053542.txt.gz · Zuletzt geändert: 18.05.2023 09:09 (Externe Bearbeitung)