Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Cómo hacer dibujos complejos en pantalla gráfica?
#1
Muy buenas shurs Mola

Estoy en 2º de DPE y el proyecto que me ha tocado hacer debe llevar una pantalla gráfica que controlaré con un PIC. El caso es que quiero que quede bonito y que cuando uno acceda a la interfaz no solo vea unos números o palabras, es decir, quiero dibujos decentes. Por lo visto y según me han contado hay algún tipo de programa al que le introduces una imagen y te la convierte de tal forma que la puedas utilizar fácilmente en código pero ni idea de que programa es Nusenuse ¿Alguien sabe a lo que me refiero? ¿Conoceis otra forma de hacerlo más fácilmente?
No lo intentes. Hazlo o no lo hagas, pero no lo intentes.
Citar
#2
Primero deberías buscar la pantalla en sí (Suponiendo que vayas a tirar por una u otra en función de precio, disponibilidad, etc. Si el dinero no es problema, el tiempo tampoco, y tal, pues ya si puedes buscar en función de lo sencillo Lengua )

Te lo comento por que por ejemplo, yo usaba en el curro unas pantallas chinas TFT la mar de chulas, y en las que el uc sólo tenía que decirle que jpg cargar (Se los metías mediante un pendrive USB, aunque no se podía cambiar al vuelo, creo recordar. Majas majas, las pantallas, salvo por que no había control en la comunciación: mandabas los comandos y si fallaban no te enterabas, aunque no solian fallar. La pantalla en cuestión era: http://www.fdt.com.tw/fdt-web/main.php?m...et_lang=en pero para que te hagas una idea andaban por unos 100€ comprando en pequeñas cantidades, 25/50 ) o bien usar una pequeña librería para dibujar en plan vectorial. Pero esa pantalla tenía una gran resolución, color, y tal. Luego otras más sencillas (por ejemplo monocromo) a veces no tienen mayor control que el cargar directamente un buffer de píxeles que tu cargas en memoria (Y ojo a estas, por que sueles necesitar mucha RAM a la que la pantalla es medianamente grande, dado que en el mejor de los casos necesitas ancho*alto en bits, siendo monocromo, pero como sea a color...).

En fin, que en mi opinión deberías hacer una búsqueda inicial a ver que pantallas te entran por precio/disponibilidad, y luego ver que posibilidades tienen estas.

También depende del tamaño, claro, por que cuanto más "típica" probablemente más barata y sencilla de usar a la vez (Por ejemplo, creo que estas están bastante extendidas, aunque no son muy grandes: https://www.sparkfun.com/products/710 )
Citar
#3
La pantalla que usaremos ya está decidida de antemano por los profesores ya que es de la que disponen. Es la Grafitech 64128Q, es monocroma y muy sencilla, nada especial ni del otro mundo. Simplemente querría poner el icono del instituto en ella y no hacerlo manualmente, por pura comodidad.
No lo intentes. Hazlo o no lo hagas, pero no lo intentes.
Citar
#4
Hombre, si es para clase, igual lo que pretenden es que a partir de la datasheet seáis vosotros los que escribáis la librería. En cualquier caso, si te vale para futuras consultas, en caso de tener el hardware determinado de antemano es buena cosa comentarlo, para evitar que la gente divague como he hecho yo Lengua

Ahora ya al asunto: una búsqueda en google de "Grafitech 64128Q" no da ningún resultado. Curiosamente, eliminando el "Grafitech" aparece esa misma referencia pero de "Displaytech", ¿Puede ser esa misma? (Enlace: https://www.displaytech-us.com/128x64-gr...displays-q )

Imagino que no, que será una placa mayor que contiene ese display, y que se encarga de algunas cosas, por que parece demasiado complejo para usarlo con un PIC (Sólo por el hecho de usar un registro bidireccional de 64 bits ya descarta muchos PICs pequeños, aunque quizá os lo den en una placa con un uC grande, de 80 o 100 pines ya soldado, y eso no importe...

No se, lo de siempre: ¿Puedes dar más datos? Cuantos más des, más sencillo será ayudarte Guiño
Citar
#5
Para el LCD de dos lineas de texto hay una forma de hacer simbolos dibujando una matriz de 1 y 0 en el programa y le das un nombre al nuevo caracter. al menos al libreria que yo usé.
Seguro que hay algo parecido por algun lado.

Yo tambien estoy en 2º, pero de mantemiento (el nuevo DPE) en clase te lo miro
Citar
#6
Cansi22, eso que tu comentas, como tu mismo dices, es para LCD alfanuméricos. En los gráficos suele poder hacerse también (Aparte de las funciones gráficas en sí, suelen darte fuentes para texto para que te compliques menos, pero ahí te limitaría el tamaño). Entiendo que el compañero quiere dibujar usando toda la superficie... En cualquier caso, si al final es la misma pantalla, en el foro de microchip he visto un hilo sobre ella:
http://www.microchip.com/forums/m630484.aspx

Hablan de manejarla en ASM, y verás que otro de los participantes comenta que el driver es similar a otro para el que él ha hecho una librería. En cualquier caso, como digo, si es esa pantalla parece un buen punto de partida.

EDIT: Pregunta tonta, que se me ha pasado preguntarlo antes... ¿Que es DPE? ¿Un ciclo, un grado...?
Citar
#7
Grado superior de Diseño de Productos Electronicos
El mio es Grado superior de Mantenimiento Electronico, cambiaron el nombre en unas de esas LOE, LOGSE o algunas de esas
Citar
#8
Para dibujar líneas puedes utilizar el algoritmo de Bresenham http://es.wikipedia.org/wiki/Algoritmo_de_Bresenham (en la Wikipedia lo tienes explicado fácilmente)... son una sencillas matemáticas que te permiten dibujar líneas, polígonos, círculos... buscando un poco seguro que incluso encuentras librerías para tu PIC.

Por cierto, yo trabajo como profesor de electrónica en un instituto de Salamanca.
Citar
#9
Mira a ver el programa LCD Assistant a ver si te ayuda, te pasa una imagen monocromatica a código directamente.

ENLACE: http://en.radzio.dxp.pl/bitmap_converter/

Saludos Mola

EDITO: La imagen monocromatica la puedes obtener con paint (abres imagen, ajustas al tamaño adecuado, guardar como..., y eliges ahí el tipo)
Citar
#10
Lord Bierzo escribió:Muy buenas shurs Mola

Estoy en 2º de DPE y el proyecto que me ha tocado hacer debe llevar una pantalla gráfica que controlaré con un PIC. El caso es que quiero que quede bonito y que cuando uno acceda a la interfaz no solo vea unos números o palabras, es decir, quiero dibujos decentes. Por lo visto y según me han contado hay algún tipo de programa al que le introduces una imagen y te la convierte de tal forma que la puedas utilizar fácilmente en código pero ni idea de que programa es Nusenuse ¿Alguien sabe a lo que me refiero? ¿Conoceis otra forma de hacerlo más fácilmente?

por mi parte, si vas a meter los gráficos en el programa, lo que yo hago es un script en python que genere el código fuente directamente. en python hay librerias muy sencillas que leen un png.

Lo que haría es coger el PNG que quieres, pasarlo a blanco y negro, y pasarlo al python.

luego en python, lees cada 8 pixeles, y guardas el valor hexadecimal

blanco, negro, negro, blanco, blanco, negro, negro, blanco -> 01100110 -> 102 decimal, 0x66 hex

cada 8, vas imprimiendo

no se en que lenguaje programas, en C sera algo como :


print "
const unsigned char dibujito [] =
{
"

for each 8 pixels :
print hex valor
(cada 20, cambia de linea no sea bruto)


print "
}
"

y la salida la guardas como un codigo C
javier loureiro varela

impresoras 3D, CNC, programación, diseño de placas PCB y muchas ganas de hacer cosas :)
Citar


Temas similares...
Tema Autor Respuestas Vistas Último mensaje
  Alguien me puede hacer/ayudar con el diseño de una PCB? shiryou 1 178 17-08-2018, 12:01 PM
Último mensaje: shiryou
  problemas con mi pantalla lcd Alenarmi 0 246 10-11-2017, 01:31 AM
Último mensaje: Alenarmi
  Modificacion de una impresora laser para hacer PCBs grafisoft 2 693 30-10-2014, 10:03 PM
Último mensaje: Triggerr
  [PROYECTO] Isoladora para hacer las placas en casa derethor 15 2,420 04-12-2013, 07:24 AM
Último mensaje: grafisoft