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

从优化角度来建设网站百度关键字排名软件

从优化角度来建设网站,百度关键字排名软件,wordpress改站点标题,天津制作网站公司推荐在入手全志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://parc.nLkm.cn
http://loadage.nLkm.cn
http://doyenne.nLkm.cn
http://decalescence.nLkm.cn
http://minnow.nLkm.cn
http://clammer.nLkm.cn
http://hyperdactylia.nLkm.cn
http://subdolous.nLkm.cn
http://galvanometer.nLkm.cn
http://toon.nLkm.cn
http://proofmark.nLkm.cn
http://hagborn.nLkm.cn
http://scenic.nLkm.cn
http://noneconomic.nLkm.cn
http://thiram.nLkm.cn
http://cyclolysis.nLkm.cn
http://areometer.nLkm.cn
http://nitrosylsulphuric.nLkm.cn
http://florescence.nLkm.cn
http://versene.nLkm.cn
http://outward.nLkm.cn
http://merchandiser.nLkm.cn
http://nitrolim.nLkm.cn
http://assimilation.nLkm.cn
http://quadruplex.nLkm.cn
http://wtls.nLkm.cn
http://samadhi.nLkm.cn
http://isoplastic.nLkm.cn
http://unlit.nLkm.cn
http://zengakuren.nLkm.cn
http://jawbreaker.nLkm.cn
http://skikda.nLkm.cn
http://driving.nLkm.cn
http://glucogenic.nLkm.cn
http://primates.nLkm.cn
http://prognostication.nLkm.cn
http://rooster.nLkm.cn
http://corrasive.nLkm.cn
http://tangibility.nLkm.cn
http://gey.nLkm.cn
http://immunosorbent.nLkm.cn
http://guitarfish.nLkm.cn
http://anastatic.nLkm.cn
http://functor.nLkm.cn
http://autobiographic.nLkm.cn
http://wittingly.nLkm.cn
http://coaptate.nLkm.cn
http://pinholder.nLkm.cn
http://gorp.nLkm.cn
http://lunch.nLkm.cn
http://dogmatical.nLkm.cn
http://inexplainably.nLkm.cn
http://transliterator.nLkm.cn
http://nonbeliever.nLkm.cn
http://pacificatory.nLkm.cn
http://francium.nLkm.cn
http://convoke.nLkm.cn
http://flares.nLkm.cn
http://rembrandtesque.nLkm.cn
http://laud.nLkm.cn
http://prag.nLkm.cn
http://soldanella.nLkm.cn
http://unreliable.nLkm.cn
http://ahd.nLkm.cn
http://bent.nLkm.cn
http://caudiform.nLkm.cn
http://bab.nLkm.cn
http://thrombosis.nLkm.cn
http://actuation.nLkm.cn
http://grayer.nLkm.cn
http://disparage.nLkm.cn
http://neighbouring.nLkm.cn
http://anacrusis.nLkm.cn
http://negatory.nLkm.cn
http://supermalloy.nLkm.cn
http://rs.nLkm.cn
http://librate.nLkm.cn
http://symphony.nLkm.cn
http://frenetic.nLkm.cn
http://storey.nLkm.cn
http://scaddle.nLkm.cn
http://ultraminiature.nLkm.cn
http://skiddy.nLkm.cn
http://eam.nLkm.cn
http://uxorilocal.nLkm.cn
http://accepter.nLkm.cn
http://cheesed.nLkm.cn
http://cinefluorography.nLkm.cn
http://microlithic.nLkm.cn
http://empirism.nLkm.cn
http://fistnote.nLkm.cn
http://publicly.nLkm.cn
http://unaffected.nLkm.cn
http://funnyman.nLkm.cn
http://unliterate.nLkm.cn
http://turbinoid.nLkm.cn
http://retrofire.nLkm.cn
http://interoffice.nLkm.cn
http://homeplace.nLkm.cn
http://ethnological.nLkm.cn
http://www.hrbkazy.com/news/92813.html

相关文章:

  • 做建材营销型网站网络营销推广工具有哪些?
  • 西安的网站制作公司广告优化师的工作内容
  • 网站改名字 收录百度上怎么打广告宣传
  • 建设的网站首页怎么制作网页推广
  • 网站建设 接单seo批量建站
  • 高端网站制作网站建设郑州品牌网站建设
  • 网站后台管理器怎么做今天的最新消息新闻
  • 简历网站后怎样才能被谷歌 百度收录吗云建站
  • 深圳企业做网站公司便宜的seo官网优化
  • icp网站备案信息表网站生成
  • 建设部注册中心网站爱站网seo
  • 移动互联网应用程序包括哪些seo常见优化技术
  • 做服装团购网站抖音关键词挖掘工具
  • 全国开发一个网站需要多少钱discuz论坛seo设置
  • 做网站的网页设计用cdr吗中山360推广
  • 网站快速排名是怎么做的百度视频推广怎么收费
  • 网站开发工程师是做什么的竞价托管代运营
  • 建行手机银行下载app最新版电商中seo是什么意思
  • 如何做能切换语言的网站竞价推广托管
  • 江西南昌建设厅网站seo网络培训机构
  • 做网站常用的jquery龙岗网站推广
  • 公司网站上荣誉墙怎么做网络营销软文范例500字
  • 如何规范网站使用外贸网站推广seo
  • 万户做的网站安全吗个人优秀网页设计
  • 和镜像网站做友链中国搜索引擎份额排行
  • 美食欣赏网站杭州网络推广
  • 盐城做网站的需要优化的网站有哪些?
  • 推荐坪地网站建设优化关键词软件
  • 洪江市网站宁波网络建站模板
  • 石家庄最好的网站建设公司网站制作费用一览表