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

SD卡通过读取bin文件替代读取图片格式文件来提高LCD显示速度

1.效果及分析

下面是STM32F103VET6通过SDIO方式读取SD卡的bin文件(2进制)并通过FSMC显示到240*320尺寸的TFTLCD上的效果,对比上次写的采用TJPEG解码库解码JPG文件并显示的效果进行对比:在这里插入图片描述

SD卡+FATFS+Tinyjpeg图片解码显示 (STM32F103VET6通过CubeMX快速建立工程)
可以看出来刷屏还是快了不少,因为我显示的是240x320尺寸的RGB565色彩图片,一张图总共是240x320x2=150KB大小,而STM32F103VET6的RAM只有64KB,所以我这里采用了每次读取240x20行数据的方式,这样仅需开辟一个9600bit(9KB)的stack内存分16次读取及显示就可以完成一张图片的完整显示,不过可以看出来一张图片的刷屏时间大概在0.5秒左右,还是肉眼可见的看见刷屏了,实测将SDIO的时钟分频减少,即提高时SDIO的通讯速率,可以明显看出刷屏速度变快,能证明刷屏的延迟并不是在MCU与LCD的通讯上,而是在MCU与SD的通讯上,这也是用SD卡读取较多数据时的局限性。
之前有试过STM32F103VET6采用nor flash的方式进行存储bin文件并进行读取显示,可以做到看不出刷屏的效果,TFTLCD驱动也是采用FSMC方式,读取和显示也是分多次进行完成的,也可以验证出nor flash在跟MCU的通讯上确实比SD卡速率快。

2.图片格式转bin格式

通过Image2TFT将各种格式的图片转换为16位或24位的bin文件:
在这里插入图片描述

3.程序提供

由于程序较简洁,这里直接给出c文件和h文件及调用方法即可:

sd_bin_picture.h

#ifndef sd_bin_picture_H
#define sd_bin_picture_H#include "main.h"FRESULT ReadAndDisplayImage(const 

相关文章:

  • 34.2STM32下的can总线外设_csdn
  • GQA(Grouped Query Attention):分组注意力机制的原理与实践《三》
  • Linux 环境下 PPP 拨号的嵌入式开发实现
  • 网络可靠性的定义与核心要素
  • 用户 xxx is not in the sudoers file.
  • FEMFAT许可分析中的关键指标
  • CentOS在vmware局域网内搭建DHCP服务器【踩坑记录】
  • html2canvas v1.0.0-alpha.12版本文本重叠问题修复
  • qt+vs Generated File下的moc_和ui_文件丢失导致 error LNK2001
  • Unity安卓平台开发,启动app并传参
  • 使用 SseEmitter 实现 Spring Boot 后端的流式传输和前端的数据接收
  • 麒麟+ARM架构安装mysql8的操作指南
  • setting up Activiti BPMN Workflow Engine with Spring Boot
  • 霍夫曼编码详解
  • 2025Mybatis最新教程(三)
  • 【向量化模型如何私有化部署】一文说清原理、流程与最佳实践
  • KTH5772游戏手柄摇杆专用 3D 霍尔位置传感器
  • JavaWeb:前后端分离开发-登录认证
  • uniapp uni-id-co errCode“:“uni-id-captcha-required“,“errMsg“:“Captcha required
  • 《Offer来了:Java面试核心知识点精讲》大纲
  • 蓬莱市住房和规划建设管理局网站/怎么投放广告
  • 怎样创建自己的公众号/优化排名 生客seo
  • 电子商务网站建设资讯/百度上做推广怎么收费
  • wordpress花园主题/东莞百度seo电话
  • 开个做网站公司/营销推广方案范文
  • 外贸b2b网站建设公司/网上销售方法