Arduino/de

From Lazarus wiki
Revision as of 20:41, 1 May 2018 by Mathias (talk | contribs) (→‎Arduino Sketch)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Deutsch (de) English (en) español (es)

Arduino Logo.svg

Dieser Artikel behandelt ausschließlich Arduino boards.

Siehe auch: Multiplatform Programming Guide/de

Arduino

Kommunikation mit einem Arduino

Dieses kleine Beispiel demonstriert eine Kommunikation mit einem Arduino.
Der Arduino Sketch in C++ wurde in der Arduino-IDE erstellt.

Arduino Sketch

Dieser Sketch wandelt alle eingegangenen Buchstaben in Gross-Buchstaben um, ausgenommen Umlaute. Wie man einen Arduino mit C++ programmiert, siehe Arduino-Seite:


#include <Arduino.h>

void setup() {
  Serial.begin(9600);
}

void loop() {
  while (Serial.available() > 0) {
    char ch = Serial.read();
    if ((ch >= 97) and (ch <= 122)) {
      ch -= 32; // In Grossbuchstaben umwandeln.
    }
    Serial.print(ch);
  }
}

FPC Programm

Dieses Mini-Programm sendet Zeichen an den COM-Port, an welchen der Arduino angeschossen ist. Der Arduino wandelt dabei die Zeichen in Grossbuchstaben um.

program Project1;
uses
  Serial, // Für Serielle-Kommunikation.
  Crt;    // Für Tastatur-Eingabe und Delay.
var
  serHandle: TSerialHandle; // Handle für COM-Port.
  ch: char;

begin
  serHandle := SerOpen('/dev/ttyUSB0'); // Bei Windows 'COMx' // COM-Port öffnen.
  SerSetParams(serHandle, 9600, 8, NoneParity, 1, []);

  repeat
    ch := ReadKey;
    if ch >= #32 then begin
      SerWrite(serHandle, ch, 1); // Zeichen senden.
      ch := #0;                   // Zeichen auf #0 setzen. 
      Delay(10);                  // Kleine Verzögerung.
      SerRead(serHandle, ch, 1);  // Zeichen empfangen.
      Write(ch);                  // Zur Überprüfung auf Bildschirm ausgeben.
    end;
  until ch = #27;                 // Bei <ESC> abbrechen.

  SerClose(serHandle);            // COM-Port schliessen.
end.

Arduino mit FPC programmieren

Es ist auch möglich den Arduino direkt mit Lazarus zu programmieren, siehe dazu:

Autor: Mathias