Nota

Hola, ¡bienvenido a la Comunidad de Entusiastas de SunFounder Raspberry Pi, Arduino y ESP32 en Facebook! Sumérgete más en Raspberry Pi, Arduino y ESP32 con otros entusiastas.

¿Por qué unirse?

  • Soporte Experto: Resuelve problemas post-venta y desafíos técnicos con la ayuda de nuestra comunidad y equipo.

  • Aprender y Compartir: Intercambia consejos y tutoriales para mejorar tus habilidades.

  • Preestrenos Exclusivos: Obtén acceso anticipado a nuevos anuncios de productos y adelantos.

  • Descuentos Especiales: Disfruta de descuentos exclusivos en nuestros productos más nuevos.

  • Promociones y Sorteos Festivos: Participa en sorteos y promociones de temporada.

👉 ¿Listo para explorar y crear con nosotros? Haz clic en [Aquí] y únete hoy mismo.

3.1.5 Indicador de Batería

Nota

../_images/mcp3008_and_adc0834.jpg

Dependiendo de la versión de su kit, identifique si tiene ADC0834 o MCP3008 y continúe con la sección correspondiente.

Introducción

En este proyecto, haremos un dispositivo indicador de batería que puede mostrar visualmente el nivel de la batería en el LED Bargraph.

Componentes Necesarios

En este proyecto, necesitamos los siguientes componentes.

../_images/list_Battery_Indicator.png

Es definitivamente conveniente comprar un kit completo, aquí está el enlace:

Nombre

ARTÍCULOS EN ESTE KIT

ENLACE

Raphael Kit

337

Raphael Kit

También puedes comprarlos por separado en los enlaces a continuación.

INTRODUCCIÓN DE COMPONENTES

ENLACE DE COMPRA

Placa de Extensión GPIO

COMPRAR

Protoboard

COMPRAR

Cables de Puente

COMPRAR

Resistor

COMPRAR

Gráfico de Barras LED

-

ADC0834

-

Diagrama Esquemático

Nombre T-Board

Física

wiringPi

BCM

GPIO17

Pin 11

0

17

GPIO18

Pin 12

1

18

GPIO27

Pin 13

2

27

GPIO25

Pin 22

6

25

GPIO12

Pin 32

26

12

GPIO16

Pin 36

27

16

GPIO20

Pin 38

28

20

GPIO21

Pin 40

29

21

GPIO5

Pin 29

21

5

GPIO6

Pin 31

22

6

GPIO13

Pin 33

23

13

GPIO19

Pin 35

24

19

GPIO26

Pin 37

25

26

../_images/Schematic_three_one5.png

Procedimientos Experimentales

Paso 1: Construir el circuito.

../_images/image248.png

Paso 2: Ir a la carpeta del código.

cd ~/raphael-kit/c/3.1.5/

Paso 3: Compilar el código.

gcc 3.1.5_BatteryIndicator.c -lwiringPi

Paso 4: Ejecutar el archivo ejecutable.

sudo ./a.out

Después de ejecutar el programa, conecta un cable de salida al pin 3 de ADC0834 y el GND, y luego conéctalos a los dos polos de una batería por separado. Podrás ver los LED correspondientes en el Bargraph encendidos, mostrando el nivel de batería (rango de medición: 0-5V).

Nota

Si no funciona después de ejecutar el programa, o aparece un mensaje de error: "wiringPi.h: No such file or directory", por favor consulta Instalar y verificar WiringPi.

Explicación del Código

void LedBarGraph(int value){
    for(int i=0;i<10;i++){
        digitalWrite(pins[i],HIGH);
    }
    for(int i=0;i<value;i++){
        digitalWrite(pins[i],LOW);
    }
}

Esta función controla el encendido o apagado de los 10 LEDs en el Bargraph. Primero, apagamos estos 10 LEDs dándoles niveles altos, luego decidimos cuántos LEDs encender cambiando el valor analógico recibido.

int main(void)
{
    uchar analogVal;
    if(wiringPiSetup() == -1){ //when initialize wiring failed,print messageto screen
        printf("setup wiringPi failed !");
        return 1;
    }
    pinMode(ADC_CS,  OUTPUT);
    pinMode(ADC_CLK, OUTPUT);
    for(int i=0;i<10;i++){       //make led pins' mode is output
        pinMode(pins[i], OUTPUT);
        digitalWrite(pins[i],HIGH);
    }
    while(1){
        analogVal = get_ADC_Result(0);
        LedBarGraph(analogVal/25);
        delay(100);
    }
    return 0;
}

analogVal produce valores (0-255) con voltajes variables (0-5V), por ejemplo, si se detectan 3V en una batería, el valor correspondiente 152 se muestra en el voltímetro.

Los 10 LEDs en el Bargraph se utilizan para mostrar las lecturas de analogVal. 255/10=25, por lo que cada 25 que aumenta el valor analógico, se enciende un LED más, por ejemplo, si “analogVal=150 (aproximadamente 3V), hay 6 LEDs encendidos.”

Foto del Fenómeno

../_images/image249.jpeg