Estoy usando una placa LPC4300 para interactuar con un LCD gráfico, un S6B0741. He estado intentando inicializarlo, pero no estoy seguro de si estoy enviando los comandos de forma correcta.
El código que tengo ahora:
GPIO_ClearValue (LCD_PINS.GPIOPortNum, (1<<LCD_PINS.GPIOBits[10]));
GPIO_ClearValue (LCD_PINS.GPIOPortNum, (1<<LCD_PINS.GPIOBits[9]));
GPIO_SetValue (LCD_PINS.GPIOPortNum, (1<<LCD_PINS.GPIOBits[12]));
GPIO_SetValue (LCD_PINS.GPIOPortNum, (1<<LCD_PINS.GPIOBits[8]));
SetBits (data); // sets the I/O data bus
GPIO_ClearValue (LCD_PINS.GPIOPortNum, (1<<LCD_PINS.GPIOBits[8]));
GPIO_ClearValue (LCD_PINS.GPIOPortNum, (1<<LCD_PINS.GPIOBits[12]));
Todos los puertos se definen como puertos de entrada.
He intentado seguir la rutina de inicialización, como se describe en la hoja de datos, pero no ha funcionado.
¿Esto es correcto?
EDIT Debería haber tenido esto en la publicación original, ya que el código tal como está no tiene sentido realmente.
Los pines son:
- 0-7 bus de datos
- 8 E
- 9 RW
- 10 RS
- 11 RESETB
- 12 CSB
La placa está configurada para usar el modo de interfaz paralela 6800.
EIDT2: erróneamente lo puso como modo 8080 en lugar de 6800.