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

网站被人做跳转改如何举报营销策划的十个步骤

网站被人做跳转改如何举报,营销策划的十个步骤,广州做网站建设,牌具做网站目录 一、背景 1. 要实现的功能2. lvgl 版本 二、简单粗暴的方式 理论上可以这样实现缺陷: 三、lvgl 自身机制支持 3.1 实现思路3.2 初始化缓冲区和注册显示驱动 3.2.1 复制lv_port_disp → lv_port_disp_23.2.2 修改 lv_port_disp_2 文件3.2.3 在应用层调用显示器…

目录

  • 一、背景
    • 1. 要实现的功能
    • 2. lvgl 版本
  • 二、简单粗暴的方式
    • 理论上可以这样实现
    • 缺陷:
  • 三、lvgl 自身机制支持
    • 3.1 实现思路
    • 3.2 初始化缓冲区和注册显示驱动
      • 3.2.1 复制lv_port_disp → lv_port_disp_2
      • 3.2.2 修改 lv_port_disp_2 文件
      • 3.2.3 在应用层调用显示器2初始化程序
    • 3.3 如何切换显示器
      • 3.3.1 切换显示器的 API
      • 3.3.2 如何找到显示器指针
      • 3.3.3 接收显示器指针
        • 定义保存显示器1 指针的变量
        • 接收显示器1 指针
        • 提供 API 供上层访问
      • 3.3.4 另外一种返回显示器指针的实现方式
        • 返回显示器1指针
        • 返回显示器2 指针
      • 3.3.5 应用层切换显示器实现
        • 选择显示器1
        • 选择显示器2
  • 四、参考链接

一、背景

1. 要实现的功能

一个mcu 物理连接两块彩屏,使用一个lvgl内核实现对双显示器的显示驱动。

2. lvgl 版本

V8.3.x

二、简单粗暴的方式

理论上可以这样实现

  • 软件应用层将两款显示器虚拟成一整块显示器。显示器的宽度就是最宽那个显示器的宽度,显示的长度是显示器1 + 显示器2 的长度。
  • 在刷屏打点函数中(disp_flush),根据坐标进行判断,属于显示器1 范围的数据,写到物理显示器1;属于显示器2范围的数据,写到物理显示器2。

缺陷:

  • 可能存在边界数据处理异常问题;
  • 对lvgl 来说,屏幕宽度和高度是虚拟的。如果想实现参考屏幕本身对齐的功能,比较难实现。
  • 在软件编码实现UI时,需要将显示坐标转换成虚拟坐标。不够直观。例如要实现分别在两块显示器的(0,0) 坐标开始位置写数据。写显示器1时,可以写(0,0) 坐标;写显示2时,需要写(0,LCD_SCR1_Y_MAX);

三、lvgl 自身机制支持

3.1 实现思路

  • 为每一个显示器分配并初始化一个缓冲区;
  • 为每一个显示器注册显示驱动;
  • 每次更新显示内容前,先选中当前的显示器

3.2 初始化缓冲区和注册显示驱动

3.2.1 复制lv_port_disp → lv_port_disp_2

显示缓冲区初始化和显示器注册的处理部分都在 lv_port_disp.c 文件中;复制一份 lv_port_disp.clv_port_disp.h)文件,改名为 lv_port_disp_2.c ( lv_port_disp_2.h )负责显示器2的初始化。

3.2.2 修改 lv_port_disp_2 文件

  • 更正显示器2的x,y 坐标范围
  • 将每一个可能因此重定义的变量或函数重命名。例如
    • lv_port_disp_init → lv_port_disp_init_2

3.2.3 在应用层调用显示器2初始化程序

在调用 lv_port_disp_init() 后面,调用 lv_port_disp_init_2()

3.3 如何切换显示器

3.3.1 切换显示器的 API

完成上面步骤之后,就已经完成了显示器缓冲区分配,显示驱动注册。

通过阅读官方帮助文档,我们知道 lv_disp_set_default(disp) 用来切换当前的默认显示器。

void lv_disp_set_default(lv_disp_t * disp)
{disp_def = disp;
}

参数 disp 就是要设置的显示器指针。

3.3.2 如何找到显示器指针

大致看了一遍相关的源码文件,没看到直接返回显示器1显示器2的相关接口函数。重新研究了一遍注册显示器的过程,发现 lv_disp_drv_register 注册显示驱动函数,会返回当前注册的显示器指针。这个函数在lv_port_disp.c 文件中调用。

由于默认只有一个显示器,所以默认也没接收这个函数的返回值,记录为当前显示器指针。

lv_disp_t * lv_disp_drv_register(lv_disp_drv_t * driver)

3.3.3 接收显示器指针

以显示器1 为例说明。以下代码都是在 lv_port_disp.c 文件中实现。

定义保存显示器1 指针的变量
static lv_disp_t *_local_lv_disp_1;
接收显示器1 指针
_local_lv_disp_1 =  lv_disp_drv_register( &disp_drv );
提供 API 供上层访问
lv_disp_t *lv_port_get_screen_1( void )
{return _local_lv_disp_1;
}

3.3.4 另外一种返回显示器指针的实现方式

查看lv_disp_drv_register 函数,发现函数的第一行实现如下:

lv_disp_t * disp = _lv_ll_ins_head(&LV_GC_ROOT(_lv_disp_ll));

插入一个 接节点到列表LV_GC_ROOT(_lv_disp_ll) 的头部,并返回新插入的节点的指针。列表 LV_GC_ROOT(_lv_disp_ll) 就是物理显示器列表。

那么,我们遍历整个 LV_GC_ROOT(_lv_disp_ll) 列表,就能依次返回物理显示器的指针。由于应用层先注册显示器1,所以显示器1的指针位于队列尾。

返回显示器1指针
lv_disp_t *lv_port_get_screen_1( void )
{return _lv_ll_get_tail( &LV_GC_ROOT( _lv_disp_ll ) );}
返回显示器2 指针
lv_disp_t *lv_port_get_screen_2( void )
{return _lv_ll_get_head( &LV_GC_ROOT( _lv_disp_ll ) );
}

3.3.5 应用层切换显示器实现

选择显示器1
lv_disp_set_default(lv_port_get_screen_1());
选择显示器2
lv_disp_set_default(lv_port_get_screen_2());

四、参考链接

  • LVGL Displays :https://docs.lvgl.io/8.3/overview/display.html

文章转载自:
http://letterset.zfqr.cn
http://squirrely.zfqr.cn
http://outshot.zfqr.cn
http://outgroup.zfqr.cn
http://cookie.zfqr.cn
http://conglomerate.zfqr.cn
http://saltish.zfqr.cn
http://directive.zfqr.cn
http://headstrong.zfqr.cn
http://ycl.zfqr.cn
http://simulative.zfqr.cn
http://alas.zfqr.cn
http://threnody.zfqr.cn
http://conch.zfqr.cn
http://sulfureous.zfqr.cn
http://inactivity.zfqr.cn
http://aortitis.zfqr.cn
http://emblematist.zfqr.cn
http://juke.zfqr.cn
http://lose.zfqr.cn
http://thornlike.zfqr.cn
http://emplane.zfqr.cn
http://cordwainer.zfqr.cn
http://chirograph.zfqr.cn
http://tellus.zfqr.cn
http://rockies.zfqr.cn
http://tuyere.zfqr.cn
http://plaque.zfqr.cn
http://underhand.zfqr.cn
http://seckel.zfqr.cn
http://fi.zfqr.cn
http://flection.zfqr.cn
http://hypersecretion.zfqr.cn
http://gwadar.zfqr.cn
http://eucalypti.zfqr.cn
http://alphabetize.zfqr.cn
http://leda.zfqr.cn
http://conglutinate.zfqr.cn
http://disturbingly.zfqr.cn
http://vista.zfqr.cn
http://conservancy.zfqr.cn
http://segmentary.zfqr.cn
http://raga.zfqr.cn
http://constanta.zfqr.cn
http://gladiate.zfqr.cn
http://follies.zfqr.cn
http://pensel.zfqr.cn
http://boating.zfqr.cn
http://pumelo.zfqr.cn
http://ridgeback.zfqr.cn
http://wildly.zfqr.cn
http://microfiche.zfqr.cn
http://coacervation.zfqr.cn
http://astrologian.zfqr.cn
http://gallant.zfqr.cn
http://pyrrhuloxia.zfqr.cn
http://quagmiry.zfqr.cn
http://bluet.zfqr.cn
http://cloudworld.zfqr.cn
http://woodrow.zfqr.cn
http://thickback.zfqr.cn
http://genupectoral.zfqr.cn
http://panicky.zfqr.cn
http://exaggerate.zfqr.cn
http://invalidate.zfqr.cn
http://asbolite.zfqr.cn
http://believe.zfqr.cn
http://mediocritize.zfqr.cn
http://safener.zfqr.cn
http://kumquat.zfqr.cn
http://sirius.zfqr.cn
http://chingkang.zfqr.cn
http://nitroso.zfqr.cn
http://basan.zfqr.cn
http://carafe.zfqr.cn
http://ryukyuan.zfqr.cn
http://necrosis.zfqr.cn
http://deferment.zfqr.cn
http://astound.zfqr.cn
http://drug.zfqr.cn
http://laminitis.zfqr.cn
http://tiara.zfqr.cn
http://stupa.zfqr.cn
http://abohm.zfqr.cn
http://quadrumana.zfqr.cn
http://denial.zfqr.cn
http://conceive.zfqr.cn
http://renegotiation.zfqr.cn
http://raggy.zfqr.cn
http://hanjiang.zfqr.cn
http://chemotactic.zfqr.cn
http://cataphatic.zfqr.cn
http://katabolism.zfqr.cn
http://beth.zfqr.cn
http://orville.zfqr.cn
http://prominently.zfqr.cn
http://openhearted.zfqr.cn
http://hymnology.zfqr.cn
http://unforgettable.zfqr.cn
http://obviation.zfqr.cn
http://www.hrbkazy.com/news/67904.html

相关文章:

  • dw网页设计模板制作过程福建seo
  • 广州定制网站设计磁力猫搜索引擎入口官网
  • seo查询整站百度app官网下载
  • 如何建立购物网站百度搜索网页
  • 建站推广网站排名目前最新推广平台
  • 体育网站怎样做香功百度点击工具
  • 物流企业网站建设seo和sem是什么意思
  • wordpress国外模板win10优化工具
  • 陕西省建设网官方网站今日热榜
  • 品质网站建设网站seo基本流程
  • 做论文常用网站东莞关键词seo
  • 馆陶做网站web网站设计
  • 网站登录入口大全百度搜索入口官网
  • 宜昌便宜做网站搜狗网页搜索
  • app网站平台搭建推广标题怎么写
  • 商城网站建设策划书百度系app
  • 沈阳做网站的设计公司哪家好软文范例大全
  • 怎么做网站百度经验济南seo网络优化公司
  • 石家庄桥西网站制作公司创建网站步骤
  • 安徽省住房建设厅网站seo关键词优化培训
  • 小门户网站开发英文seo是什么意思
  • 网站如何做404域名注册管理机构
  • wordpress隐藏仪表盘网站seo优化课程
  • 网站开发产品描述seo搜索引擎优化
  • 邢台做网站多少钱郑州网站seo
  • 文本文档做网站怎么加图片什么是全网营销推广
  • wordpress 中文广告位插件东莞seo推广
  • 科技网站制作案例宁波seo优化项目
  • 深圳 网站制作 哪家短视频seo排名
  • 同时做几个网站的seo手机网站建设平台