Stap 3: Code
CODE
#include < Servo.h >
#include < LiquidCrystal.h >
LiquidCrystal lcd(12,11,5,4,3,2);
Const int servo1 = 9; eerste servo
Const int servo2 = 8; tweede servo
Const int joyH = 0; L/r-Parallax analoge stick
Const int joyV = 1; U/D Parallax analoge stick
int servoVal; variabele te lezen van de waarde van de analoge pin
Servo myservo1; maken van servo-object om te bepalen van een servo
Servo myservo2; maken van servo-object om te bepalen van een servo
Const int button2Pin = 1; het nummer van de drukknop pin
Const int ledPin = 7; het nummer van de LED-pin
Variabelen
int ledState = laag; de huidige status van de uitgang-pins
int lastButtonState = laag; de vorige lezing van de invoer pin
VOID Setup {}
Servo
myservo1.attach(servo1); hecht de servo
myservo2.attach(servo2); hecht de servo
LCD.begin (20, 4);
LCD.Clear();
pinMode (button2Pin, INPUT);
pinMode (ledPin, OUTPUT);
Inizialize serie
Serial.begin(9600);
}
void loop
{
{
Lees de stand van de schakelaar in een lokale variabele:
int lezing = digitalRead(button2Pin);
Als (lastButtonState == LOW & & lezing == HIGH)
{
Als (ledState == HIGH) {ledState = laag;}
else {ledState = hoog;}
digitalWrite (ledPin, ledState);}
lastButtonState = lezing;
}
lcd.setCursor (0, 0); {
LCD.Print ("---Mark Wapenaar---");
} lcd.setCursor (0, 1); {
LCD.Print ("Arduino Uno Project");
}
lcd.setCursor (0, 2);
if(analogRead(0) == 511) {}
LCD.Print ("Camera gestopt");
} else if(analogRead(0) < 509) {}
LCD.Print ("Camera Down");
} else if(analogRead(0) > 513) {}
LCD.Print ("Camera Up");
}
lcd.setCursor (0, 3);
if(analogRead(1) == 511) {}
LCD.Print ("Camera gestopt");
} else if(analogRead(1) < 509) {}
LCD.Print ("Camera Left");
} else if(analogRead(1) > 513) {}
LCD.Print ("Camera rechts");
}
Joystick weergavewaarden via de seriële monitor
outputJoystick();
Lees de horizontale joystick waarde (waarde tussen 0 en 1023)
{
servoVal = analogRead(joyH);
servoVal = kaart (servoVal, 0, 1021, 0, 180);} schaal om het te gebruiken met de servo (resultaat tussen 0 en 180)
{
myservo2.write(servoVal); stelt u de positie van de servo volgens de geschaalde waarde
}
delay(15);
Lees de horizontale joystick waarde (waarde tussen 0 en 1023)
{
servoVal = analogRead(joyV);}
servoVal = kaart (servoVal, 0, 1021, 50, 180); schaal om het te gebruiken met de servo (resultaat tussen 70 en 180)
{
myservo1.write(servoVal); stelt u de positie van de servo volgens de geschaalde waarde
}
delay(15); wacht tot de servo om er te komen
}
/**
* Weergavewaarden voor joystick
*/
ongeldig outputJoystick() {}
Serial.Print(analogRead(joyH));
Serial.Print ("---");
Serial.Print(analogRead(joyV));
Serial.println ("---");
}