RGB LED-Modul

Vorwiderstände (102) mit 1kOhm sind auf dem Modul schon vorhanden.

Pinbelegung:
R = Rot
G = Grün
B = Blau
GND = Masse

// RGB LED-Modul
// Die vorhandenen Farben schalten

  int BLAU = 13;
  int GRUEN = 12;
  int ROT = 11;
  
void setup() {
  pinMode(BLAU, OUTPUT); // Port als Ausgang und als BLAU festlegen
  pinMode(GRUEN, OUTPUT); // Port als Ausgang und als GRUEN festlegen
  pinMode(ROT, OUTPUT); // Port als Ausgang und als ROT festlegen
}

void loop() {
  digitalWrite(BLAU, HIGH); // Blau wird high geschaltet
  delay(500); // warten
  digitalWrite(BLAU, LOW); // Blau wird high geschaltet
  digitalWrite(GRUEN, HIGH); // Gruen wird high geschaltet
  delay(500); // warten
  digitalWrite(GRUEN, LOW); // Gruen wird low geschaltet
  digitalWrite(ROT, HIGH); // ROT wird high geschaltet
  delay(500); // warten
  digitalWrite(ROT, LOW); // ROT wird low geschaltet
}

Arduino – Hallo Welt

Allgemeine Programmstruktur

Ein Programm besteht grundsätzlich aus dem setup() – und dem loop() – Block.

Der setup()-Block wird einmal beim Neustart oder beim hochladen eines Programm auf den Arduino ausgeführt.

Der loop()-Block wird, nach dem setup()-Block, so lange zyklisch wiederholt bis der Arduino ausgeschaltet wird.

// Allgemeine Programmstruktur
//
// Ausgabe von "Hallo Welt" am Seriellen Monitor über die Serielle Schnittstelle
//

void setup() {
  // initialisiere die serielle Kommunikation mit 9600bps:
  Serial.begin(9600); }

void loop() {
  Serial.println("Hallo Welt!" );   
 // warte 10ms bis zur nächsten loop()-Ausführung.
  delay(10); }

Achtung:
Wenn die Serielle Schnittstelle verwendet wird, dürfen die Ports 0 und 1 nicht verwendet werden.

http://popovic.info/html/arduino/arduinoUno_1.html

Raspberry PI – WLAN

Aufgabe:
Ich möchte am Raspberry PI 2 einen WLAN-USB-Stick betreiben. Dazu muss dieser eingerichtet werden

Herausfinden ob der/ein Stick angesteckt ist, funktioniert und um was für einen es sich handelt:

lsusb

-> Bus 001 Device 005: ID 057C:8401 AVM GmbH Fritz! MLAN N (Atheros AR9001U)

Mit folgendem suche ich ob ein entsprechender Treiber angeboten wird.

apt-cache search atheros

->firmware-atheros - Binary firmware for Atheros wireles cards

Die Firmware wird heruntergeladen und installiert.

 sudo apt-get install firmware-atheros 

Eine auflistung aller geladenen Module gibt es mit lsmod. Hier sollte der WLAN-Stick zu finden sein, zumindest der verwendete Chipsatz.

Die zur Verfügung stehenden WLAN-Netzwerke werden mit iwlist wlan0 scan aufgelistet.

Die SSID des Netzwerk welches verwendet werden soll muss nun in die etc/wpa.conf eingetragen werden. Dies geht mit sudo nano etc/wpa.conf

network={
ssid="YOUR-SSID"
proto=RSN
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP
psk="WPA-PASSWORD"}

In /etc/network/interfaces muss nun noch mit sudo nano /etc/network/interfaces
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa.conf
eingetragen werden.

Mit ifconfig kann das ganze überprüft werden.

Raspberry Py – Bezeichnung Schnittstellen

Netzwerk-Schnittstelle für Ethernet und WLAN haben seit Raspbian Stretch andere Bezeichnungen. Also nicht mehr „eth0“ und „wlan0“, sondern „enx…“ und „wlx…“. Die betrifft allerdings nur über USB angeschlossene Schnittstellen. Die integrierte WLAN-Schnittstelle vom Raspberry Pi 3 B gehört nicht dazu.

Kernel-Parameter

Um zu den alten und gewohnten Bezeichnungen zurückzukehren fügt man einfach einen Kernel-Parameter hinzu, der beim Systemstart berücksichtigt wird. Hierzu muss man eine Konfigurationsdatei ergänzen.

sudo nano /boot/cmdline.txt

Am Ende der Zeile mit einem vorangestellten Leerzeichen einfügen:

net.ifnames=0

Speichern, schließen und System neu starten.