LVGL V8.2PC模拟器使用文件系统存放图片bin文件
起因
在做LVGL项目的时候,经常是以自定义UI的方式做的,这时候图片会占用很多资源。一张 800x480、16 位色的全屏图就接近 750KB,图标、按钮各种状态图加起来轻松超过片内 Flash;而且图片以 C 数组编进固件,每换一张图都要重新编译烧录。所以必须将图片转换成bin文件存放到外部存储器上,比如SD卡或者Flash存储芯片。
在做LVGL项目的时候,经常是以自定义UI的方式做的,这时候图片会占用很多资源。一张 800x480、16 位色的全屏图就接近 750KB,图标、按钮各种状态图加起来轻松超过片内 Flash;而且图片以 C 数组编进固件,每换一张图都要重新编译烧录。所以必须将图片转换成bin文件存放到外部存储器上,比如SD卡或者Flash存储芯片。
https://github.com/strigeus/fpganes.git
https://github.com/RetroEmbedded/UniversalPPU
https://github.com/jpwright/fpganes.git
https://github.com/CreeperLin/fpganes.git
https://github.com/Feuerwerk/fpgaNES.git
这是任天堂娱乐系统在FPGA中的实现。
它基于Terasic的开发板Cyclone V GX Starter Kit,并带有Altera Cyclone V。它具有充足的内存,HDMI输出和模拟音频编解码器。 出于某种原因,他们决定不将ADV7513 HDMI芯片的HDMI音频引脚连接到FPGA。 但是他们为音频引脚添加了焊点,因此我能够通过FPGA的一些GPIO引脚访问它们,直接通过HDMI连接获得44.1 kHz音频。 hdmi视频分辨率为640x480,帧速率为50 Hz,每个NES像素具有2x2显示像素。 在HDMI音频引脚旁边,我将NES Four Score焊接到GPIO端口,只需将控制器插入/拔出到FPGA即可。
#1、前言 写这篇博客的目的是因为最近在做一个STM32的离线编程器,离线下载需要用到FLM文件的下载算法,所以实现了一下提取FLM文件中下载算法的C程序。
报错信息:
|
|
解决办法:
配置项目-》Target》Code Genration=》把Use MicroLIB给勾选中。

最近由于Flash芯片升级,从16MB换成32MB的,但是厂商只有16MB的FLM下载算法文件 所以要自己做一个32MB的FLM,需要研究下FLM到底是个啥。
LVGL作为EmWin的一个开源替代,在做国产替代项目经常用到,结合国产的MCU可以说是绝配。
这里汇总LVGL里面常用的一些设置和组件的使用。
一般用lv_imgbtn作为最常用的组件,结合坐标可以实现界面的完全自定义。
# 硬件
NorFlash: winbond 25Q128JVSIQ 128M
首先下载到FATFS源码,把doc目录打开,好好看下文档
然后打开ff.h,修改里面的数据类型,我之前把ff.h直接包含到了我的项目总头文件里面,由于有些数据类型不兼容,导致了项目崩溃。 最后没时间去看这些数据类型,就单独建了个C文件,把文件系统相关的操作都放在这里操作,以免影响其他部分。
GD32 项目里要往 SD 卡记数据(日志、参数文件),单片机直接读写扇区只有“块”的概念,没有文件和目录,拔下来插电脑也读不回来——这层“文件”的抽象就是文件系统要做的事。FatFS 是为小型嵌入式写的 FAT 实现:纯 C、体积极小、不挑硬件,是单片机上事实标准的选择。这篇记录在 GD32 + FreeRTOS 上移植它的过程。
文件系统,它是为了存储和管理数据,而在存储介质建立的一种组 织结构,这些结构包括操作系统引导区、目录和文件。常见的 windows 下的文件系统格式 包括 FAT32、NTFS、exFAT。在使用文件系统前,要先对存储介质进行格式化。格式化先 擦除原来内容,在存储介质上新建一个文件分配表和目录。这样,文件系统就可以记录数 据存放的物理地址,剩余空间。