迅为龙芯2K1000开发板pmon BSP移植之使能背光和PWM

发布时间:2022-6-1 13:44    发布者:就是塔塔
屏幕背光我们要在 pmon 的启动阶段就要使能,不然屏幕就是黑的,在第 9.4 章节我们分析了 pmon 的启动流程,在 Targets/LS2K/ls2k/tgt_machdep.c 文件的 tgt_devconfig 函数里面对显卡进行了初始化,所以我们是不是就可以在这个函数里面对背光进行使能呢?
首先我们要确定屏幕背光的 GPIO 是哪一个,我们找到背光部分的原理图,如下图所示:
1.png
可以看出,屏幕背光使用的引脚为 GPIO37 将这个 GPIO 拉高即可,在 BSP 里面,关于背光的代码其实已经给我们写好了,我们稍加修改即可。我们找到 Targets/LS2K/ls2k/tgt_machdep.c 文件的 tgt_devconfig 函数,在这个函数里面调用了 init_pcidev 函数。而 init_pcidev 函数里面通过宏定义 PAI2 包含了 pai2_init 函数,
在 pai2_init 函数里面使能了屏幕背光和 PWM,如下图所示:
2.png
所以我们需要先定义宏定义 PAI2 和 LCD_EN。PAI2 在 9.9.3 章节我们已经定义过了,这里就不在重复定义,打开 Targets/LS2K/conf/ls2k 文件,添加以下代码:
3.png

在 bsp 里面已经使能了 PWM0,这里我们无需在做修改,代码如下:
4.png
其中定 19 行代码*(volatile int *)0xbfe10420 |=(1<<12);是将 GPIO 设置成 PWM0 功能,地址 0xbfe10420的第 12 位对应的是 PWM0,如下图所示:
5.png
6.png
默认的时钟为 48.96MHZ,通过查阅屏幕的数据手册,可以发现 48.96MHZ 在屏幕的支持范围以内,所以这里我们就不需要修改了,如下图所示:
7.png
如果您要添加一个自己分辨率,比如 600x400,其他参数您可以在 Ubuntu 的电脑终端输入命令 cvt 600400 来自动获取的。如下图所示:
8.png
因为这里面 1024x600 的参数已经有了,我们就不必在添加这些参数了,所以这样我们屏幕就适配好了是不是要比 uboot 上移植屏幕简单多了。
更多内容可以关注:北京迅为
本文地址:https://www.eechina.com/thread-791836-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表