Schlagwort-Archive: Uno

Arduino LED mit Processing 3 per Mausklick schalten aus Windows

Die freie Processing Software kann Windows Fenster erstellen, Grafiken ausgeben, auf die Maus reagieren und mit der Seriellen Schnittstellen arbeiten.

Hier ein einfaches Beispiel in dem die Arduino LED13 parallel zum Mausklick eingeschaltet wird.

Zuerst wird das Arduino Programm übersetzt und hoch geladen auf den Uno.

// Arduino LED bei Mausklick anschalten
// aus einem Processing 3+ Fenster
//
// Matthias Busse 18.3.2017 Version 1.0
 
 
 char wert; // Daten von der seriellen Schnittstelle
 int led = 13; // Board LED vom Arduino Uno
 
 void setup() {
   pinMode(led, OUTPUT); 
   Serial.begin(38400); 
 }
 
 void loop() {
   while (Serial.available()) { // Wenn serielle Daten kommen, dann lesen
     wert = Serial.read(); // Daten in val speichern
   }
   if (wert == '1') { // bei einer 1
    digitalWrite(led, HIGH); // LED ein
   } 
   else {         // sonst
     digitalWrite(led, LOW); // LED aus
   }
 }

Dann das Processing Programm übersetzt Weiterlesen

Folientastatur

Mit der 4×4 Folientastatur Zahlen eingeben am Arduino

Ich habe eine 4×4 Folientastatur bekommen. Damit möchte ich verschiedene Zahlen in den Arduino Uno eingeben, ändern und auch löschen können.

Es gibt eine praktische Library Keyboard auf der Arduino Seite. Die erleichtert die Arbeit ganz erheblich.

Die Tastatur hat links 4 Anschlüsse für die 4 Zeilen, von oben beginnend. Daneben sind die 4 Anschlüsse für die 4 Zeilen von links beginnend. Diese 8 Anschlüsse werden mit Kabeln verbunden zu den Arduino Digital Pins D11…D4. Das finden wir nachher im Programm wieder. Weiterlesen

Arduino FFT auf dem 5110 Display ausgeben

Aus den letzten beiden Artikeln Arduino FFT berechnen und 5110 Grafik ausgeben ist nun eine Arduino Uno FFT Berechnung mit Grafik Ausgabe geworden.

Arduino Uno FFT Ausgabe

Für die Grafik Ausgaben wurde die Library von Henning Karlsen installiert und verwendet.

Das Programm berechnet verschiedene Wellenformen
– Ein Rechtecksignal
– Ein Sinus Signal
– Zwei addierte Sinus Wellen
– Eine Frequenzmodulation
und gibt das Frequenzspektrum von 0 – 2520 Hz aus, in 40 Hz Schritten. Weiterlesen

Eine Grafik auf dem 5110 LCD Display ausgeben

Auf dem Nokia 5110 LCD Display soll eine Grafik ausgegeben werden. Später soll ein Frequenzspektrum dargestellt werden, vorerst werde ich aber Zufallszahlen verwenden und darstellen, was dann wie ein Rausch Spektrum aussieht.

Eine schöne Grafik Library für den Arduino hat Henning Karlsen hier bereit gestellt.

Die Anschlüsse:
Ich habe hier eine 5V Daten kompatible Version. Normalerweise wird aber ein Daten-Spannungsumsetzer von 5V > 3,3V in die Datenleitungen geschaltet, da das Display nur für 3,3V Datenpegel ausgelegt ist.
Pin 8 > Clk
Pin 9 > Din
Pin 10 > DC Weiterlesen

Eine einfache FFT – Fast Fourier Transformation – mit dem Arduino Uno

Ein Rechtecksignal kann aus verschiedenen Sinussignalen erstellt werden indem man die einzelnen Sinusschwingungen addiert. Um ein Rechtecksignal zu erhalten nimmt man die Grundfrequenz f mit der Amplitude 1 und addiert die dreifache Frequenz 3*f mit der Amplitude 1/3 und 5*f mit 1/5 Amplitude usw. Das ergibt dann eine Rechteckschwingung.

 f(t) = sin(\omega t) + 1/3 sin(3 \omega t) + 1/5 sin(5 \omega t) + 1/7 sin(7 \omega t) ...

Diese Fourierreihe beschreibt ganz allgemein die Frequenzbestandteile einer Schwingung. Siehe Wikipedia.

Hat man bereits eine Schwingung vorliegen und möchte sie zerlegen in die einzelnen Frequenzen kann man ein Fourierzerlegung machen, auch Fourier Transformation genannt. Für Mikrokontroller und andere Programme wurde eine schnelle Frequenzzerlegung geschrieben, die FFT oder Fast Fourier Transformation um diese Zerlegung fast im Echtzeit machen zu können. Weiterlesen

Die Auflösung des ADC vom Arduino Uno erhöhen auf 16 Bit mit Oversampling

Der Arduino Uno hat Analog Digital Wandler mit 10-Bit Auflösung eingebaut. Damit kann z. B. die Versorgungsspannung über die USB Schnittstelle ermittelt werden, wie in diesem Artikel beschrieben.

Bei 5V VCC und 10 Bit Auflösung sind das 1023 Messwerte oder ca. 5mV Auflösung eines Bits. Wenn das nicht ausreichend ist, kann die Genauigkeit erhöht werden durch den Trick des Oversampling. Dann sind 12 oder sogar 16 Bit Auflösung mit diesem einfachen AD Wandler möglich. Weiterlesen

Den NMEA0183 RMC Datensatz zerlegen

Hier nun das Programm zum Zerlegen des NMEA0183 RMC Datensatzes mit dem Arduino Uno.

Nach dem GGA Datensatz aus dem letzten Beitrag wird hier nun der RMC Datensatz ausgelesen. Weiterlesen