资讯详情

[硬件]单片机小制作----Flash存储图片句子,彩屏显示

前言:这么多天在家做了一个小玩意,里面存了几十张我和对象的照片,还存了近50句。有一种每日快乐的模式,就是随机展示一张照片,然后随机展示一个情话。(女票总是让我说一句好话,我想不起来。让她自己看看。.0 文章内容主要讲解各个环节的难点,具体程序下载自己看。 展示一下:

在这里插入图片描述 "每日一乐"模式 句子浏览模式(有密码)

一、前期准备

  • STC12C5A60S单片机最小系统开发板 这是最小的系统,有一个开关,复位,多一件事TFT因为是11针,所以只能买11针。TFT1.44彩屏。有排座比较方便,不需要单独焊接。
  • TFT彩屏1.44寸 这是一个全彩屏幕。使用他给出的函数,颜色深度为16位(R-G-B是5-6-5),8针和11针一样,看手册基本都是ST7735驱动的,用SPI只有8个协议是一样的。为方便安装在板上,用了11针。
  • W25Q128一个(flash) flash,可存储128个非易失存储器件Mb,也就是16MB,当然也有小一点的W25Q16(2MB),W25Q32(4MB),W25Q64(8MB),根据自己的需要来。我想我可以放更多的照片,所以我来了大的,但我不能用完。
  • 洞洞板7x9cm 这是因为它需要添加到最小系统板上flash,没有直接接口,只能取中最小系统和flash,还有俩按键都焊到板上就行了,就这用途。
  • 需要存储的照片和句子取模数据

我们没有文件系统,是最基本的字符形式,

  • 图片:由于TFT1.这个屏幕只有1284寸x128的分辨率,所以图片只能剪成这个尺寸,然后取模,128*128是16384个像素点,每点16个颜色数据,因此共有32768 Byte一张图,也就是32KB大小存一张图。
  • 汉字:16个汉字*16.算法相同,一个字取完模占32 Byte。
  • 句子:先前想过两种存储方式,
  • 第一种是存一个字库,最常用的汉字是1000-2000,最好按笔画分组,因为在keil他默认将一个汉字存入两个字符(这就是为什么keil 删除汉字要按删除两次),这样索引查找字库的方比较快。 假设是这样的:(假设是这样的:(假设 甲 这个字是0x08,0x我不知道是什么。加上32B字模数据) “甲”,0x00,0x00,0x3F,0xF8,0x21,0x08,0x21,0x08,0x21,0x08,0x3F,0xF8,0x21,0x08,0x21,0x08, 0x21,0x08,0x3F,0xF8,0x21,0x08,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00, 一个字占用34Byte ,但是,为了对齐,最好直接占用A字符32Byte,一共64Byte一个字。 这样,索引就可以直接在程序中写A、B、C、丁,而不是A字放在第120位,程序写120、121、122、123。
  • 第二种是直接存储句子,但由于句子长度不同,存储比9*麻烦,最好对齐,方便我们调用搜索使用 我总共有50多个句子,总共不超过1000个单词。就这样,我的句子最多改成32个单词,只是为了对齐。所以一个句子只是1KB。补充空白不足32个字到32个字。

二、步骤:

三、最后

程序我都放在了CSDN的下载里,设置了0分,取用的,大家在这页点个赞让我看到就好,嘿嘿0.0. 下载链接   不过还要说一句,文档是一定要看的,尤其是单片机的文档,用到别的芯片也要看文档,因为出了问题,查文档是最快的,有时候直接看一眼时序图就什么都理解了。   调试的过程中记住好好的用 ,真的很有用。   上面单片机的RAM部分,我觉得也很重要,码住!

标签: gg电容屏

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台