0% encontró este documento útil (0 votos)
17 vistas4 páginas

Documento 4

Util en programación
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 DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
17 vistas4 páginas

Documento 4

Util en programación
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 DOCX, PDF, TXT o lee en línea desde Scribd

Importancia /

Línea o Bloque Descripción Detallada


Rango de valores

Se declaran dos variables


enteras: sw y adc,
inicializadas en 0. sw Importante para el
almacenará el estado del control: sw solo
int sw = 0, adc = 0;
interruptor (1 o 0), y adc el puede ser 0 o 1. adc:
valor leído del conversor 0-1023.
analógico a digital (ADC), de
0 a 1023.

Variable de tipo flotante


Almacena el voltaje
(decimal) para almacenar el
float voltaje = 0; en voltios (0–5 V
voltaje convertido del ADC.
típicamente).
Inicialmente es 0.

Variable para el pin de salida Ayuda a no poner


int buzzerPin = 9; digital conectado al números fijos en el
zumbador (pin 9). código.

Función de inicialización de
Arduino, se ejecuta una sola Configura pines y la
void setup() { ... }
vez al encender la placa o comunicación serial.
reiniciar.

Configura el pin digital 7 Necesario para leer el


pinMode(7, INPUT); como entrada (para el estado del switch
switch). (botón/palanca).

Permite controlar el
Configura el pin digital 6
pinMode(6, OUTPUT); encendido/apagado
como salida (para el LED).
del LED.

Necesario para
pinMode(buzzerPin, Configura el pin digital 9
activar/desactivar el
OUTPUT); (buzzerPin) como salida.
buzzer.

Permite enviar datos


Inicia la comunicación serial
Serial.begin(9600); al monitor serial, útil
a 9600 baudios por segundo.
para depuración.

Función principal que se


Donde ocurre la
void loop() { ... } ejecuta en bucle mientras el
lógica repetitiva.
Arduino esté encendido.

sw = digitalRead(7); Lee el valor del pin 7 y lo sw toma valores 0


Importancia /
Línea o Bloque Descripción Detallada
Rango de valores

guarda en sw. (LOW) o 1 (HIGH).

adc es un entero de 0
adc = Lee el pin analógico A0 y
a 1023, según la
analogRead(A0); guarda el valor en adc.
señal analógica.

Convierte el valor ADC (0–


1023) a voltaje (0–5 V) voltaje queda entre 0
voltaje = (adc * 5.0) /
usando la fórmula de y5V
1023.0;
conversión. Multiplica por 5 V aproximadamente.
y divide entre 1023.

Envía el valor del voltaje al


Ayuda a monitorear
Serial.println(voltaje); monitor serial para
en tiempo real.
visualización.

Condición: si el switch está


Prioridad para
if (sw == 1 && activado y el voltaje es
condiciones de mayor
voltaje > 2.5) { ... } mayor a 2.5 V, ejecuta este
voltaje.
bloque.

Enciende el LED conectado al


digitalWrite(6, HIGH); HIGH = 1 (enciende).
pin 6.

Espera 300 ms (0.3 Da tiempo antes de


delay(300);
segundos). activar el buzzer.

Activa el buzzer con una El tono del buzzer


tone(buzzerPin,
frecuencia de 1000 Hz (1 depende de la
1000);
kHz). frecuencia.

Espera 2.7 segundos. Junto Controla la duración


delay(2700); con los 0.3 anteriores, suman total del sonido del
3 s totales. buzzer.

Para detener el
noTone(buzzerPin); Apaga el buzzer.
sonido.

digitalWrite(6, LOW); Apaga el LED. LOW = 0 (apaga).

Pausa de 1 s tras apagar el Estética de la


delay(1000);
LED. secuencia.

else if (voltaje > 1.5 Condición para voltajes entre Control de rango
&& voltaje < 2.5 &&
Importancia /
Línea o Bloque Descripción Detallada
Rango de valores

sw == 1) { ... } 1.5 y 2.5 V y switch activado. medio de voltaje.

Espera 2 s (LED y buzzer ON


delay(2000); Control de duración.
juntos).

else if (voltaje < 1 && Condición: voltaje menor a 1


Rango bajo.
sw == 1) { ... } V y switch activado.

for (int i = 0; i < 5; i+ Bucle para parpadeo y tono Crea parpadeo rápido
+) { ... } breve, repite 5 veces. del LED y buzzer.

tone(buzzerPin, Diferencia el caso del


Tono más agudo (2000 Hz).
2000); rango bajo.

delay(200); Pausa 200 ms (rápido). Parpadeo ágil.

else if (voltaje > 4 && Condición para voltaje mayor Rango alto, prioridad
sw == 1) { ... } a 4 V y switch activo. alta.

Diferencia del rango


tone(buzzerPin, 800); Tono más grave (800 Hz).
medio.

Control del tiempo de


delay(1000); Pausa de 1 s para buzzer.
sonido.

LED sigue encendido hasta


delay(3000); Efecto largo del LED.
totalizar 5 s.

else if (voltaje > 3 &&


Condición para voltaje entre Rango específico
voltaje < 3.5 && sw
3 y 3.5 V y switch activo. medio-alto.
== 1) { ... }

for (int i = 0; i < 3; i+ Parpadeo con tono medio, 3


Estética diferente.
+) { ... } veces.

tone(buzzerPin,
Tono a 1200 Hz. Medio tono.
1200);

Si ninguna condición se
else { ... } Estado por defecto.
cumple, apaga LED y buzzer.

Mejora la estabilidad
Pausa corta antes de la
delay(100); y evita lecturas
siguiente iteración.
demasiado rápidas.
Variable /
Rango de valores / uso
Función

adc 0 a 1023 (lectura analógica de 10 bits).

0 a 5 V aproximadamente (depende de la referencia de


voltaje
voltaje de Arduino).

sw 0 o 1 (0 = LOW, 1 = HIGH).

Frecuencia de tono en Hz. Diferentes casos usan: 800 Hz,


tone()
1000 Hz, 1200 Hz, 2000 Hz.

Tiempo en milisegundos. Puede ser: 100, 200, 300, 1000,


delay()
2000, 2700, 3000, 5000 ms según la secuencia.

También podría gustarte