Schritt 3: Schnelle Arduino-Tuitorial
Ich werde hier nur die Funktionen, die ich werde später mit Decken und tue mein Bestes um bewährte Methoden auf dem Weg hinzuzufügen.
; -erklärt Ende der Linie, verwenden am Ende jeder Zeile des Codes außer nach der geschweiften Klammern und bedingte Anweisungen
Ex: Wenn (X == 5)
{
y = 5;
}
/ / -Linie Kommentar am Zeilenanfang zur Kommentierung verwendet
/ * Kommentar * / -Kommentar zu blockieren, verwenden Sie für mehrere Online-Kommentare wie die Hilfe-Datei am Anfang des Codes. Die Hilfe-Datei erklärt, was die Datei Code für und von wem gemacht.
Int - ganzzahligen Typ Variable, Ex zu erklären: Int-Variable; oder Int-Variable-5;
const - Einsatz vor der Deklaration von Variablen um sicherzustellen, dass die Variable Änderung im Programm ist nicht. Nützliche Informationen für bedingte Anweisungen speichern. Ex: const Int-Variable = 5;
#include <? > - enthalten externe Dateien wie Bibliotheken, z. B.: #include < Servo.h > ** Nein; wird benötigt
Servo - verbunden mit Servosteuerung, nur mit Servo.h Bibliothek verwendet Variable deklarieren. Ex: Servo Steuern;
befestigen (pin-( ) - ein Pin-Position, verwendet in Setup Schleife, ex Servo zuordnen: Servo.attach(5)
void Setup () - wo Ihre Setup-Daten ist zu erklären, Input- und Output pins sowie serielle Geschwindigkeit.
Serial.begin (Rate () - Initilizes serielle Verbindung bei Baudraten gegeben, erwarteten Baud Raten, 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 oder 115200. Ex: Serial.begin(115200)
PinMode (Pin, Modus () - legt fest, ob eine Pin Eingabe ist oder Ausgang, verwendet in Setup Schleife, z. B.: pinMode(5,INPUT); oder pinMode(chA,OUTPUT); Hier ist ChA eine Konstante den Wert des referenzierten Pins zu speichern.
void loop() - Hauptprogramm geloopt werden.
für (Initialisierung; Bedingung; inkrementieren( ) - einen Block von Anweisungen, z. B. zu wiederholen: für (Int ich = 0; ich < = 8; i ++); Zuerst die Variable "i" werden ausschließlich innerhalb der Schleife und "i" für mehrere for-Schleifen verwendet werden können. Zweitens ist die bedingte Anweisung und wenn Sie gleich verwenden möchten, müssen Sie zwei verwenden! Drittens ist wenn Sie entfernen oder eines Werts am Anfang oder Ende der Schleife hinzufügen. --i am Anfang, subtrahieren ++ ich hinzufügen, dass man am Anfang, i--subtrahieren eine am Ende, i ++ am Ende hinzufügen.
Wenn (Zustand( ) - wird ausgeführt, die Code enthalten, wenn die Bedingung erfüllt ist, z. B.: Wenn (X == 5) oder wenn (X < = 5) haben Sie mehrere oder komplexe Bedingungen können Sie logische AND(&&), OR(||), nicht(!) mit einzelnen endete Bedingungsanweisungen.
UND Ex: Wenn (X > 0 & & x < 5) stimmt nur, wenn beide Ausdrücke wahr sind
ODER Ex: Wenn (X > 0 || y > 0) stimmt entweder Ausdrücke wahr sind
NICHT ex: Wenn (! X > 0) wahr, nur wenn der Ausdruck false ist
Elseif (Zustand () - folgt eine If Anweisung für separate Logik über gesonderte Konditionen. Dies funktioniert hervorragend, wenn einen Sensor zu lesen und für verschiedene Sensorwerte werden Sie verschiedene Dinge zu tun.
Bsp.:
If(Sensor<10) {dazu}
ElseIf(Sensor>10) {tun}
anderes - gibt entweder / oder Funktion zu If oder Elseif-Anweisungen. Dies ermöglicht eine Operation unabhängig davon durchgeführt werden, wenn alle vorherigen If oder Elesif Aussagen nicht erfüllt sind.
Bsp.:
If(Sensor<10) {tun 1}
ElseIf(Sensor>10) {tun 2}
else {Do, was 3}
schreiben (Var( ) - mit Servo.h-Bibliothek verwendet, um eine neue Position oder einen Wert mit einem Servo zu übergeben. Ex: steer.write(position);
Serial.print (Daten( ) - mit serieller Eingabe und wird der Wert einer Variablen oder einer Zeichenfolge auf der gleichen Zeile im terminal-Fenster Drucken.
Var ex: Serial.print(x);
Zeichenfolge z. B.: Serial.print("x=");
Serial.println (Daten( ) - mit serieller Eingabe und druckt Daten in der gleichen Zeile, gefolgt von eine automatische Rückkehr eine neue Linie. Folgt die gleiche Syntax wie Serial.print().
Karte (Var, FromLow, verschwindenhohe, ToLow, ToHigh( ) - verwendet Integer Math, wieder eine Variable oder ein Wert von einem Bereich zum anderen zu skalieren. Sehr nützlich für einen Sensor und dann Outputing mit einem Servo zu lesen. Ex: x=map(x,0,1027,0,255); Ich empfehle, dass anstatt manuell Werte eingeben, konstante Variablen Bereiche, z. B. diktieren zu setzen: x=map(x,analogLo,analogHi,servoLo,servoHi);
Randnotiz:
Einmal erhalten Sie bis zu dem Punkt von einem Projekt gibt es ein paar Dinge zu beachten. Beim Anschließen eines Drahtes aus Ihrem Sensor-Ausgang direkt an das Arduino Board haben Sie eine "schwimmende"-Signal, das funktioniert super zum testen aber nicht für die konkrete Umsetzung. Wenn Sie einen Widerstand aus dem Signal zu Boden hinzufügen hilft sicherzustellen, dass Sie ein klares Signal. Je höher die Frequenz, die mehr Grund haben Sie ein Pull-down Widerstand verwenden. Ich verwende in der Regel mindestens einen 1 k-Ohm-Widerstand, aber abhängig von der Länge des Drahtes, Nähe zu anderen Signal Kabel, und wenn der Draht geschlungen wird. Ein guter Weg, um die Auswirkungen davon betrachten ist ein Oszilloskop und variieren den Widerstand verwendet oder ein Potentiometer verwenden. Um den Widerstand für Ihren individuellen Fall richtig Größe ist eine instructable oder technische Lektion eigenständig. Die kurze Version ist es, herauszufinden, was für der Ausgang des Sensors ausgelegt ist und ein Vorwiderstand und Topf um das beste Signal unterschiedlichen RC (Widerstand-Kondensator Transientenanalyse) Eigenschaften zu erreichen.
Vollständiger Link Pfade:
http://Arduino.CC/en/Guide/Homepage
www.makershed.com/Getting_Started_with_Arduino_2nd_Edition_p/mbk1.htm
http://Arduino.CC/en/Tutorial/Homepage
http://Arduino.CC/en/Reference/Homepage