Estoy aprendiendo a ejecutar un Nokia 5110 LCD (similar a this ) usando un chip atmega328p. No entiendo cómo funciona la luz de fondo. Si enciendo el LED / luz de fondo de uno de los pines del chip, se enciende cuando configuro el pin LOW, en lugar de HIGH. Por ejemplo, con la luz de fondo de la pantalla LCD conectada a PB0 y usando el siguiente código:
#include <avr/io.h>
#include <util/delay.h>
int main(void){
DDRB |= 0b00000001;
while(1){
PORTB |= 0b00000001;
_delay_ms(2000);
PORTB &= ~(0b00000001);
_delay_ms(500);
}
}
La luz de fondo se apaga durante dos segundos y se enciende durante 0.5 segundos cada vez que pasa por el bucle. Revisé el voltaje para confirmar, y cuando PB0 está alto (3.3V), la luz de fondo está apagada y PB0 está bajo (0V) cuando la luz de fondo está encendida. Si conecto la luz de fondo directamente al suelo, permanece encendido.
Los tutoriales que he estado leyendo (por ejemplo, SparkFun y Adafruit , y sí, son para Arduino pero solo estoy usando el chip atmega328p) muestran claramente que la luz de fondo es conectado a una fuente de alimentación, no a tierra.
Mi pregunta es: ¿esto es normal o tengo una pantalla extraña de Nokia con el cableado de la luz de fondo invertido? ¿Cómo debo cablear / controlar la luz de fondo?
EDITAR:
Aquí está el tablero que estoy usando:
Ahora me doy cuenta de que enumera un 'terminal de control de retroiluminación', en lugar de un VCC con retroiluminación como en los tutoriales que estoy usando.