O sea, estas intentando hacer una infraestructura de drivers graficos para LCDs?
Te podria recomandar que veas cosas como uGFX:
http://ugfx.org/
O lo plantees como aglo mas general.
Algunos puntos que veo:
- El esquema de framebuffer no es factible debido a que el micro no
cuenta con ram suficiente
- Añadido a lo anterior, muchos display ya tienen framebuffer en su
propio controlador y es un cuello de botella tener dos FB
- Lo ideal seria proveer rutinas de blitting entre la memoria del
procesador y el display (o salida de video generica)
- Si vas a soportar touch que sea algo totalmente aparte (es decir,
otra libreria)
- Adicionalmente, esperaria cosas como dibujo de lineas, fill zone, etc.
- Una opción muy util es fill_generate que espera un area de llenado y
una kernel function generator que será llamada para cada pixel (y a la
que se le pasará un contexto). Algo como:
pixel_t noise_generator(void *ctx) {
return random();
}
...
fill_generate(30, 30, 120, 120, nouse_generator, NULL); /* En este
caso ctx se llama con null */
...
Esto es util para generar texturas o generar formas teselizadas sin
necesidad de armar el teselator en el display driver (estuve buscando
un arituclo en los blogs de Trolltech viejos sobre tessellation en 2D
pero murió luego de su adquisicion por parte de nokia)
En general, deberias empezar con un driver especifico, ver las
similitudes con otros displays (o salidas graficas) y definir un API
dado.
Con eso ultimo, estaria bueno, definir ese API de alto nivel
discutiendola en el grupo emb32 para mayor feedback.
Una idea mia seria algo asi (en C):
http://paste.ofcode.org/rTVjmtCczyyt8q4H5StmCh
Por supuesto, es solo una sugerencia, pero puestos a pedirle a los reyes...
El día 13 de junio de 2016, 12:27, Ernesto Galiano
<
egal...@computrol-ing.com.ar> escribió:
> Hola Martin,gracias por tu respuesta.
> Como el driver sera utilizado en la CIAA, me parecio oportuno continuar un
> trabajo ya comenzado en la misma.
> En realidad el controlador no interesa tanto para esta aplicacion, por eso
> no apunté el modelo y marca, puede ser cualquiera conseguible.
> La siguiente opcion que tengo es la que me comentas, buscar un display y
> hacer un driver con lo que hay en la web.
>
>
> El 13/06/2016 a las 11:57, martin ribelotta escribió:
>>
>> Que display es? Normalmente hay mucho codigo C generico para los
>> display (NewHeavenDisplay es así al menos)
>> Sino, el datasheet del display normalmente te dice que chip
>> controlador trae (ILIXXXX, STXXXX etc) y si no es muy nuevo o raro,
>> vas a encontrar mucho codigo C generico para (al menos) inicializarlo.
>>
>> El día 13 de junio de 2016, 10:59, Ernesto Galiano
>> <
egal...@computrol-ing.com.ar> escribió:
>>>
>>> Hola lista.
>>>
>>> Para el curso de proyectos en el CAPSE, estoy realizando una libreria
>>> grafica para un display TFT.
>>>
>>> Veo varios hilos en donde se toca el tema y los estoy analizando.
>>>
>>> La pregunta es ¿ Alguno tiene un driver para un TFT determinado? Es para
>>> tener un punto de arranque y no hacerlo desde cero.
>>>
>>> Por ahora la conexion a la EDU-CIAA debiera ser SPI o de 8 Bits.
>>>
>>> Desde ya gracias por la ayuda.
>>>
>>>
>