Mit dem "open smart rich shield", kannst du für circa 6 Euro eine Menge über den Arduino und das Programmieren mit Ardublock lernen. Dieses shield bietet eine 4x Siebensegment Anzeige, zwei Taster, 4 LEDs, einem Poti, DHT Sensor und vieles andere. Mit so einem Board musst du dich nicht um das Stecken von Hardware auf einem Breadbord kümmern, sondern kannst direkt mit dem programmieren loslegen.
Spezifikationen des open smart rich shield
- Geeignet für Uno, Mega, Leonardo und andere 5-V-Arduinos, die das Uno R3-Pinlayout verwenden
- Verfügbare Hardware mit entsprechender PIN Belegung:
- LED1 (gelb): D7
- LED2 (blau): D6
- LED3 (grün): D5
- LED4 (rot): D4
- Summer: D3
- LDR (Lichtsensor): A2
- TM1637 Segmentanzeige mit 4 Zeichen und Dezimalstellen: D10 CLK, D11 DIN
- Druckknopf K1 auf D9
- Druckknopf K2 auf D8
- NTC (Temperatursensor): A1
- Potentiometer: A0
- Spannungssensor (Spannungsteiler): A3
- DHT11-Sensor: D12
- IR-Empfänger: D2
- 24C02 EEPROM: I2C-Pins (Standard-SCK- und SDA-Pins)
4x7 LED Segmentanzeige programmieren:
Mit der LED Anzeige des "open smart rich shield" kannst du einfache Zahlen aber auch Variablen und Kommastellen anzeigen. Um das Display zu programmieren benötigst du lediglich die "TM1637.h" und die "Arduino.H" Bibliothek für den Arduino. Die ersten 5 Code Funktionen werden über "Code im Globalen Bereich einfügen" programmiert. Über die Funktion "setBrightness" wird die Helligkeit der Anzeige bestimmt.
Einfache Zahlen werden mit der Funktion "showNumerDec" dargestellt.
- Anzuzeigender Wert: display.showNumberDec(99, true);
- Bestimmt ob die leeren stellen mit 0 gefüllt werden: display.showNumberDec(99, true/false);
- In einer extra Klammer wird eine Variable angezeigt: display.showNumberDec((var), true);
Um jede Anzeige Extra darzustellen wird die Funktion data[0] = display.encodeDigit verwendet.
- Erste Zahl ist die Stelle, zweite Zahl ist der Wert: data[0] = display.encodeDigit(7);
- Um eine Variable anzuzeigen, den Name in die Klammer schreiben: data[0] = display.encodeDigit(var);
- Das unit8 und set Segments nicht vergessen.
Um die Helligkeit der Anzeige zu ändern oder ganze auszuschalten wird die Funktion: display.setBrightness(7, true); verwendet
- Die Zahl gibt die Helligkeit von 0-7 an display.setBrightness(7, true);
- True und false geben an ob das Display aus oder an ist: display.setBrightness(7, true/false);
- Im Bespiele wird die Anzeige für eine Sekunde Ein- und dann für eine Sekunde ausgeschaltet.
Code im globalen Bereich einfügen:
#include <Arduino.h>
#include <TM1637Display.h>
#define CLK 10
#define DIO 11
TM1637Display display(CLK, DIO);
Code im Setup einfügen:
display.setBrightness(5, true);
Code im Loop einfügen:
display.showNumberDecEx(34, (0x80 >> 3), true);
display.showNumberDec(99, true);
display.showNumberDec((var), false);
uint8_t data[] = { 0xff, 0xff, 0xff, 0xff };
data[0] = display.encodeDigit(var1);
data[1] = display.encodeDigit(var2);
data[2] = display.encodeDigit(var3);
data[3] = display.encodeDigit(var4);
display.setSegments(data);
data[0] = display.encodeDigit(0);