当前位置: 首页 > news >正文

品牌营销方案班级优化大师下载安装最新版

品牌营销方案,班级优化大师下载安装最新版,仿《快乐麻花》网站源码,邯郸seo优化在入手全志T113之后,第一时间移植好了之前6ull平台的rootfs。但是在测试QT的过程中发现屏幕最右侧有一部分显示不正常,经过初步推测应该是RGB行场同步时序有问题。本以为在设备树里面稍作修改之后就能OK,但是居然前前后后一共花了至少三个星期…

在入手全志T113之后,第一时间移植好了之前6ull平台的rootfs。但是在测试QT的过程中发现屏幕最右侧有一部分显示不正常,经过初步推测应该是RGB行场同步时序有问题。本以为在设备树里面稍作修改之后就能OK,但是居然前前后后一共花了至少三个星期的时间。

这里就不给分析经过了,因为是真的真的太漫长了,搞得我头都大了。真的是要吐槽一下全志的代码:

1.函数名字真的看得头疼
在这里插入图片描述

2.代码杂乱无章,大量使用全局变量,让分析各种没头绪。

然后在这里直接给出最终分析的结果:

1.设备树里面timing,除了width、height、lcd_x和lcd_y之外的参数全没有用上(一开始不停的源码里面找这些参数在什么地方配置的,最后发现特么的根本就没有地方使用过这些参数)

在这里插入图片描述

2.width和height主要是用来计算dpi使用的,我这里写的280最终计算出来的dpi大概是97左右,windows标准的是96,反正相差无几我也没有细调了,lcd_x和lcd_y在原来的代码里主要是用来计算内核里面有一张图片的缩放使用的。

3.lcd timing寄存器里面的值是在uboot里面设置好之后在kernel里面直接拿来用的。

4.uboot里面的timing计算方式有问题,应该是百问没有仔细阅读全志文档的原因造成的,这也是使得屏幕显示向左平移了几十个像素的原因
在这里插入图片描述

5.我忘记我要说什么了…

接下来就说怎么处理吧:

1.首先按照全志的文档把设备树里面的timing改了
在这里插入图片描述

2.打开 drivers/video/fbdev/sunxi/disp2/disp/de/disp_lcd.c 然后找到 s32 disp_init_lcd(struct disp_bsp_init_para* para) 函数,在前面加上一段代码

typedef struct
{volatile unsigned int Timing0;volatile unsigned int Timing1;volatile unsigned int Timing2;volatile unsigned int Timing3;
}RegTypeDef;static void set_lcd_timings(unsigned int dwLcdRegBase, struct disp_video_timings* pTimings)
{RegTypeDef* reg;unsigned int dwWidth, dwHeight;unsigned int dwHT, dwHBP;unsigned int dwVT, dwVBP;unsigned int dwHSPW, dwVSPW;reg = (RegTypeDef*)(dwLcdRegBase + 0x48);dwWidth = pTimings->x_res;dwHSPW = pTimings->hor_sync_time;dwHBP = pTimings->hor_back_porch + pTimings->hor_sync_time;	//在官方文档里:hbp = hbp + hspw,然而在全志的代码里面又将hspw其减去,所以在这里需要加回来dwHT = pTimings->hor_total_time;dwHeight = pTimings->y_res;;dwVSPW = pTimings->ver_sync_time;dwVBP = pTimings->ver_back_porch + pTimings->ver_sync_time;dwVT = pTimings->ver_total_time;reg->Timing0 = ((dwWidth - 1) << 16) | (dwHeight - 1);reg->Timing1 = ((dwHT - 1) << 16) | (dwHBP - 1);reg->Timing2 = (((dwVT - 1) * 2) << 16) | (dwVBP - 1);reg->Timing3 = ((dwHSPW - 1) << 16) | (dwVSPW - 1);printk("width: %d, hspw: %d, hbp: %d, ht: %d\n", dwWidth, dwHSPW, dwHBP, dwHT);printk("height: %d, vspw: %d, vbp: %d, vt: %d\n", dwHeight, dwVSPW, dwVBP, dwVT);
}

然后在 s32 disp_init_lcd(struct disp_bsp_init_para* para) 函数的 disp_lcd_init(lcd, lcd->disp); 后面加上

set_lcd_timings(para->reg_base[DISP_MOD_LCD0], &lcd->timings);

3.最后编译烧写进去之后重启就搞定了…

4.uboot我就懒得修改了,凑合用吧

本文转载自:https://bbs.aw-ol.com/topic/3533/

http://www.hkea.cn/news/642074/

相关文章:

  • 网站开发方式有哪四种搜索引擎优化课程总结
  • 申请做网站、论坛版主app推广接单
  • 青海网站建设广州seo优化推广
  • 物流公司网站制作模板上海网站关键词排名
  • 广西建设人才网搜索引擎优化的目标
  • 比汉斯设计网站素材图片搜索识图入口
  • php网站架设教程英雄联盟韩国
  • 做毕设好的网站百度客服电话24小时
  • 上海手机网站建设电话咨询seo综合查询系统
  • wordpress 4.6 中文版沈阳seo
  • 文件管理软件天津搜索引擎优化
  • 九亭网站建设全国疫情高峰时间表最新
  • 青岛网站建设公司武汉seo收费
  • mvc网站建设的实验报告怎么做优化
  • 有官网建手机网站千锋教育培训多少钱费用
  • b2c交易模式的网站有哪些百度营销客户端
  • flash 学习网站重庆网站seo多少钱
  • 年终总结ppt模板免费下载网站小红书seo排名规则
  • 自己架设网站口碑营销的产品有哪些
  • 湖北省网站备案最快几天天津百度推广排名优化
  • app在线开发制作平台seo网络优化前景怎么样
  • 商务网站的基本情况网站建设工作总结
  • 山西建设厅网站网络销售怎么聊客户
  • 软装素材网站有哪些seo网络排名优化哪家好
  • 邯郸市做网站建设网络口碑营销案例分析
  • 罗湖网站建设联系电话西安核心关键词排名
  • 如何编写网站电脑清理软件十大排名
  • 怎么给企业制作网站seo关键词排名优化哪好
  • 高仿服装网站建设西安百度关键词推广
  • 网站单页面怎么做的百度seo站长工具