Stap 3: Snelle Arduino Tuitorial
Hier zal ik alleen betrekking hebben op de functies die ik later zal gebruiken en zal mijn best doen om het toevoegen van beste praktijken langs de weg.
; -verklaart einde van regel gebruiken aan einde van elke regel met code met uitzondering van na accolades en voorwaardelijke instructies,
ex: als (x == 5)
{
y = 5;
}
/ / -lijn van commentaar, gebruikt aan begin van regel voor commentaar
/ * commentaar * / -blokkeren van commentaar, gebruiken voor meerdere inline commentaar als het help-bestand aan het begin van uw code. Het help-bestand wordt uitgelegd wat het dossier van de code is voor en gemaakt door de who.
int - integer type variabele, ex verklaren: int variabele; of 5-int variabele;
const - gebruik voor variabelen declareren om variabele niet wijzigen in een programma. Nuttige informatie voor voorwaardelijke instructies op te slaan. ex: const int variabele = 5;
#include <? > - opgenomen externe bestanden zoals bibliotheken, ex: #include < Servo.h > ** geen; nodig is
Servo - declareren gekoppeld aan servo control, alleen gebruikt met de Servo.h bibliotheek. ex: Servo steer;
koppelen (pin) - servo koppelen aan een pin locatie, gebruikt in setup lus, ex: Servo.attach(5)
void setup () - waar alle gegevens van uw installatie is te verklaren van input- en output pinnen ook als seriële snelheid.
Serial.begin (tarief) - initilizes seriële verbinding op gegeven baud-rates, verwachte baud tarieven 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 of 115200. ex: Serial.begin(115200)
pinMode (pin, modus) - ingesteld of een PIN-code een input is of output, gebruikt in setup lus, ex: pinMode(5,INPUT); of pinMode(chA,OUTPUT); chA is hier een constante opslaan van de waarde voor de pin waarnaar wordt verwezen.
void loop - hoofdprogramma als lus.
voor (initialisatie, voorwaarde; verhogen) - herhalen van een blok van verklaringen, ex: for (int i = 0; ik < = 8; i ++); Ten eerste, de variabele "i" zal alleen worden gebruikt binnen de lus en "i" kan worden gebruikt voor meerdere for-lussen. Ten tweede is de voorwaardelijke instructie en als u wilt gebruiken is gelijk aan moet u twee gebruiken! Ten derde, is als u bent af te trekken of een waarde toe te aan het begin of einde van de lus voegen. --i aftrekken van een aan het begin, ++ overigens een aan begin, i--aftrekken een aan het eind, i ++ toevoegen een aan het eind.
als (voorwaarde) - loopt die code bevat als de voorwaarde is voldaan, ex: als (x == 5) of (x < = 5) hebt u meerdere voorwaarden of ingewikkelde voorwaarden kunt u logische AND(&&), OR(||), NOT(!) met single eindigde voorwaardelijke instructies.
EX: als (x > 0 & & x < 5) True alleen als beide expressies waar zijn
OF ex: als (x > 0 || y > 0) True is beide expressies waar zijn
NIET ex: als (! x > 0) slechts als expressie onwaar is True
elseif (voorwaarde) - volgt een if-instructie voor afzonderlijke logica met aparte voorwaarden. Dit werkt geweldig bij het lezen van een sensor en voor verschillende sensor lezingen zult u verschillende dingen doen.
ex:
if(sensor<10) {hiervoor}
elseif(sensor>10) {daarvoor}
anders - geeft ofwel / of functie als of elseif verklaringen. Hierdoor een bewerking moet worden uitgevoerd ongeacht als alle voorgaande als of elesif verklaringen zijn niet voldaan.
ex:
if(sensor<10) {doen 1}
elseif(sensor>10) {doen 2}
else {Ken ding 3}
schrijven (var) - met Servo.h-bibliotheek gebruikt om een nieuwe positie of waarde doorgeven aan een servo. ex: steer.write(position);
Serial.print (gebruikte met seriële gegevens) - input en de waarde van een variabele of een tekenreeks wordt afgedrukt op dezelfde regel in het terminalvenster.
var ex: Serial.print(x);
tekenreeks ex: Serial.print("x=");
Serial.println (gebruikte met seriële gegevens) - input en zal het afdrukken van gegevens op dezelfde lijn gevolgd door een automatische rendement maken van een nieuwe regel. Volgt dezelfde syntaxis als Serial.print().
kaart (var, fromLow, fromHigh, toLow, toHigh) - toepassingen geheel getal wiskunde te re schaal een variabele of waarde uit een bereik naar een andere. Zeer nuttig voor het lezen van een sensor en vervolgens outputing naar een servo. ex: x=map(x,0,1027,0,255); Ik sterk aanbevelen dat in plaats van handmatig invoeren van waarden die u constante variabelen om te dicteren bereiken, ex: x=map(x,analogLo,analogHi,servoLo,servoHi);
Side Note:
Zodra u krijgt op het punt van het maken van een project er zijn een paar dingen te overwegen. Wanneer u een draad van uw sensor output rechtstreeks op de Arduino board aansluit hebt u een "zwevende" signaal, dat geweldig voor het testen, maar niet voor de daadwerkelijke implementatie werkt. Als u een weerstand van het signaal aan de grond toevoegen helpt ervoor zorgen dat u hebt een schoon signaal. Hoe hoger de frequentie, de meer reden je moet gebruik maken van een pull-down weerstand. Ik zal over het algemeen gebruiken ten minste een 1 k Ohm weerstand maar afhankelijk van de lengte van de draad, nabijheid van andere signaal draden, en als de draad lus. Een goede manier om te kijken naar de gevolgen hiervan is een oscilloscoop en variëren van de weerstand gebruikt of gebruik een potentiometer. Is een instructable of engineering les op haar eigen om goed de grootte van de weerstand voor uw individuele zaak. De korte versie is te achterhalen wat de output van de sensor wordt beoordeeld voor en een serie weerstand en pot gebruiken om het beste signaal variërend van de kenmerken van de RC (weerstand condensator transiënt analyse).
Volledige koppelingspaden:
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