miércoles, 17 de agosto de 2022

Control analógico de LED con Arduino

 Control analógico de un LED con Arduino

Dr. Héctor Darío Aguirre Arvizu
22-08-18
Aquí te presentamos el programa para el control del LED por medio de un programa que emplea el principio de modulación por ancho de pulso.
Modulación por Ancho de Pulso.

El circuito a usar es sencillo, conecta un LED a la terminal tres (3) de las salidas del Arduino, luego un resistor de 220 ohmios y de allí a la tierra del Arduino.

Inicio del programa. Copia desde la siguiente línea a tu sketch de Arduino.
/*
Este programa hace que el led de salida encienda de modo gradual hasta llegar
a un máximo y de allí vuelva a bajar la intensidad hasta apagarse.
Tomado de: HobbyElectrónica https://www.youtube.com/watch?v=5u_TKpOlx8U

Modificado por: Darío Aguirre 22-08-14
*/
// Establecimiento de variables, en este caso enteras.

int pwm = 5;             //Asignación de la terminal de salida donde se conectara el LED
int i = 0;               //variable que hará que el ciclo de trabajo aumente y disminuya

// Programación de terminales de salida.

void setup(){
  pinMode(pwm,OUTPUT);   //En la terminal tres se hará la salida y allí estará el LED 
  }

// Programa en sí.

void loop(){                                // Inicio de ciclo de encendido secuencial.
    for(i = 0; i <= 255 ; i++)     // Uso de instrucción "for" (para), de tal modo que 
                                                    // verifica si es menor o igual a 255, si no, aumenta en uno.
    {  analogWrite(pwm,i);         // Escribe el valor de pwn como salida analógica de voltaje
                                                   // que se traduce en la salida como un pulso estrecho que
                                                     // va creciendo en anchura.
       delay(20); }                // Espera 20 milisegundos antes de incrementar
                                                    // 20 mseg es la 50ava parte de un segundo
    
  for(i = 255; i>= 0 ; i--) 
    {  analogWrite(pwm,i);
       delay(20); 
     }
     delay(1000);                   // Espera un segundo con LED apagado
}                                  // A partir de aquí regresa a la línea donde inicia "for".

Hasta aquí el programa.

Aquí te presentamos el video para que te guíes en la exploración del programa.



D. R. 2022 Darío Aguirre


viernes, 12 de agosto de 2022

Electrónica Analógica y Digital

 Electrónica Analógica y Digital


Dr. Héctor Darío Aguirre Arvizu
22-08-12

     La realidad del mundo se manifiesta de dos formas. Una es continua, es decir, las variables que usamos para medir los fenómenos cambian de modo continuo, de un valor al siguiente de modo suave. La otra forma es por medio de pulsaciones (discreta).
     
     Por una parte la analogía es la relación de semejanza entre cosas distintas. Esta relación puede tener que ver con su estructura, su función, etc., pero no en cuanto su origen.
Mundo analógico-digital. (1)
     Para dar una idea en un campo diferente, la biología, entre los animales son órganos análogos las alas de los insectos y de las aves, las patas cavadoras del topo y del grillotopo, aunque su origen sea diferente.

     Por su parte, el razonamiento por analogía es el que luego de observar los caracteres comunes de dos o más hechos, se pasa a la afirmación de otro carácter común observado sólo en uno de ellos. El razonamiento por analogía sólo permite formular hipótesis de trabajo; empleando un razonamiento por analogía, se ha supuesto, p. ej. la existencia de vida en Marte, pero la comprobación se tiene que hacer por experimentación.

     Este tipo de razonamiento, el analógico, se emplea en todas las ciencias, así, la teoría ondulatoria de la luz surgió por analogía con la teoría ondulatoria de la transmisión del sonido. En matemáticas, las leyes de las operaciones fundamentales que se aplican a los números naturales (enteros), se extienden, por analogía, a los números fraccionarios y después a los negativos, etc.
     
     Durante siglos, la medición de una variable se ha hecho por medio de una analogía, en un principio de tipo mecánico, por ejemplo, para medir la longitud del diámetro de la tierra en la antigüedad, se utilizó la altura de la sombra de un palo de cierta altura colocado en dos ciudades distantes unas de otras.
Calculadora Analógica (2).
     Con el advenimiento de la ciencia, en particular desde la revolución industrial, la necesidad de medir fue incrementándose, lo que llevó a descubrimientos que permitieron el desarrollo de medidores analógicos, en particular los que usaban agujas que, por medio de un ángulo, representaban el valor de la variable. Por algún procedimiento se establecía el patrón para conocer la unidad. En un principio era suficiente que la aguja apuntara en una dirección no precisa, la carátula que se empleaba estaba dividida en tres o más zonas que podían colorearse. Más adelante, las divisiones fueron haciéndose más pequeñas, de modo que pudieran medirse fracciones de la unidad elegida o graduaciones más pequeñas. La aguja siempre ha representado una cierta cantidad o intensidad de la variable, la vemos colocada en un ángulo. Regresando un poco a la imagen 2, podemos decir que el giro de la esfera representaba una distancia y ángulo recorridos, haciendo una especie de integración de información, de modo que en un mismo movimiento se representan dos o más variables.
Balanza mecánica, el peso se representa por el desplazamiento de la aguja. (3)
     El reloj de agujas es el instrumento de medición analógica más conocido por muchas personas. Mide el paso del tiempo siguiendo un ángulo de giro. 
Un reloj ya no tan común. (4)
     En medición analógica las magnitudes o valores que varían con el tiempo de modo continuo: distancia, temperatura, velocidad, o intensidad de cualquier variable, se registran, como se ha mencionado, por el ángulo de giro de una aguja, ya que se transforman en una corriente eléctrica que pasa por una bobina, a la que está sujeta la aguja.
Miliamperímetro, representa la corriente por el ángulo. (5)
     Por cierto, los discos de vinil (plástico acetato) son una forma de registro del sonido, magnitud analógica, ya que se graban ranuras de profundidad y ancho proporcionales a la intensidad y frecuencia del sonido. También es posible la grabación en cintas magnéticas y otros dispositivos semejantes.
Ranuras de disco de acetato. (6)
     El desarrollo de la tecnología analógica en electrónica llegó a grandes logros con los amplificadores operacionales ya que se pudo comparar señales, operar con ellas (sumarlas, restarlas, multiplicarlas, dividirlas, integrarlas, diferenciarlas, etc.). Ya la tecnología analógica mecánica había logrado avances en la realizaciones de operaciones con las variables por medio de diversos mecanismos, sin embargo no era una tarea fácil y los mecanismos tendían a desgastarse, lo que provocaba errores de medición o representación.

     Como se mencionó, un instrumento de medición analógico puede tener un galvanómetro, bobina a la que se le adhiere una aguja, la cual se desplaza por encima de una carátula graduada. Es la base de los primeros amperímetros y los voltímetros, los higrómetros y otros medidores. Tenemos además ejemplo del multímetro analógico.
Multímetro analógico. (7)
     Ya en electrónica, lo analógico se ha manejado con el sonido, desarrollando micrófonos, pre-amplificadores, amplificadores, bocinas (altavoces) y muchos otros dispositivos. Ya se mencionaron las formas de registro en discos plásticos y cintas magnéticas. Lo mismo  ocurrió con el sistema de televisión, en todas sus modalidades. 

     En un osciloscopio es posible ver cómo cambia la intensidad de un voltaje en el tiempo. Aquí mostramos un cambio suave en una onda sinusoidal. Aquí la imagen como se ve en el osciloscopio.
Onda sinusoidal en osciloscopio. (8)


     Por su parte, lo pulsatil, lo discontinuo, se refiere a lo digital, es decir, a lo relacionada a los dedos. El conteo básico siempre se ha iniciado con el manejo de unidades concretas como los dedos o con piedras. En una época posterior el conteo con piedras sueltas pasó a hacerse con cuentas (piedras) insertadas en un canal o en un hilo o barra. Se formó entonces el ábaco, donde las barras centrales dan valores posicionales, pero el conteo se realiza uno más uno.

     Como se ve, lo digital no nació con la electrónica. Se ha mencionado el manejo del ábaco, un verdadero sistema de conteo uno por uno, manejando las cuentas con los dedos. Para el manejo del mismo se desarrollaron procedimientos particulares, los llamados algoritmos. La pretensión del conteo por medio de máquinas, surgida en el siglo XVIII con Babbage, llevó a retomar los algoritmos de los abacistas (así se llamaba a los que manejaban el ábaco en el siglo X) para la realización de los cálculos de modo más rápido. Se observó que el manejo del sistema decimal, adoptado primero en Francia, se podía reproducir por medio de engranes, lo que llevó a la ideación y fabricación de grandes máquinas más bien experimentales. 
Reproducción de un diseño de Babbage. (9)
     Con el desarrollo de los dispositivos electrónicos, en particular válvulas al vacío en su momento, después transistores y más adelante circuitos integrados, se ha permitido la aceleración de los procedimientos o algoritmos de los ábacos, de modo que prácticamente se hacen los mismos "movimientos" pero de modo que cada paso se realiza de microsegundos.

     Para el establecimiento de sistemas electrónicamente cada vez más rápidos fue necesario disminuir el número de dígitos a utilizar, a dos de ellos, cero y uno. Esto es, se emplea un sistema binario en lugar de uno decimal. Existen diversos sistemas numéricos con base diferentes, el decimal, tradicionalmente ya conocido, el que manejamos a nivel mundial como cotidiano, el binario, el octal, el hexadecimal, el vigesimal, etc.

     A los sistemas que utilizan estas ideas se les llama digitales. Los ceros y unos son representados por el voltaje cero y por un cierto valor máximo que, en un principio pudo ser de hasta cuarenta y ocho voltios, pero con la llamada tecnología TTL se redujo a 5V y actualmente se manejan voltajes de 3.7 y 3.3V en los dispositivos de comunicación celular. Algunas tecnologías como la CMOS permiten voltajes de hasta 18V.

     Los voltajes que representan los ceros y unos se dan como trenes de pulsos: se tiene voltaje cero para después presentar un voltaje alto que después cae a cero y después vuelve a subir a un máximo, para volver a caer. Los trenes de pulsos se juntan, por medio de un código, para proporcionar información útil. Te presento una imagen de un tren de pulsos.
Pulsos en el osciloscopio. (10)
     A todo sistema que utiliza este tipo de conformación y que, además muestra la información por medio de números, se le llama digital.

     En realidad los sistemas digitales y analógicos no son excluyentes ni en la técnica ni en la práctica, es decir, siempre existirán las señales tomadas de la realidad que requieren de ser manejadas electrónicamente, en un momento de modo analógico, para después pasarlos a un modo digital, con lo que se puede registrar en algún sustento como memorias, discos, etc. Esta información se puede cambiar a analógica, como por ejemplo en la música que escuchamos en dispositivos electrónicos que se reproduce con audífonos.

     En medición empleamos el multímetro digital que transforma las variables de voltaje, corriente y resistencia en señales digitales, de ceros y unos para ser expresadas después en un display por medio de números en sistema decimal.
Multímetro digital. (11)
     Luego entonces existen dos grandes campos de variables de la realidad, el analógico y el digital, que, al ser llevados a diferentes tecnologías, la mecánica, la eléctrica y la electrónica, crean  los campos del mismo nombre. Con la tecnología electrónica, en el procesamiento de información, se establecen entonces los campos de la electrónica analógica y la digital, ambas en gran desarrollo actual.

     Te dejo un video explicativo:



Imágenes tomadas de: 
(1), (4), (7) y (11) Imagen del autor.
(2) BBVA
(6) Quora.
(8) y (10) Genairo M. Román.
(9) El País.


D. R. 2022 Darío Aguirre






martes, 9 de agosto de 2022

Arduino 05 Contador Ascendente-Descendente.

 

Contador Ascendente-Descendente.


Dr. Héctor Darío Aguirre Arvizu
22-08-09

     Aquí veremos cómo construir un contador ascendente descendente con un display de 7 segmentos de cátodo común.

     En una entrada previa he hecho la versión para el display de ánodo común.


     Disponemos de un display de 7 segmentos 5161AS. 


Nos vamos a la hoja de datos (ver la liga) y obtenemos la siguiente información:


     Sin embargo, en esta información no nos dicen cómo están distribuidas las terminales en el propio display, es decir, no nos dicen cuál es la uno, dos, tres, etc. Podemos suponer que es como en los circuitos integrados que se hace en sentido de las manecillas del reloj. Una nueva búsqueda nos da la siguiente información (mi arduino uno):
Aquí y apodemos ver la correlación entre segmentos del display y las terminales, por ello:
     Aquí presentamos inclusive, en el extremo externo a cada LED, la conexión que se hará en las terminales del Arduino.
     A continuación te presento el diagrama:

     A continuación te muestro una fotografía de cómo queda conectado:


     Ya en el principio de te habíamos puesto la imagen generada den Thinkercad del circuito. Puedes revisarla.
     Desde aquí te presento el programa. Solamente tienes que copiarlo (solo la letra pequeña) y de allí pegarlo a un sketch del programa Arduino, compilarlo (para verificar que hayas copiado correctamente), guardarlo en un archivo .ino, para después subirlo a tu tarjeta con las conexiones previamente realizadas.
     Desde aquí el programa.
//Contador ascendente-descendente con display de 7 segmentos con ánodo común
//Dr. Héctor Darío Aguirre Arvizu
//2022-10-22
// las terminales 3 y 8 del display 5161AS son el punto común que en este caso se conecta a GND o negativo.

const int p = 13; //asigna el pin 13 el encendido del punto decimal al inicio del programa; parpadea con el diodo del circuito
const int a = 12; // a partir de 12 hacia abajo asignamos los pines para los diferentes segmentos;
const int b = 11; // los colocamos como enteros asignados a un pin;
const int c = 10; // Ello permite no confundir a qué segmento (a, b, c, etc.) se le dará voltaje
const int d = 9;
const int e = 8;
const int f = 7;
const int g = 6;
const int x = 1000; // asignamos un valor fijo para que cada dígito prenda un segundo

void setup() {

  pinMode(a, OUTPUT);
  pinMode(b, OUTPUT);
  pinMode(c, OUTPUT);
  pinMode(d, OUTPUT);
  pinMode(e, OUTPUT);
  pinMode(f, OUTPUT);
  pinMode(g, OUTPUT);
}

void loop() {

    //Cero
  digitalWrite(a, HIGH); //Al ser un display de cátodo común cada segmento debe estar en alto para encender
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, LOW); // cuando están en alto permanecen apagados
  delay(x);

    //Uno
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  delay(x);

    //Dos
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, LOW);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, LOW);
  digitalWrite(g, HIGH);
  delay(x);

    //Tres
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, HIGH);
  delay(x);

    //Cuatro
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  delay(x);

   //Cinco
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  delay(x);

    //Seis
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  delay(x);

    //Siete
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  delay(x);

    //Ocho
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  delay(x);

    //Nueve
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  delay(x);

    //Ocho
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  delay(x);

   //Siete
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  delay(x);

    //Seis
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  delay(x);

    //Cinco
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  delay(x);

    //Cuatro
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  delay(x);

    //Tres
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, HIGH);
  delay(x);

    //Dos
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, LOW);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, LOW);
  digitalWrite(g, HIGH);
  delay(x);

    //Uno
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  delay(x);

}
Hasta aquí el programa
Te coloco aquí el video del tema:


Espero te diviertas.


D. R. 2022 Darío Aguirre


domingo, 7 de agosto de 2022

Arduino 04 Semáforo

3 LEDs externos


Dr. Héctor Darío Aguirre Arvizu
22-08-08


     Aquí te presentamos cómo elaborar un simulador de semáforo con Arduino.
     Lo que en realidad hacemos es extender la aplicación Blink a tres canales.
Conexiones al Arduino de los tres LEDs del semáforo.


Aquí te muestro el video de cómo conectar y jugar con los valores de duración de los destellos de cada LED.

     Te mostramos a continuación el programa.

     Inicio del programa. Copia desde aquí a tu sketch del programa Arduino.
/*
  SEMÁFORO SENCILLO por Darío Aguirre 2022

  Este programa enciende el led durante 1 segundo y lo apaga otro tanto de modo repetido.

  Prácticamente todas las tarjetas Arduino tienen un LED integrado que podemos controlar.En el UNO, MEGA y ZERO
  el LED está amarrado al pin 13, en MKR1000 en el pin 6. LED_BUILTIN es la instrucción para activar el LED
  independientemente de qué tarjeta se esté usando.
  Si necesita saber qué pin corresponde al LED en una tarjeta en particular
  verifique los aspectos técnicos de la tarjeta aquí:
  https://www.arduino.cc/en/Main/Products

  modified 8 May 2014
  by Scott Fitzgerald
  modified 2 Sep 2016
  by Arturo Guadalupi
  modified 8 Sep 2016
  by Colby Newman6
  Modificado por Darío Aguirre 4 de julio 2022

  Este ejemplo de código es de dominio público.

  https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
*/

// activa las funciones de activación (setup) una vez que presionas el botón de reset
void setup() {
  // inicializa el pin digital LED_BUILTIN como una salida. Equivale al pin 13 de la tarjeta.
  pinMode(LED_BUILTIN, OUTPUT);
  pinMode(12, OUTPUT);
  pinMode(11, OUTPUT);
  pinMode(10, OUTPUT);
}

// el ciclo de encendido-apagado del LED corre continuamente hasta que se desconecta la tarjeta y vuelve a activarse al encenderla.
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // Enciende el LED (HIGH indica que se activa el voltaje)
  delay(1000);                       // para el primer LED, verde
  digitalWrite(LED_BUILTIN, LOW);    // apaga el LED haciendo que el voltaje sea bajo (LOW).
  delay(1000);                       //   
                                     // 
  digitalWrite(12, HIGH);   // Enciende segundo LED, amarillo
  delay(1000);              // 
  digitalWrite(12, LOW);    // 
  delay(1000);  

  digitalWrite(11, HIGH);   // Enciende segundo LED, amarillo
  delay(1000);              // 
  digitalWrite(11, LOW);    // 
  delay(1000);                

  digitalWrite(10, HIGH);   // Enciende segundo LED, amarillo
  delay(1000);              // 
  digitalWrite(10, LOW);    // 
  delay(1000); 
}
Fin de programa

     Aquí te dejo un video que hice con el simulador de thinkercad. En esta plataforma se puede programar de diferente manera, pero el resultado es semejante.


Diviértete.

D. R. 2022 Darío Aguirre


Arduino 03 Conectar un LED externo

Conectar un LED externo


Dr. Héctor Darío Aguirre Arvizu
22-07-25


     Conectar la interfaz al mundo externo es lo más importante.
     Habría dos tipos de conexiones externas: entradas para recibir información del mundo por medio de sensores, y salidas, para ejercer control sobre dispositivos como LEDs, motores, actuadores y otros.
Conectar un LED al Arduino es relativamente fácil.
Circuito Electrónico de LED externo.

Es cuestión de elegir una terminal de salida de las 13 disponibles, asignarla como tal en la zona de programación y ejecutar el programa que encendería el LED pero también lo apagaría.
Conectemos un LED externo en una tarjeta de prueba y llevemos sus terminales por medio de cables hacia las terminales 13 y GND (tierra). Asegurémonos de que usamos un resistor de al menos 180 ohmios en serie con el LED, en nuestro caso usaremos 220 ohmios. Se ve en la anterior imagen el circuito.
Aquí hemos utilizado un diagrama pictórico generado en la plataforma Thikercad. Te anexo el video en donde se explica le mejor manera la conexión y funcionamiento.

Para activar el LED estamos usando el programa Blink (destello).
A continuación te doy el programa, que puedes copiar directo de esta publicación y colocarlo en un sketch de Arduino.
Copia desde aquí todo lo que está en letra pequeña.
/* Blink o Destellador Modificado por Darío Aguirre 2022 Este programa enciende el led durante 1 segundo y lo apaga otro tanto de modo repetido. Prácticamente todas las tarjetas Arduino tienen un LED integrado que podemos controlar.En el UNO, MEGA y ZERO el LED está amarrado al pin 13, en MKR1000 en el pin 6. LED_BUILTIN es la instrucción para activar el LED independientemente de qué tarjeta se esté usando. Si necesita saber qué pin corresponde al LED en una tarjeta en particular verifique los aspectos técnicos de la tarjeta aquí: https://www.arduino.cc/en/Main/Products modified 8 May 2014 by Scott Fitzgerald modified 2 Sep 2016 by Arturo Guadalupi modified 8 Sep 2016 by Colby Newman Modificado por Darío Aguirre 4 de julio 2022 Este ejemplo de código es de dominio público. https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink */ // activa las funciones de activación (setup) una vez que presionas el botón de reset void setup() { // inicializa el pin digital LED_BUILTIN como una salida. Equivale al pin 13 de la tarjeta. pinMode(LED_BUILTIN, OUTPUT); } // el ciclo de encendido-apagado del LED corre continuamente hasta que se deconecta la tarjeta y vuelve a activarse al encenderla. void loop() { digitalWrite(LED_BUILTIN, HIGH); // Enciende el LED (HIGH indica que se activa el voltaje) delay(1000); // espera por un segundo: aquí son mil milisegundos. digitalWrite(LED_BUILTIN, LOW); // apaga el LED haciendo que el voltaje sea bajo (LOW). delay(1000); // espera por un segundo, y se regrasa a ejecutar el ciclo o // bucle "void (loop)" hasta que quitemos la fuente de voltaje. }
Hasta aquí el programa.

Que te diviertas.
D. R. 2022 Darío Aguirre.