Linux驱动18 --- LCD 屏
目录
一、LCD 屏
1.1 了解 LCD 屏
1.2 屏幕参数
1.3 编译 LCD 屏驱动
打开设备树文件
删除 dtb 文件
打开更改的设备树文件
回到 SDK 路径编译
挂起虚拟机
拷贝 update.img
1.4 最终现象
二、LVGL 的使用
2.1 介绍
2.2 软件安装
2.3 创建工程
2.4 工程的配置
2.5 控件获取
2.6 事件添加
2.7 生成代码
2.8 交叉编译工具配置
2.9 程序编译
时间获取的是错的
一、LCD 屏
1.1 了解 LCD 屏
显示设备之一
屏幕的使用是需要驱动的
而驱动是需要移植的
驱动的移植,需要结合屏幕和板子
最快的方式就是问板子的厂家,有没有做过类似屏幕的移植
屏幕驱动的移植,涉及到 --- 设备树
Linux 开发当下主流的屏幕接口
MIPI DSI
MIPI 联盟,即移动产业处理器接口(Mobile Industry Processor Interface 简称 MIPI)联盟。MIPI(移动产业处理器接口)是 MIPI 联盟发起的为移动应用处理器制定的开放标准和一个规范。
LVDS 接口
LVDS(Low-Voltage Differential Signaling)低电压差分信号,是一种低功耗、低误码率、低串扰和低辐射的差分信号技术,这种传输技术可以达到 155Mbps 以上,LVDS 技术的核心是采用极低的电压摆幅高速差动传输数据,可以实现点对点或一点对多点的连接,其传输介质可以是铜质的 PCB 连线,也可以是平衡电缆。
MIPI 最常用的有两个应用
屏幕:MIPI DSI --- Display
摄像头:MIPI CSI --- Camera
rk3588s的屏幕接口:MIPI DSI
1.2 屏幕参数
分辨率:1024*600
尺寸:7 寸
色彩:32 位/24 位
32 位 --- ARGB8888
A 表示透明度
24 位 --- RGB888
刷新率:60Hz
1.3 编译 LCD 屏驱动
打开设备树文件
将之前写的节点复制到一个可以找到的地方
删除 dtb 文件
防止出现,替换的文件不被编译的问题
打开更改的设备树文件
将刚才复制的节点,放在原来的位置
回到 SDK 路径编译
挂起虚拟机
拷贝 update.img
此刻,屏幕就亮起来了
1.4 最终现象
二、LVGL 的使用
2.1 介绍
在 MCU 阶段使用 GUI Guider
驱动也用 GUI Guider
2.2 软件安装
安装肯定会报错 ,首先确保网络连接
报错后输入指令:
下载完成之后,再次执行安装指令
2.3 创建工程
2.4 工程的配置
2.5 控件获取
2.6 事件添加
2.7 生成代码
2.8 交叉编译工具配置
当前生成的界面可以运行在 ubuntu,但是想让它运行在板子
两者的架构是不一样 --- 所以需要使用交叉编译工具
使用的交叉编译工具是 buildroot 中的交叉编译工具
找到生成的工程的路径
2.9 程序编译
make -j?? --- 如果你的 ubuntu 有 12 个核,那就 j12
当前如果在 Gui Guider 中如果重新生成 ,代码,就不会弹出运行结果了,因为换了交叉编译工具,让程序在板子上运行
2.10 LVGL 中的组件
滑动页的缺点 --- 不能嵌套
滑动块支持嵌套
时间获取的是错的
时间查看指令:date
时间设置指令:date -s "xxxx-xx-xx xx:xx:xx"