屏幕模组调试程序
概述
这是基于rt-thread的rt driver驱动框架的屏幕刷新显示,以及触控的数据读取打印程序。
适用于屏幕驱动以及触控驱动的调试和测试。
屏幕上能看到每3秒钟变化一次显示内容:
Color bar 8种渐变色(白色、灰色、红、绿、蓝、青色、紫色、黄色),每种渐变色都从黑色逐渐过渡而来。
纵向灰度渐变色( 每256行循环1次)
纯色(红、绿、蓝、白、黑色)
main函数
main函数创建了2个线程:
LCD屏幕的刷新线程
触控读取线程
1. LCD屏幕的刷新线程
打开lcd rt device
获取搜索到的屏幕信息,并打印其宽度、高度、设置的颜色位深、刷屏的像素对齐要求信息
填充framebuffer(见概述描述)
将framebufer刷到屏幕上
等刷屏完成后,设置背光亮度
等待3秒钟
如果是ramless屏幕,切换到另外一个framebuffer
跳到第3步
framebuffer相关
颜色格式定义 FB_COLOR_FORMAT 默认是24bit 颜色格式的每个像素字节数 FB_PIXEL_BYTES 默认是3
ramless屏幕为了防止填充的时候,framebuffer被刷新,所以定义了framebuffer2,在显示的时候会交替使用,防止填充和刷屏冲突。
2. 触控读取线程
打开touch rt device,
设置触控中断触发函数tp_rx_indicate,去释放信号量
在while循环里面如果拿到了信号量,就去读取触控数据,并将其打印在串口上。