uboot中LCD驱动修改
1 | 综合篇 | 点我 |
---|---|---|
2 | uboot移植 | 点我 |
3 | uboot lcd驱动 | 点我 |
4 | kernel移植 | 点我 |
5 | kernel lcd驱动 | 点我 |
6 | 摄像头驱动 | 点我 |
7 | ubuntu base移植 | 点我 |
8 | 挂载网络文件系统 | 点我 |
9 | qt移植 | 点我 |
10 | 搭建qt交叉编译 | 点我 |
11 | wifi移植 | 点我 |
一般修改 LCD 驱动重点注意以下几点:
①、 LCD 所使用的 GPIO,查看 uboot 中 LCD 的 IO 配置是否正确。
②、 LCD 背光引脚 GPIO 的配置。
③、 LCD 配置参数是否正确。
我的开发板 LCD 原理图和 NXP 官方 I.MX6ULL 开发板一致,也就是 LCD 的 IO 和背光 IO 都一样的,所以 IO 部分就不用修改了。需要修改的之后 LCD 参数,打开文件 mx6ull_user_emmc.c,找到如下所示内容:
struct display_info_t const displays[] = {{.bus = MX6UL_LCDIF1_BASE_ADDR,.addr = 0,.pixfmt = 24,.detect = NULL,.enable = do_enable_parallel_lcd,.mode = {.name = "TFT43AB",.xres = 480,.yres = 272,.pixclock = 108695,.left_margin = 8,.right_margin = 4,.upper_margin = 2,.lower_margin = 4,.hsync_len = 41,.vsync_len = 10,.sync = 0,.vmode = FB_VMODE_NONINTERLACED
} } };
代码定义了一个变量 displays,类型为 display_info_t,这个结构体是 LCD信息结构体,其中包括了 LCD 的分辨率,像素格式, LCD 的各个参数等。
结构体 fb_videomode 里面的成员变量为 LCD 的参数,这些成员变量函数如下:
name: LCD 名字,要和环境变量中的 panel 相等。
xres、 yres: LCD X 轴和 Y 轴像素数量。
pixclock:像素时钟,每个像素时钟周期的长度,单位为皮秒。
left_margin: HBP,水平同步后肩。
right_margin: HFP,水平同步前肩。
upper_margin: VBP,垂直同步后肩。
lower_margin: VFP,垂直同步前肩。
hsync_len: HSPW,行同步脉宽。
vsync_len: VSPW,垂直同步脉宽。
vmode: 大多数使用 FB_VMODE_NONINTERLACED,也就是不使用隔行扫描。
根据自己板子的lcd的参数将这部分修改为:
struct display_info_t const displays[] = {{.bus = MX6UL_LCDIF1_BASE_ADDR,.addr = 0,.pixfmt = 24,.detect = NULL,.enable = do_enable_parallel_lcd,.mode = {.name = "TFT50AB",.xres = 800,.yres = 480,.pixclock = 37037,.left_margin = 46,.right_margin = 23,.upper_margin = 22,.lower_margin = 22,.hsync_len = 1,.vsync_len = 1,.sync = 0,.vmode = FB_VMODE_NONINTERLACED
} } };
修改之后重编编译uboot并烧录到板子中,烧录之后logo能正常显示说明适配成功
uboot中LCD驱动修改相关推荐
- 详解sd协议以及裸机和u-boot中的sd卡驱动(2)
3. sd卡驱动 3.1 引入 经过第2章我们知道,要想实现读写sd卡,需要按照sd协议规定的基本传输单位(命令.响应.数据)以及流程(初始化.读.写),向sd卡发送信号或者从sd卡接收信号. 为了简 ...
- Uboot中的DM驱动模型
这一篇我们学习uboot中的驱动模型的初始化,在uboot中,驱动模型被称为Driver Model,简称DM.这种驱动模型为uboot中的各类驱动提供了统一的接口. 1. 数据结构及概念 DM模型主 ...
- u-boot支持LCD显示(基于TQ2440)
平台简介 Linux版本:Linux-3.14 u-boot版本:u-boot-2015.04 硬件:TQ2440(内存:64MB NandFlash:256MB) 作者:彭东林 邮箱:pengdo ...
- LCD驱动调试中部分常见问题的分析及解决办法
点击打开链接http://www.52rd.com/Blog/Detail_RD.Blog_DamonKabo_30355.html 点击打开链接 http://blog.csdn.net/color ...
- uboot环境下mmc操作_【记录】将Uboot 2011.06中mmc驱动移植到uboot 1.1.6的过程
[记录]将Uboot 2011.06中mmc驱动移植到uboot 1.1.6的过程 时间:2011-8-14 作者:crifan 联系方式:green-waste (at) 163.com 附上代码: ...
- uboot中关于LCD的代码分析
以下内容源于朱有鹏<物联网大讲坛>课程的学习,如有侵权,请告知删除. 1.在uboot-jiuding/board.c中,init_sequence中的display_banner中的op ...
- 在U-boot中添加以太网驱动-Nazgul
当定义CONFIG_CMD_NET和CONFIG_CMD_PING,编译之后执行ping命令,告警没有找到以太网. 因此,需要打开U-boot的网络功能, u-boot-sunxi-sunxi中没有找 ...
- [I.MX6UL] U-Boot移植(六) 网络驱动修改 LAN8720A(对比原子和NXP官方测试板的网络芯片LAN8720A , KSZ8081 (也是飞凌)唯独复位引脚不同595芯片也涉及改动)
I.MX6UL/ULL 内部有个以太网 MAC 外设,也就是 ENET,需要外接一个 PHY 芯片来实现网络通信功能,也就是内部MAC+外部 PHY 芯片的方案. I.MX6UL/ULL 有两个网络接 ...
- [I.MX6UL] U-Boot移植(六) 网络驱动修改 LAN8720A
I.MX6UL/ULL 内部有个以太网 MAC 外设,也就是 ENET,需要外接一个 PHY 芯片来实现网络通信功能,也就是内部MAC+外部 PHY 芯片的方案. I.MX6UL/ULL 有两个网络接 ...
最新文章
- linux日志系统的实现,一个同步日志系统的简单实现 log for c (linux 平台)
- 7、计算机图形学——图形管线渲染与纹理映射
- vue里面怎么删除部分页面_基于VUE选择上传图片并页面显示(图片可删除)
- 不使用自带函数求区域的周长_Excel表格中最强大求和函数______DSUM函数
- 详解python中的yield(生成器)
- 关于Redis的几个问题
- [转]JavaScript继承详解
- 使用Go实现Socket服务端和客户端通信
- jetbrains goland配置go开发环境
- PHP将一个pdf 拆分按需要页码组装新的pdf
- OpenCV python 绘制椭圆形
- 添加CNZZ统计代码
- ClickHouse安装部署
- 很好用的搜网盘资源工具。很多都能找到
- git init和git clone获取仓库 (一)
- 比特大陆新一轮裁员50%,回应称系人员调整
- 计算机计算资产分析表,财务指标计算公式excel,用EXCEL做财务指标分析,如何使用其他工作簿做公式计算??...
- 【ARM裸机s5pv210 】程序烧录
- 用DriverBackUp备份了文件 装好系统后怎么把备份的驱动文件还原
- 常用的25条Excel技巧整理[转]