Hur man kod Arduinos (5 / 6 steg)
Steg 5: exempel
Här ska jag visa dig ett skript som visar allt vi lärt oss. Om du vill bygga den följa schematiskt överst. Potentiometern till vänster är pot1 och styr servo, en på höger det pot2 och styr ljusstyrkan på LED. Knappen anger om lysdioden är på eller av.
#include < Servo.h >
Servo myServo; Registrering av våra Servo
int servoPin = 9; PIN-koden våra Servo är på
int lightPin = 3; PIN-koden våra LED är på
int potPin1 = A1; PIN-koden våra Potentiometer som styr Servo är på
int potPin2 = A0; Klämma fast våra Potentiometer som styr lampan är på
int buttPin = 6; PIN-koden vår knappen är på
void setup() {
myServo.attach(servoPin); Fästa våra servo
pinMode (lightPin, produktionen); Registrera dig vår LED stift som en utgång
pinMode (potPin1, ingång); Registrerar vår Servo Potentiometer stift som bidrag
pinMode (potPin2, ingång); Registrerar vår LED Potentiomerer stift som bidrag
pinMode (buttPin, ingång); Registrerar våra knappen Pin som bidrag
Serial.BEGIN(9600); Startar den seriella communacation
}
void loop() {
int pot1Val = analogRead(potPin1); Blir Pot1's nuvarande värde
pot1Val = karta (pot1Val, 200, 823, 0, 180); Mappa det så att det tar bort början och slutet av intervallet krukor
pot1Val = begränsa (pot1Val, 0, 180); Försäkrar att Servo Input håller sig mellan 0 och 180
myServo.write(pot1Val); Gör servo till den aktuella platsen
Serial.Print ("Pot1 värde är:"); Börjar skriva ut i Debug information
Serial.println(pot1Val); Det är nu inställd så kommer det att säga "Pot1 värde är: (aktuellt värde)"
int pot2Val = analogRead(potPin2); Blir Pot2's nuvarande värde
pot2Val = karta (pot2Val, 0, 1023, 0, 255); Kartor som därmed
Serial.Print ("Pot2 värde är:"); börjar skriva ut i Debug information
Serial.println(pot2Val); Kommer det att säga "Pot2 värde är: (aktuellt värde)"
int knappen = digitalRead(buttPin); Får tillståndet för knappen
IF(Button == 1) {/ / hur knapparna är inställd, 1 innebär det att vara trycks
analogWrite (lightPin, pot2Val); Om dess sanna slå sedan på lysdioderna på denna ljusstyrka
}
annat {/ / Else
digitalWrite (lightPin, låg); Om annat är sant, vilket innebär att om är falskt, då stänga av ledde
}
Delay(50); Gör en liten fördröjning så att den inte är igång varje millisekund.
}