0% encontró este documento útil (0 votos)
27 vistas7 páginas

Codigocoment

El documento explica varios códigos de Arduino para controlar LEDs y displays en Proteus. Incluye ejemplos de encender LEDs con botones, parpadeo automático, lectura de múltiples botones, y patrones personalizados. Cada sección proporciona un resumen del funcionamiento del código y su efecto visual.

Cargado por

Abril Michelle
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
27 vistas7 páginas

Codigocoment

El documento explica varios códigos de Arduino para controlar LEDs y displays en Proteus. Incluye ejemplos de encender LEDs con botones, parpadeo automático, lectura de múltiples botones, y patrones personalizados. Cada sección proporciona un resumen del funcionamiento del código y su efecto visual.

Cargado por

Abril Michelle
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Explicación de los códigos y funcionamiento en proteus

1. BIT INPUT – LED prende si presionas un botón

void setup() {

pinMode(13, OUTPUT); // El pin 13 será usado para encender un LED

pinMode(7, INPUT); // El pin 7 será usado para leer si el botón está presionado

void loop() {

digitalWrite(13, digitalRead(7)); // Si el botón está presionado (pin 7 en alto), el LED


(pin 13) se enciende

delay(1); // Espera muy poquito para que funcione sin errores

Resumen: Cuando presionas el botón, el LED se enciende. Cuando lo sueltas, se


apaga.

2. BIT OUTPUT – LED parpadea solo

void setup() {

pinMode(13, OUTPUT); // Preparamos el pin 13 para que controle el LED

void loop() {

digitalWrite(13, HIGH); // Encendemos el LED

delay(500); // Esperamos medio segundo


digitalWrite(13, LOW); // Apagamos el LED

delay(500); // Esperamos medio segundo

Resumen: El LED parpadea cada medio segundo sin necesidad de presionar nada.

3. BYTE INPUT – Leer muchos botones y mostrar en LEDs

void setup() {

PORTD = 0x00; // Apagamos todos los LEDs

DDRD = 0xFF; // Preparamos los pines del puerto D para los LEDs (salida)

DDRB = 0x00; // Preparamos los pines del puerto B para los botones (entrada)

void loop() {

PORTD = PINB; // Lo que presionemos en los botones, se refleja en los LEDs

Resumen: Cada botón enciende o apaga un LED, como si fueran espejos.

4. BYTE OUTPUT – Encender grupos de LEDs

void setup() {

DDRD = 0xFF; // Preparamos los LEDs como salidas

PORTD = 0x00; // Apagamos todo al principio

}
void loop() {

PORTD = 15; // Encendemos los primeros 4 LEDs

delay(500); // Esperamos

PORTD = 240; // Encendemos los últimos 4 LEDs

delay(500); // Esperamos

Resumen: Enciende 4 LEDs de un lado y luego 4 del otro, cambiando cada medio
segundo.

5. FOR 240 a 255 – Mostrar todos los LEDs combinados

int i;

void setup() {

DDRD = 0xFF; // LEDs como salidas

PORTD = 0x00;

void loop() {

for(i = 240; i <= 255; i++) {

PORTD = i; // Muestra combinaciones raras en los LEDs

delay(500);

}
Resumen: Muestra diferentes patrones en los LEDs. Se ve como si jugaras con luces
en binario.

6. BARRIDO DE LEDS – Uno por uno a ida y vuelta

byte sec[] = {1,2,4,8,16,32,64,128};

byte i;

void setup() {

DDRD = 0xFF;

PORTD = 0x00;

void loop() {

for(i = 0; i <= 7; i++) {

PORTD = sec[i]; // Enciende un LED de izquierda a derecha

delay(500);

for(i = 7; i >= 0; i--) {

PORTD = sec[i]; // Enciende un LED de derecha a izquierda

delay(500);

}
Resumen: Se ve como una carrera de luces: de ida y de regreso.

7. PATRÓN PERSONALIZADO DE LEDS

byte sec[] = {129, 66, 36, 24};

int i;

void setup() {

DDRD = 0xFF;

PORTD = 0x00;

void loop() {

for(i = 0; i <= 3; i++) {

PORTD = sec[i]; // Muestra un diseño específico de luces

delay(500);

for(i = 3; i >= 0; i--) {

PORTD = sec[i]; // Muestra el diseño al revés

delay(500);

Resumen: Se encienden LEDs con patrones como si fueran flechas o formas.


8. BOTÓN Y DISPLAY – Avanza números al presionar

byte sec[] = {63,6,91,79,102,109,125,7,127,111}; // Cómo se ve cada número en el


display

int i = 0;

void setup() {

PORTD = sec[0]; // Mostramos el número 0 al principio

DDRD = 0xFF; // Display como salida

DDRB = 0xFE; // Pin 8 como entrada (botón)

void loop() {

if (digitalRead(8)) { // Si presionamos el botón

i++; // Vamos al siguiente número

if(i == 10) i = 0; // Si llegamos a 9, volvemos a 0

PORTD = sec[i]; // Mostramos el número en el display

while(digitalRead(8)) {

delay(10); // Esperamos que se suelte el botón

Resumen: Al presionar el botón, el número del display cambia. Sirve como contador.

También podría gustarte