Schlagwort-Archive: Programm

Arduino Programmierung #13 – Poti dimmt LED mit PWM

Ein Potentiometer wird eingelesen mit dem AD Wandler, der Wert wird gemappt auf dem PWM Wertebereich und mit analogWrite ausgegeben zur LED.

Und hier das Programm

// Mit Poti die LED dimmen
// Poti - AD-Wandler - map - pwm - analogWrite
// Poti ist angeschlossen an Pins : 5V - A0 - GND

int analogPin = A0, LedPin = 13, adwert, pwm;

void setup() {
  Serial.begin(38400);
  pinMode(LedPin,OUTPUT);
}

void loop() {
  adwert = analogRead(analogPin);   // AD Wandler auslesen
  pwm = map(adwert, 0, 1023, 0, 255);
  analogWrite(LedPin, pwm);         // LED mit PWM ansteuern und dimmen
  Serial.println(pwm);              // Wert ausgeben
  delay(100);
}

 

Arduino Programmierung # 5 – analogWrite

Eine LED am Arduino dimmen mit analogWrite() und PWM – Pulsweiten Modulation

// LED dimmen

int LED=13,i=1;

void setup() {
  pinMode(LED,OUTPUT);
}

void loop() {
  i++;
  if (i>255) {
    i=1;
  }
  analogWrite(LED, i);
  delay(10);
}

 

Arduino Programmierung #2 – LED blinken lassen.

Teil 2 – Die LED an Pin 13 soll blinken.

// Neues Programm...

int LED=13;

void setup() {
  pinMode(LED,OUTPUT);
}

void loop() {
  digitalWrite(LED, HIGH);
  delay(500);
  digitalWrite(LED, LOW);
  delay(500);
}

 

The Arduino measures its own USB Voltage / VCC

The Arduino can measure its own processor voltage VCC. With a long USB cable this voltage can drop to e.g. 4,5V. That is important if you want to make a simple measurement with the AD converters on board.

Weiterlesen

Die Airmar PB100 Wetterstation mit dem NMEA Shield am PC auslesen

André Singer hat ein Programm für die Airmar Wetterstation PB100 und das NMEA Shield geschrieben.

Moin Moin !

Ich habe einen AIRMAR PB100 an das Shield angeschlossen.
Die PB100 sendet und empfängt Ihre NMEA0183 Daten nicht über eine normale RS232 sondern über RS485.
Zum Glück haben die gesendeten Daten einen vernünftigen Pegel, trotz 25m Zuleitung, sodass
hierfür die Serial3 zum empfangen der Daten genutzt werden konnte. Zum senden der Einstellungen und Befehle habe ich die RS485 auf Serial1 verwendet, da hierfür die 25m einfach zu lang war, oder aber die PB100 die Daten wirklich als RS485 erwartet.
Für die Serial3 ist es wichtig die Masse der 12V Versorgung der PB100 noch mit auf die Klemme zu legen.


Danach kann man die Daten über den Seriellen Monitor sich anschauen oder aber über die Software von AIRMAR visualisieren. Weiterlesen

NMEA2000 Daten aus dem Bus seriell auf USB als Klartext ausgeben

Nachdem der Aufbau hier beschrieben wurde, kommt nun das erste Programm.
Die NMEA2000 Daten sollen Klartext über USB auf den PC ausgegeben werden in der seriellen Konsole.

Das heißt der MCP 2515 holt die NMEA2000 Daten aus dem Netz und gibt sie an den Arduino Mega weiter. Hier ist im NMEA2000 Netz nur noch der Lowrance HDS 5m. Mit der Library wird daraus Klartext und dieser wird auf dem USB Port an den PC weiter gegeben und in der Seriellen Konsole ausgegeben. Weiterlesen

Der Hamming Code für den Arduino

Bei einer digitalen Funkübertragung kann es zu Störungen kommen und einzelne Bits werden falsch empfangen, kippen sozusagen um. Aus einer 1 wird eine 0.

Richard Wesley Hamming hat sich dazu Gedanken gemacht und eine Codierung entwickelt, die es erlaubt zu überprüfen ob alle Bits richtig übertragen wurden. Einzelne Bits können sogar rekonstruiert werden.

Hier sollen 4 Daten-Bits übertragen werden. Dazu werden nach einem bestimmten Schema 3 Paritäts-Bits hinzugefügt, die Daten werden codiert. Es müssen nun 7 Bits übertragen werden. Wird ein Bit falsch empfangen, so lässt es sich später bei der Decodierung rekonstruieren.

Die 4 Daten-Bits werden mit 3 Paritäts-Bit nach diesem Schema ergänzt.
Die Datenbits: d4, d3, d2, d1 Weiterlesen

Temperatursensor DS18B20 mit dem Arduino Uno und LCD Display

Ich habe den Maxim Temperatur Sensor DS18B20 bekommen. Er ist bereits dicht vergossen und wird mit einem 3-poligen Anschlusskabel geliefert (rot schwarz gelb)

Er hat einen 1-wire Bus, das heisst es müssen nur die Datenleitung und GND zum Anschluss verwendet werden. Mit einem 4,7 kOhm Widerstand von der Datenleitung gegen 5V wird am Arduino die „parasitäre“ Stromversorgung hergestellt. Der Sensor bekommt so die Stromversorgung mit über die Datenleitung.
Bei Leitungslängen über 6m sollte die 5V Versorgung zusätzlich angeschlossen werden, das ist hier aber nicht notwendig. Weiterlesen

Den 16-Bit AD-Wandler MCP 3426 mit dem Arduino verwenden

Der AD-Wandler MCP 3426A0-E/SN wurde auf eine Streifenrasterplatine gesetzt, wie im vorherigen Artikel beschrieben.

Nun soll er mit dem Arduino Uno verbunden und ausgelesen werden. Weiterlesen