Entradas

Sistema de turnos con Infrarojo

Imagen
#include <IRremote.h> int receiver = 5; // pin 1 of IR receiver to Arduino digital pin 5 IRrecv irrecv(receiver); // create instance of 'irrecv' decode_results results; int contador = 0;  //Variable asociada al contador void encender(int a, int b, int c, int d, int e, int f, int g) {   //Funcion que permite mostrar los numeros del 0 al 9   //Asigna un segmento del display a cada pin   digitalWrite (7,a);   //Se reciben 7 variables y se asignan   digitalWrite (8,b);   //a cada una de las salidas   digitalWrite (9,c);   digitalWrite (10,d);   digitalWrite (11,e);   digitalWrite (12,f);   digitalWrite (13,g); } void setup() {     Serial.begin(9600); // for serial monitor output   irrecv.enableIRIn(); // Start the receiver     //Inicializa los pines como entradas/salidas digitales   pinMode(7, OUTPUT);   pinMode(8, OUTPUT);   pinMode(9, OUT...

Sistema de turnos con led de 7 segmentos y pulsadores

Imagen
int contador = 0;  //Variable asociada al contador int presionado1; //Variable para el antirrebote del pulsador aumentar int presionado2; //Variable para el antirrebote del pulsador disminuir int pulsador_disminuir = 2; //Pulsador conectado al pin 2 int pulsador_aumentar = 4; //Pulsador conectado a pin 4 void encender(int a, int b, int c, int d, int e, int f, int g) {   //Funcion que permite mostrar los numeros del 0 al 9   //Asigna un segmento del display a cada pin   digitalWrite (7,a);   //Se reciben 7 variables y se asignan   digitalWrite (8,b);   //a cada una de las salidas   digitalWrite (9,c);   digitalWrite (10,d);   digitalWrite (11,e);   digitalWrite (12,f);   digitalWrite (13,g); } void setup() {   //Inicializa los pines como entradas/salidas digitales   pinMode(7, OUTPUT);   pinMode(8, OUTPUT);   pinMode(9, OUTPUT);   pinMode(10, OUTPUT); ...

Prender y apagar un led del mismo botón

Imagen
// Práctica encender LED con botón pulsador y luego apagar LED con el mismo //boton pulsador int LED =13; int BOTON = 7; int val = 0; //val se emplea para almacenar el estado del boton int estado = 0; // 0 LED apagado, mientras que 1 encendido int valAntiguo = 0; // almacena el antiguo valor de val void setup(){   pinMode(LED,OUTPUT);  pinMode(BOTON,INPUT); } void loop() {      val= digitalRead(BOTON); // lee el estado del Boton if ((val == HIGH) && (valAntiguo == LOW)){ estado = 1-estado; delay(10); } valAntiguo = val; // valor del antiguo estado if (estado==1){  digitalWrite(LED, HIGH); } else{  digitalWrite(LED,LOW); } }

Display de 7 segmentos

Imagen
Display de 7 segmentos (1 dígito) Introducción teórica Un display de segmentos (o visualizador) es un componente electrónico que se utiliza para representar números. Como su propio nombre indica y, como se puede observar en la imagen siguiente, el display está compuesto por 7 segmentos, los cuales se encenderán y/o apagarán en función del número a representar. De forma interna, se asemeja a siete LEDs conectados estratégicamente formando el número 8, aunque externamente dicha semejanza no se observa, de ahí su simplicidad. Cada uno de los segmentos que componen este display se denominan a, b, c, d, e, f y g, tal y como se muestra a continuación. Para mostrar el número 0, tendremos que encender a, b, c, d, e y f. Para el número 2, tendríamos a, b, g, e y d. Y de la misma forma para cualquier otro número. El P simboliza el punto decimal. En cuanto a la clasificación, existen de dos tipos: 1. Display de segmentos de cátodo común , en la que todos los cátod...

Led RGB con sensor infrarojo y control remoto

Imagen
Código: #include <IRremote.h> int red = 9; int green = 13; int blue = 10; int receiver = 11; // pin 1 of IR receiver to Arduino digital pin 11 IRrecv irrecv(receiver); // create instance of 'irrecv' decode_results results; void setup() { pinMode (red, OUTPUT); pinMode (green, OUTPUT); pinMode (blue, OUTPUT);   Serial.begin(9600); // for serial monitor output irrecv.enableIRIn(); // Start the receiver } void loop() { if (irrecv.decode(&results)) // have we received an IR signal? { Serial.println(results.value, HEX); // display it on serial monitor in hexadecimal irrecv.resume(); // receive the next value     if(results.value==0xFD08F7){     digitalWrite(red,HIGH);     digitalWrite(green,LOW);     digitalWrite(blue,LOW); }   if(results.value==0xFD8877){     digitalWrite(red,LOW);     digitalWrite(green,HIGH);     digitalWrite(blue,LOW);   }     else if...

Sensor infrarrojo

Imagen
Código para leer los botones del control remoto: #include <IRremote.h> int receiver = 11; // Entrada de señal del sensor infrarrojo IRrecv irrecv(receiver); // Creación de un objeto 'irrecv' decode_results results; void setup() { Serial.begin(9600); // Para iniciar la salida en monitor serial irrecv.enableIRIn(); // Para iniciar el infrarrojo } void loop() { if (irrecv.decode(&results)) // ¿Se recibió alguna señal IR? { Serial.println(results.value, HEX); // Mostrar en el monitor serial el código de cada tecla del control irrecv.resume(); // Recibir el siguiente valor } }

Neopixel - Bandera de Colombia

Imagen
#include <Adafruit_NeoPixel.h> #define PIN 6 #define NUMPIXELS 12 // Cuando configuramos la biblioteca NeoPixel, le decimos cuántos píxeles y qué pin usar para enviar señales. Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); void setup() {   pixels.begin(); } void loop() {   for(int i = 0; i < NUMPIXELS; i++){     pixels.setPixelColor(i, pixels.Color(255,239,57));     pixels.show();        delay(250);       }      for(int i = 0; i < NUMPIXELS; i++){     pixels.setPixelColor(i, pixels.Color(5,74,255));     pixels.show();        delay(250);       }     for(int i = 0; i < NUMPIXELS; i++){     pixels.setPixelColor(i, pixels.Color(255,5,9));     pixels.show();        delay(250);     ...