Hola que tal,
Tiene tiempo que trabajo con GLCD y siempre he usado conversores para pasar del BMP a GLCD como el BMP2LCD o GLCD tool de los compiladores de mikroelektronika. En fin, ahora me veo en la necesidad de escribir una función que haga lo que esos programas.
Por ejemplo, ahora tengo una pantalla con el controlador T6963C de 240x128 para lo cual obtengo un arreglo de chars de 240*128/8 = 3480 bytes. Hasta ahí me queda perfectamente claro. Ahora bien, en el programa que estoy escribiendo ya logro cargar el bmp y pasarle un filtro con ruido Floyd–Steinberg para convertir toda la informacion RGB a valores 0x000000 ó 0xFFFFFF, y recorro la imagen por pixel de la siguiente manera.
for(i = 0; i < img.height; i++){
for(j = 0; j < img.widtht; j++){
//aqui obtengo el pixel en coordenadas i, j
}
}
Con el ciclo anterior, ya probé que el filtro funcione y haga una reimpresión de la imagen para verficar el resultado y queda bastante bien. Lo que no tengo idea es como convertir la info de 240x128 a un arreglo de 240x128/8 para formar el arreglo de 3840 bytes.
Si alguien tiene alguna sugerencia lo agradecería mucho.
Saludos cordiales