Primero necesitas dominar google. Primero encontrará que solo algunos lcds usan una interfaz paralela tradicional, a menudo se usan spi, i2c y, a veces, serial. Y eso es solo porque hay un chip conectado al panel lcd para hacerte la vida más fácil. Encontrará que a veces puede encontrar la pantalla sin el chip auxiliar y comprar microcontroladores de los principales proveedores que tienen una gran cantidad de pines para conducir pantallas directamente. Ahorro en partes y costo.
¿En cuanto a cómo los ingenieros de software y hardware lidian con esto? Es como aprender a conducir a un supermercado nuevo, mirar la documentación (mapa) planear su ataque y luego ir a hacerlo, a veces lo obtiene en el primer intento, a veces toma unos pocos.
Hay ejemplos para la mayoría de los chips de controladores de pantalla populares para la mayoría de los microcontroladores o arquitecturas populares o los de AVR (Arduino no es un microcontrolador) que se pueden portar directamente o con un poco de ayuda (las bibliotecas podrían antes de Arduino sí) , la zona de pruebas / entorno) o el mbed (otro conjunto de bibliotecas de la zona aislado / entorno) u otras 700 en github o donde sea que Google lo lleve, o simplemente mira la hoja de datos y, a veces, toma minutos para que aparezca la pantalla a veces horas.
Lo mismo ocurre con los ingenieros de hardware, ellos miran la otra parte de la hoja de datos, los pines, las especificaciones eléctricas, los requisitos de alimentación, el diseño de referencia, etc. y planean o simplemente comienzan en el esquema del producto / placa.
Todo es parte del trabajo, los profesionales solo hacen su trabajo, no todos están recortados o interesados en este nivel de trabajo, algunas personas son mejores en aplicaciones, aplicaciones telefónicas, lo que sea, códecs de video, videojuegos, etc. la gente usa bibliotecas para este tipo de dispositivos, pero no necesariamente puede ensuciarse más las manos que eso (Arduino) (algunos pueden optar por no reinventar una rueda), y algunos pueden y quieren y adoran ensuciarse las manos. Algunos escriben las bibliotecas para otros, los ejemplos o controladores, etc. Algunos de los trabajos mencionados anteriormente requieren una revisión a través de la documentación de la API para aprender a crear un programa GUI en un entorno nuevo para ellos, algunos tienen que leer un libro o ver ejemplos. o ambos para aprender cómo hacer un controlador de dispositivo para algo, o mirar los cambios de la versión anterior del sistema operativo para que puedan modificar sus controladores existentes de los que son responsables y / o escribir nuevos según sea necesario. Todo es parte del trabajo y cómo obtienes ese título de "profesional".
Sí, estás en el camino correcto, ahora con i2c a veces es más fácil hacer bit bang o bit bang primero, luego pasar por eso y más tarde, si alguna vez, si es compatible con los periféricos mcu, usa i2c específico para mcu periférico. el último funciona mejor, pero tiene un costo de desarrollo más alto (a menos que ya haya una buena biblioteca que simplemente funcione) y no es portátil. Los golpes de bits, particularmente con i2c, lo hacen para que pueda trasladar su código de un mcu o familia a otro en algunos minutos, literalmente, y tener la pantalla arriba, donde si utiliza el periférico incorporado, podría ser una tarde larga o un día o una semana . No se requiere un alcance, pero si es la primera vez que lo hace ... se requiere ... o alguna otra forma de "ver" lo que está sucediendo, lo que podría funcionar con otro microcontrolador que enciende gpio bastante rápido y luego lo usa como Un analizador lógico. pero para i2c realmente desea un alcance porque se trata de un bus abierto y de colector abierto, y puede ver cuándo cada lado libera y toma el control del bus que no puede ver con un analizador lógico, y ese momento puede ser importante. El otro hecho es asumir que los manuales están al menos un poco equivocados. nunca son perfectos, tienes que "abrirte camino" a veces por falta de un término mejor.
los ejemplos para otros microcontroladores le ayudarán con qué registros programar en qué orden (a veces importa, a veces no) y algunos valores para introducir esos registros, que pueden o no tener sentido cuando se comparan los ejemplos. A la documentación del dispositivo. todavía tiene que encontrar el soporte del protocolo i2c básico para entregar esas escrituras de registro y quizás las lecturas (a menudo puede obtener con escritura solo en algunas de estas pantallas).
Las partes principales son bastante populares, las pantallas son una moneda de diez centavos por docena en las de nokia 5110 de ebay, hay unas 64x64 y otras de tamaño reducido, con interfaces i2c, spi, etc., además de una gran cantidad de otras. Un puñado de controladores de pantalla realmente populares (chips en la parte posterior) una vez que pruebes una o dos pantallas con las que se mueven a la siguiente ...