打印
[其它应用]

中颖8位机的极限—刷TFT彩屏

[复制链接]
17904|77
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
NJZR|  楼主 | 2021-10-3 21:56 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
#申请原创#  闲来无事逛某宝,赫然发现同尺寸的TFT小屏竟然比单色点阵屏还便宜,顿时萌发了尝试一下的念头,根据现有产品要求选定一款2.4''彩屏,驱动ILI9341分辨率200*320,典型的烂大街规格不愁断货,立刻下单!不过考虑到通常TFT驱动对MCU的需求还是比较高的,如果套用现成方案例程搞个STM32(现在是奢侈品了)做驱动到也四平八稳,但是成本就不忍直视了,补充一下F1系列只有100脚以上的带FSMC接口,所以价格肯定感人。
  用高射**打蚊子不算本事,用弹弓同样打蚊子才是水平,立刻着手查资料算时序,我就不信51搞不定TFT(是指基本流畅播放全屏动画,而不是慢吞吞刷出几个字来),一算才发现这玩意要求还挺高,平时常用的中颖系列主频最多20冒头,这速度来刷屏怕是要看着图片一条线往下跑了,虽然有些STM32开发板例程也是这个水平但咱自己对觉悟还是有要求的!^_^
  搞到这里有点头痛,想着不行就换MCU吧,无意间忽然想到电机控制MCU不是对速度要求挺高的嘛,于是就发现了这头怪兽— SH79F3213。32KB的FLASH、1.5KB的RAM、关键是有16KB的程序RAM,只要把前16K的CODE拷贝到里面就能以84M的主频的跑程序,芯片其它外围也挺丰富但我暂时用不到就不去管它了,没有硬件支持下刷屏幕MIPS才是王道!
  芯片选定开始电路方案设计,彩色图片的数据量对51来说非常可观的,一幅全屏的RGB565数据就是153KB,与用单色屏习惯把字库和小图片防在CODE区不同,这种应用必须外扩存储器了。你没猜错,我又选了烂大街的W25Q系列,便宜才是王道嘛,手头有现成的W25Q16先顶上用吧。这里要吐槽一下硬件SPI口,最快只能8分频,都什么年代了还这么慢,现在SPI口的FLASH都支持100M以上了。好在内核跑得快,我用软件模拟还不行嘛,最终软件模拟的SPI口做到20个指令周期取一字节并放到总线,同样时间你硬件SPI三位还没有传完,在此帮中颖汗颜一下。
  言归正传,  选P0、P4口做16位数据总线,因为这俩口排列规整方便布线,P2口给W25Q用(实际只用了6个PIN,为啥这样用可以想想),留了一个串口做图象文件下载和显示控制,其他控制IO就随便就近分配了。正好某配有免费打样券,PCB图画好就去做了。
  板子回来焊接器件没啥好说的,参照卖家的例程做个驱动初始化,自己写了画点和字库显示文字的程序,文字显示很快是预料中,因为前景、背景色是相对固定两色刷就完了,有些卖家例程以单色刷屏速度吹嘘就更是糊弄人民群众了,这个总线数据都不用变拼命刷RD就行了。

焊反.jpg (282.16 KB )

焊反.jpg

焊正.jpg (245.5 KB )

焊正.jpg

使用特权

评论回复
评论
NJZR 2021-10-3 22:23 回复TA
自己更正一下两处笔误,一是屏幕分辨率是240*320,二是拼命刷WR不是刷RD,因为正在做透明背景字体的程序,需要读-修改-写,所以心里就习惯性RD了。 
沙发
NJZR|  楼主 | 2021-10-3 22:10 | 只看该作者
  重点到了!其实搞过TFT的(用开发板移植一下例程在我看来不能算搞过)都知道,刷图象速度的瓶颈是在取数据而不在刷总线,即使你用STM32,用上了DMA、FSMC限制你速度的依然是SPI总线上的存储器,上面提到了我用20个指令周期取到一字节数据并把它放到总线上,这样16位总线就需要40周期,再加上8080口的控制和循环指令,整屏刷下来平均51-52周期/PIXE,换算成刷新率大约21FPS,这个速度基本可以满足一般的工业产品显示需要了。当然最终产品还会有些中断程序的干扰,但做到18FPS以上应该没有任何难度。附上刷图片的视频,虽然有20FPS左右但画面切换时撕裂感还是明显的,一是屏硬件没有接出TE脚不能同步,二是帧率还是低了些,理论上如果有ILI9341帧率的一半配合同步刷频就可以完全无感地切换了。

  最后,在此基础上还有另一个硬件版本的方案,增加1.X元的成本可以让帧率翻倍,不过这个方案我不打算用中颖来做了,准备转战STC争取做到50FPS左右,因为中颖年数太久了,内核一直没有改良,多周期指令还是比较多,即使花了大价钱搞了16KB的程序RAM和高达84M的变态主频,但实际程序执行效率并没有三四十主频的新1T内核快。好了打住,不吐槽了,省得管理员心情不爽。^_^

使用特权

评论回复
板凳
cjseng| | 2021-10-4 10:34 | 只看该作者
这个可以可以,要是带上触摸就更好了

使用特权

评论回复
评论
hex6689 2021-10-4 20:41 回复TA
厉害 
地板
海洋无限| | 2021-10-4 16:27 | 只看该作者

使用特权

评论回复
5
地瓜patch| | 2021-10-4 17:26 | 只看该作者
放假也加班么

使用特权

评论回复
评论
NJZR 2021-10-4 21:45 回复TA
我不存在放假和加班的概念,做研发平时不去单位报到,时间自己安排。不过别想得太美,老板肯这样也是相信我自己安排的工作量比8小时上班的多,全靠自觉和主动内卷 ^_^ 
6
sparrow054| | 2021-10-4 18:09 | 只看该作者
这种屏是不是,都有配套的触摸?

使用特权

评论回复
7
NJZR|  楼主 | 2021-10-4 21:47 | 只看该作者
sparrow054 发表于 2021-10-4 18:09
这种屏是不是,都有配套的触摸?

有配套触摸的,不过我个人感觉5寸以下的屏搞触摸的实用性不大

使用特权

评论回复
8
NJZR|  楼主 | 2021-10-4 21:58 | 只看该作者
cjseng 发表于 2021-10-4 10:34
这个可以可以,要是带上触摸就更好了

我准备的这个项目不用触摸,而且我个人觉得这么小的屏搞触摸不太实用,一个手指就挡住1/3屏幕了。使用触摸屏也没啥技术难度,电阻的自己直接采AD计算XY坐标,电容的有专用接口芯片,只要I2C或SPI读数据即可。

使用特权

评论回复
9
chenjun89| | 2021-10-5 14:29 | 只看该作者
不错,还没动手实践一下。

使用特权

评论回复
10
caigang13| | 2021-10-5 21:19 | 只看该作者
楼主还专门打个板,不错。

使用特权

评论回复
11
NJZR|  楼主 | 2021-10-5 22:33 | 只看该作者
caigang13 发表于 2021-10-5 21:19
楼主还专门打个板,不错。

反正不要钱的,个人账户每月2张免费券,单位账户每个月5张免费券,一个月7次免费打板想不浪费掉也是困难

使用特权

评论回复
12
cjseng| | 2021-10-6 09:59 | 只看该作者
我想起多年前,论坛里的牛人用2051驱动CRT显示器,还运行了俄罗斯方块,还有背景音乐

使用特权

评论回复
13
oufuqiang| | 2021-10-6 11:12 | 只看该作者
性能开发,才是意义所在。
看到好多很简单的东西都上STM32我就很是无语。当然都说开发成本,用着顺手就是STM32。
淘宝买的SSD1306的OLED屏,卖家例程效率很低,胜在能点亮屏幕。后面改改改,爽了。

使用特权

评论回复
14
NJZR|  楼主 | 2021-10-6 12:02 | 只看该作者
oufuqiang 发表于 2021-10-6 11:12
性能开发,才是意义所在。
看到好多很简单的东西都上STM32我就很是无语。当然都说开发成本,用着顺手就是ST ...

同感,我做这个也是因为很多年轻同事都认为想快速刷彩屏就要用ARM核或者硬件支持才行,当然在老板看来用四五块钱能干别人几十块的事便也是极好的。下面我打算抽空用STC把这个小屏幕刷到极致,用现在的主流标准来看中颖的1T指令集确实有点落后了,要不是这款干到了84M主频还真有点搞不定,如果管理员不反对我搞好了STC方案继续来续这个贴,兄弟有空记得帮忙捧个场哦。新帖是不敢发的,不然像来叫板一样了^_^

使用特权

评论回复
15
weifeng90| | 2021-10-7 09:00 | 只看该作者
关键是看整体软件结构设计的如何

使用特权

评论回复
16
NJZR|  楼主 | 2021-10-16 23:31 | 只看该作者
再补充一个全屏视频播放,因为FLASH只能存13帧图片,所以实际播放只有1秒多,目前的效果是刷屏一帧耗时47ms再延时130ms的循环,看起来已经蛮流畅了。
预告一下,下个版本继续用这个MCU的PCB已经打板中,本来打算用STC做的可是STC实在槽点多多,就继续用中颖做吧。这个新方案帧率至少可以翻倍,存储容量也有扩充,到时候多搞几秒视频看看效果。

使用特权

评论回复
17
数据采集存储| | 2021-11-1 12:34 | 只看该作者
这个板子确实不错,感谢楼主分享

使用特权

评论回复
18
soodesyt| | 2022-7-2 10:21 | 只看该作者
很详细的开发板资料                                 

使用特权

评论回复
19
chenci2013| | 2022-7-2 10:35 | 只看该作者
非常感谢楼主分享                                 

使用特权

评论回复
20
uytyu| | 2022-7-2 10:50 | 只看该作者
回复查看一下相关的内容。                                 

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

219

帖子

4

粉丝