FOTO 18f4685 y Hitachi 44780 LCD

¿Alguien tiene algún código C de interfaz de 4 bits seguro para trabajar para una pantalla LCD de 2 líneas PIC 18f4685 a Hitachi? Estoy usando una placa prototipo Northmicro con un módulo LCD que es compatible con Hitachi 44780. Usando MPLab V8.x con el compilador C18.

Bajar mordisco en PORTB a D4-7

E:RA4

RS:RB4

LE:RB5

Luz de fondo: RA5

Busqué en todo el territorio de Google y encontré cosas que deberían ayudarme a través del proceso, pero ninguna se ha escrito para mi configuración particular. He revisado y creo que los he ajustado para mis usos, pero ni siquiera puedo hacer que la pantalla LCD se inicialice. Los retrasos en el tiempo parecen estar bien cuando lo ejecuto a través de MPlabSim.

También intenté usar las bibliotecas en la carpeta mcc18 src, pero tampoco funcionó.

Estoy buscando un código que se sepa que funciona para poder solucionar el problema si es mi codificación deficiente o la placa. Hasta ahora solo he podido encender y apagar la luz de fondo, pero eso realmente no cuenta, ya que es solo un pin conectado a un mosfet y no tiene nada que ver con el mcu integrado de la pantalla LCD.

Estuve en ello durante unas pocas horas todos los días durante la última semana... 16 horas es mucho tiempo para gastar en un proyecto tonto como este, así que me encantaría si pudiera ayudarme, por favor.

Gracias de antemano.

Esta comunidad no responde muy bien a las preguntas que simplemente piden código. Tal vez pueda comenzar con lo que ha probado y depurado hasta ahora. Si puede reducir su pregunta a un problema específico, es probable que obtenga una buena respuesta. ¿Ha leído la hoja de datos de la pantalla LCD y ha observado las salidas de su microcontrolador para asegurarse de que está haciendo lo que usted desea?
¿Quieres que publique todo mi código? Podría si lo desea. Sí, he depurado y todo parece correcto. Estoy enviando 0x03 al controlador tres veces con retrasos de 5ms/5ms/100ns entre cada envío. Los retrasos parecen variar según el código del que estoy copiando. La viuda Watch muestra que la salida es la esperada. Enviar 0x02 junto a poner en modo de 4 bits y luego enviar el conjunto de funciones adicional. Como la pantalla nunca se enciende o apaga, lo cual es parte de las instrucciones del conjunto de funciones, esto me dice que ni siquiera lo estoy inicializando. He seguido PICs lcd_init (), un par de guías en línea. Nada funciona.
He tenido el mismo tipo de problema. Todavía no tengo un solo 44780 lcd para trabajar con cualquier tipo de dispositivo. Probé varias pantallas, una de las cuales podría haberse roto. Solo ponen la mitad de los caracteres en negro, o no hacen nada :(

Respuestas (1)

Puede obtener un código que se sabe que funciona, pero no se garantiza que funcione en su configuración de hardware particular. Deberá configurar el código y tal vez incluso modificarlo.

Hace un par de años, escribí una biblioteca LCD simple . En ese momento, usé PIC18F4450, pero también probé este código en PIC16F887. Debería funcionar con muchos chips, siempre y cuando sepas lo que haces. Para facilitarle las cosas, también tiene un main.carchivo de ejemplo.