0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ZDP1440系列小技巧—如何OTA差分升级显示素材?

立功科技 来源:立功科技 2024-05-06 14:01 次阅读

本文导读

ZDP1440是一款基于开源GUI引擎的图像显示专用驱动芯片,支持U盘、SD卡本地升级UI固件,同时也支持通过UART/SPI方式进行OTA升级,本文将介绍如何OTA差分升级显示素材。

ZDP1440配套有专用的上位机,不仅用于屏幕参数和硬件接口参数的配置,还支持UI工程一键编译打包生成本地升级UI固件。打包生成的UI固件包含哪些文件,OTA差分升级如何实现,本文将逐一介绍。

一、UI固件简介

打开上位机,配置完成选择UI工程后,单击上位机中的【生成固件】首先会对UI工程进行交叉编译生成可执行文件。以uart_ui_ota工程为例,生成的UI程序存放在UI工程目录下的arm_bin文件夹。

2d111e0a-0b6b-11ef-a297-92fbcf53809c.png

图1

UI工程编译完成,接下来调用打包程序将UI程序awtk.bin和UI素材uart_ui_ota/res目录下的assets文件夹一起打包生成文件系统镜像,即ui_nor.bin或ui_nand.bin。 然后通过U盘或SD卡升级到板载Flash,挂载到根文件系统的bin目录下,也就是UI程序和UI素材在HMI-ZDP1440是以文件的形式存放。

2d2fc800-0b6b-11ef-a297-92fbcf53809c.png

图2

二、差分升级原理

了解了UI固件的组成和存放方式,OTA差分升级自然也不难实现。因为UI素材是以文件的形式存放,所以需要更新某些素材时,只需要替换相应的文件即可。以uart_ui_ota工程为例,OTA差分升级UI主界面背景图,只需要更新HMI-ZDP1440文件系统bin/assets/default/raw/images/x1目录下的bg.jpg背景图。

2d443646-0b6b-11ef-a297-92fbcf53809c.png

图3

三、差分升级示例

了解了差分升级实现方式,接下来以OTA差分升级UI主界面背景图为例。首先自定义串口通信协议,指令格式如下,包括进入升级和升级完成2个控制命令。

2d559ff8-0b6b-11ef-a297-92fbcf53809c.png

图4

接下来看看具体的程序如何实现。

2d6cb490-0b6b-11ef-a297-92fbcf53809c.png

图5

1.当接收到进入升级命令后,解析获取待升级文件的大小,后续用于计算升级的进度。然后切换到升级页面显示升级进度,并在bin路径下创建文件用于保存待升级的文件内容。

2.进入升级模式后,后续接收到数据都是文件内容,所以直接将数据写入到文件保存。

3.文件接收完成,收到升级完成命令,则关闭文件,并将接收的文件拷贝到UI素材文件夹替换原有素材背景图。然后切换回主页面并更新页面背景。

通过以上三个步骤就实现了OTA差分升级UI显示素材。




审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FlaSh
    +关注

    关注

    10

    文章

    1649

    浏览量

    149483
  • SD卡
    +关注

    关注

    2

    文章

    568

    浏览量

    64358
  • OTA
    OTA
    +关注

    关注

    7

    文章

    593

    浏览量

    35573
  • 上位机
    +关注

    关注

    27

    文章

    948

    浏览量

    55182
  • 驱动芯片
    +关注

    关注

    13

    文章

    1322

    浏览量

    55220

原文标题:ZDP1440系列小技巧丨如何OTA差分升级显示素材

文章出处:【微信号:立功科技,微信公众号:立功科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    图像显示驱动芯片ZDP1440系列小技巧 如何使用多国语言互译

    ZDP1440是一款基于开源GUI引擎的图像显示专用驱动芯片,在实际项目中,可能有切换多国语言的需求,AWTK默认支持多国语言,本文将介绍如何使用该功能。
    的头像 发表于 05-10 14:38 1633次阅读
    图像<b class='flag-5'>显示</b>驱动芯片<b class='flag-5'>ZDP1440</b><b class='flag-5'>系列</b>小技巧  如何使用多国语言互译

    ZDP1440串口屏应用开发如何使用虚拟串口调试

    ZDP1440串口屏应用开发如何使用虚拟串口调试呢?本文将详细方法分享给大家。
    的头像 发表于 01-25 11:32 1867次阅读
    <b class='flag-5'>ZDP1440</b>串口屏应用开发如何使用虚拟串口调试

    求一种基于ZDP1440的彩屏86盒显示方案

    立功科技基于ZDP1440的86盒彩屏方案,广泛应用于灯光控制器,空调地暖温控器,智能家居中控屏等相关产品中,本文详解方案特点。
    的头像 发表于 02-20 16:26 1324次阅读
    求一种基于<b class='flag-5'>ZDP1440</b>的彩屏86盒<b class='flag-5'>显示</b>方案

    图像显示专用驱动芯片ZDP1440系列小技巧-如何提升环形进度条帧率

    本文导读 ZDP1440是一款基于开源GUI引擎的图像显示专用驱动芯片,可以通过串口或者SPI与其他芯片通信。在一些仪器仪表中会有环形进度条或者扇形进度条的需求,本文将介绍如何提升这部分动画的帧率
    的头像 发表于 01-06 14:32 803次阅读
    图像<b class='flag-5'>显示</b>专用驱动芯片<b class='flag-5'>ZDP1440</b><b class='flag-5'>系列</b>小技巧-如何提升环形进度条帧率

    请问esp32是否支持分升级

    我现在工程需要适配ota功能,但是鉴于固件体积较大,想请教下是否支持分升级?
    发表于 06-21 08:14

    AliOS Things 3.0 开发:OTA之差分升级快速上手

    升级快速上手查看详情概要前面已经介绍了AliOS Things 3.0 OTA的整包升级和压缩升级,本文将介绍AliOS Things 3.0版本的
    发表于 10-18 09:57

    ESP32C3固件太大,OTA时有没有方法做分升级

    如题,esp32c3同时打开BLE和WIFI的功能,固件都1MByte了,OTA时可以用分升级吗。还有就是怎么优化下固件大小?
    发表于 02-15 08:02

    esp32是否支持分升级

    我现在工程需要适配ota功能,但是鉴于固件体积较大,想请教下是否支持分升级?
    发表于 02-20 07:36

    基于STM32单片机的分升级(增量升级)算法

    DiffIAP应用背景随着目前物联网,车联网,智能设备的增多,需要远程升级设备程序的场景增多,以往的IAP升级OTA升级都是整包升级,bi
    发表于 12-09 15:51 20次下载
    基于STM32单片机的<b class='flag-5'>差</b><b class='flag-5'>分升级</b>(增量<b class='flag-5'>升级</b>)算法

    HPM5300+ZDP1440高性能工业控制与显示组合震撼登场

    先楫HPM5300高性能MCU与ZDP1440显示驱动芯片,打造高性能工业控制与显示应用平台。
    的头像 发表于 02-22 11:32 1095次阅读
    HPM5300+<b class='flag-5'>ZDP1440</b>高性能工业控制与<b class='flag-5'>显示</b>组合震撼登场

    ZDP1440系列小技巧—如何配置RGB屏幕参数?

    ZDP1440是一款基于开源GUI引擎的图像显示专用驱动芯片,具有RGB/MIPI两种显示接口,只需在上位机配置好屏幕参数,就可以一键点亮屏幕,完成屏幕适配,本文将介绍如何配置RGB屏幕参数。
    的头像 发表于 04-08 14:04 1053次阅读
    <b class='flag-5'>ZDP1440</b><b class='flag-5'>系列</b>小技巧—如何配置RGB屏幕参数?

    ZDP1440系列小技巧—如何配置MIPI屏幕参数?

    ZDP1440是一款基于开源GUI引擎的图像显示专用驱动芯片,具有RGB/MIPI两种显示接口,只需在上位机配置好屏幕参数,就可以一键点亮屏幕,完成屏幕适配,
    的头像 发表于 04-19 14:26 1745次阅读
    <b class='flag-5'>ZDP1440</b><b class='flag-5'>系列</b>小技巧—如何配置MIPI屏幕参数?

    ZDP1440系列小技巧—如何实时显示FPS呢?

    ZDP1440是一款基于开源GUI引擎的图像显示专用驱动芯片,在其上面运行UI时,能看到实时的帧率就能知道那些情况运行卡顿,可以有针对性的去优化UI,本文将介绍如何实时显示FPS。
    的头像 发表于 04-22 14:16 833次阅读
    <b class='flag-5'>ZDP1440</b><b class='flag-5'>系列</b>小技巧—如何实时<b class='flag-5'>显示</b>FPS呢?

    ZDP1440系列小技巧:实时显示FPS的方法详解

    ZDP1440是一款基于开源GUI引擎的图像显示专用驱动芯片,在其上面运行UI时,能看到实时的帧率就能知道哪些情况运行卡顿,可以有针对性的去优化UI。
    的头像 发表于 04-22 14:14 920次阅读
    <b class='flag-5'>ZDP1440</b><b class='flag-5'>系列</b>小技巧:实时<b class='flag-5'>显示</b>FPS的方法详解

    ZDP1460屏幕显示驱动芯片产品介绍

    ZDP1460是ZDP1440升级版的屏幕显示驱动芯片,具有高达64MB的显示内存,内置2D图形加速器,H.264/MJPEG编解码,音频解
    的头像 发表于 08-06 16:47 1140次阅读
    <b class='flag-5'>ZDP</b>1460屏幕<b class='flag-5'>显示</b>驱动芯片产品介绍