Red de conocimiento informático - Consumibles informáticos - (Resuelto) Ayuda: Cómo mostrar ncurses y framebuffer en Linux integrado

(Resuelto) Ayuda: Cómo mostrar ncurses y framebuffer en Linux integrado

Información complementaria: el framebuffer está implementado, pero no hay interfaz gráfica de usuario. Solo puedes pintar imágenes/dibujos escribiendo el framebuffer. Ahora quiero implementar algunos terminales de texto simples en el dispositivo para probar otros controladores, así que elegí ncurses. Mi consideración personal es: creo que ncurses se basa en un equipo terminal. ¿Necesito implementar primero un terminal virtual para mostrarlo en el framebuffer y luego ejecutar el programa ncurses correspondiente en este terminal? De esta manera no es necesario realizar modificaciones en ncurses. La nueva pregunta es: ¿Cómo hacer que el framebuffer ejecute el terminal? Actualmente estoy buscando confirmación cuidadosamente y también me gustaría que expertos que sepan más me den algunas ideas, ¡gracias! Resolución de problemas: 1) Hay un módulo llamado consola framebuffer en framebuffer, que implementa el controlador LCD como un framebuffer estándar, y luego admite el módulo de consola framebuffer y lo implementa como un dispositivo tty. 2) Para admitir la entrada de claves desde dispositivos de hardware en la consola framebuffer, es posible que se requiera algún trabajo de mapeo de claves. 3) Escriba un programa para cargar la aplicación, dirija la entrada y salida estándar al dispositivo tty correspondiente y establezca algunas variables de entorno necesarias, como TERM y TERMINFO utilizadas por ncurses (para funciones específicas, consulte "Desarrollo de la biblioteca de Curses en UNIX"). "Guía" de Linux. 4) Al cargar el programa, use exec para ejecutar la aplicación ncurses implementada. Por supuesto, debido a que ncurses se basa en la terminal, incluso si no hay una consola framebuffer y no es necesario enviar salida a la pantalla LCD, aún puede usar la biblioteca ncurses conectándose a la terminal de forma remota (a través de telnet/ssh, etc.). La única condición es agregar soporte TERMINFO, no es necesario modificar el código de la aplicación. Ver más respuestasgt;gt;