Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Servo.h> //declaras la clase Servo
- Servo myServo; //Instancias un objeto de la clase Servo bajo el nombre miServo
- int tiltPin=8; //Dices en que PIN está el sensor de inclinación
- int switchState=0;
- //Estableces a qué PIN está conectado cada LED
- int redLED=2;
- int greenLED=3;
- void setup() {
- // Declaras los PINS de entrada y salida
- pinMode(tiltPin,INPUT);
- pinMode(redLED,OUTPUT);
- pinMode(greenLED,OUTPUT);
- myServo.attach(4); // Adhieres el Servomotor (dices donde se encuentra)
- myServo.write(180); //colocas el Servomotor a 180º para tener una referencia
- }
- void loop() {
- // put your main code here, to run repeatedly:
- switchState=digitalRead(tiltPin); //Guardas la información del tilt sensor en la variable switchState
- //monitoreas el funcionamiento del sensor de inclinación (Tilt sensor)
- Serial.begin(9600);
- Serial.println(switchState);
- delay(100);
- //Programas un IF diciendo que si el sensor reporta un valor igual a 0 (está mirando hacia abajo) entonces estableces el ángulo del
- //servomotor a 0º y enciendes la luz verde.
- if (switchState==0){
- //Con la función myServo.write() estableces el ángulo del servomotor, puede ser cualquier número entre 0 y 180 grados
- myServo.write(0);
- digitalWrite(redLED,HIGH);
- digitalWrite(greenLED,LOW);
- } else if (switchState!=0){
- //Si el valor es distinto a 0 (está mirando hacia arriba)
- //entonces cambias el ángulo a 180º (el opuesto) y enciendes la luz verde
- myServo.write(180);
- digitalWrite(greenLED,HIGH);
- digitalWrite(redLED,LOW);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement