Cómo trazar un gráfico en el Nokia 5110 LCD

1

He conectado una pantalla LCD Nokia 5110 a un PIC. Muestra los caracteres utilizando una tabla de fuentes.

¿Hay una manera de trazar datos ADC en la pantalla LCD con datos ADC en el eje Y y el tiempo en el eje X? No quiero usar una biblioteca porque mi espacio de código es limitado. Estoy usando el compilador Microchip XC8.

    
pregunta Chetan Bhargava

2 respuestas

1

Guarde sus muestras en una matriz, luego trace cada valor de ADC como el valor de y, e incremente el valor de x.

Algo así como el código de abajo ( int8_t = unsigned char typedef ):

int8_t buffer[256];
int8_t i;

for(i = 0, i < 256, i++)
{
    // draw_pixel is your routine for plotting an individual pixel 
    draw_pixel(i, buffer[i]);
}

Puede interpolar entre los píxeles si lo desea (necesita una función draw_line - google para el código), luego haga algo como:

// note end value decremented by one to account for i+i
for(i = 0, i < 255, i++) 
{
    draw_line(i, buffer[i]), i+1, buffer[i+1]); 
}
    
respondido por el Oli Glaser
1

Trabajé con la pantalla del Nokia 5110 hace un tiempo pero usando un MSP430.

La pantalla puede verse como una matriz de 84 columnas x 6 bloques de 8 píxeles cada una; escribir un valor desde 0x00 a 0xFF a un bloque cambiará su contenido ( 0x00 = nada en ese bloque, 0xFF = este bloque está completamente activado). El bloque 0 representa las filas 0 a 7, el bloque 1 representa las filas 8 a 15, etc. ...

Por lo tanto, necesitará un búfer de 84 x 6 = 504 valores para mantenerlos, ya que la pantalla es de solo escritura. Para dibujar un píxel en (x, y) debe encontrar en qué bloque desea escribir, luego cambiar los valores adecuados en el búfer, establecer la posición X / Y de la pantalla y escribirlo allí.

Esos códigos para Arduino podrían ayudar: enlace y enlace

    
respondido por el Renan

Lea otras preguntas en las etiquetas