Arduino 101 grunderna (2 / 7 steg)
Steg 2: PinMode(), digitalWrite() och delay()
I det här exemplet kommer att jag presentera tre uttalanden som kommer att användas i nästan alla skisser. För att följa detta exempel, ladda blink skissen från Arduino IDE. Det kan hittas i filen sedan exempel sedan 01. grunderna och välj Blink.
Du behöver och Arduino, en löda mindre bröd styrelsen, en LED och två hoppare ledningar.
Anslut den kort – ve prong led till GND på Arduino och långt + ve stift till PIN 13 på Arduino.
Skiss:
void setup() {
pinMode (13, OUTPUT); initiera digital stift 13 som en utgång.
}
void loop() {
digitalWrite 13, hög. Aktivera LED (HIGH är spänningsnivån)
Delay(1000); vänta en sekund
digitalWrite 13, låg. Inaktivera LED genom att spänningen låg
Delay(1000); vänta en sekund
}
Låt oss dissekera skissen:
void setup() {
pinMode (13, OUTPUT); initiera digital stift 13 som en utgång.
}
Vi har redan etablerat att void setup() är en funktion som körs endast en gång i början av skissen. Inom denna funktion finns ett uttalande som kallas pinMode(). Programsatsen pinMode uppgift är att ställa in Arduino stiften till utmatning eller inmatning. PRODUKTIONEN innebär att detta stift kommer att producera ett resultat som roterande på eller av en LED. INDATA används för att förbereda den PIN-kod att få information från en ansluten enhet som en sensor.
pinMode (Pin, läge): PIN-koden kan vara någon fysisk pin på Arduino, kan du använda Pin-kod som 1, 2, 3 osv... eller du kan använda variabeln namnet som tilldelats denna pin, exempel LED1, pinLed, osv... Läget är utgång eller ingång med stora bokstäver. Exempel:
- pinMode (11, OUTPUT);
- pinMode (echo, indata);
Curly hängslen {}: Används för att ange början och slutet av funktioner och vissa uttalanden. Klamrarna används inte endast med de ogiltiga setup(), de används i hela skissen inklusive void slingan, om uttalanden, användardefinierade funktioner, osv... varje öppning {bör följas av en stängning} annars koden kommer att producera ett fel vid sammanställningen.
Semikolon.: Används för att definiera i slutet av en sats. Saknas ett semikolon kommer också producera ett fel medan kompilera koden. De är också hittas Separerande element i en for-loop.
Line kommentar / /: Något skrivet efter den / / används inte av programmet och de är valfria. Dock är det oftast bra att lägga till kommentarer så att andra människor kan förstå koden också sedermera när koden blir större och mer komplicerade, hjälper det programmeraren att inte tappa bort koden.
Tillbaka till koden:
void loop() {
digitalWrite 13, hög. Aktivera LED (HIGH är spänningsnivån)
Delay(1000); vänta en sekund
digitalWrite 13, låg. Inaktivera LED genom att spänningen låg
Delay(1000); vänta en sekund
}
Inom klammerparenteser av void slingan finns två nya uttalanden: digitalWrite() och delay().
digitalWrite() ändras status för en PIN-kod genom att antingen skriva en 5V eller 0V med följande syntax:
- digitalWrite 13, hög. Detta kommer att skriva 5V till stift 13 på Arduino
- digitalWrite (LEDpin, låg); Detta kommer att skriva en 0V till variabeln LEDpin
i grunden har du en LED på PIN 13 på Arduino, med hjälp av digitalWrite (13, hög). tänds lampan och med hjälp av digitalWrite(13,LOW); kommer stänga av lampan.
Delay() är rakt fram, det används för att fördröja genomförandet av nästa uttalande av mängden millisekunder inom den (). Exempel:
- Delay(1000) innebär att försena genomförandet av nästa uttalande av 1000 millisekunder eller 1 sekund.