搜索
bottom↓
回复: 23

TFT 320*240 求滑屏方案

[复制链接]

出0入0汤圆

发表于 2017-7-26 21:26:51 来自手机 | 显示全部楼层 |阅读模式
我目前有一个应用需要驱动320*240 16位颜色的TFT显示屏,屏上显示背景图片,背景图片上显示图标和字符,字符是一些动态的数据。要求类似手机滑屏的动态效果,背景图片与图标、字符一起滑动,多屏切换。
目前用的stm32f410 100m,8位模拟总线驱动屏,quad spi flash读取图片,emwin gui中间件。

目前刷一屏图片感觉有点吃力了,刷图标字符无压力。
想请教大家有没有做过类似的应用,需不需要上ram,还是nor flash,还是带tft驱动的mcu,还是ra8875 ?

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2017-7-26 21:37:18 | 显示全部楼层
参照正点原子综合例程   需要有足够的RAM开辟能储存整个屏幕数据的缓存,最好双缓冲,   修改缓存数据,DMA控制总线整屏刷新

出0入0汤圆

发表于 2017-7-26 21:38:29 | 显示全部楼层
8位模拟总线太慢,效果会很差。

出0入0汤圆

 楼主| 发表于 2017-7-26 21:41:22 来自手机 | 显示全部楼层
xjavr 发表于 2017-7-26 21:38
8位模拟总线太慢,效果会很差。

预留了16位,但占用了调试口,就先用8位用着

出0入0汤圆

 楼主| 发表于 2017-7-26 21:46:33 来自手机 | 显示全部楼层
not_at_all 发表于 2017-7-26 21:37
参照正点原子综合例程   需要有足够的RAM开辟能储存整个屏幕数据的缓存,最好双缓冲,   修改缓存数据,DMA ...

所以还是要外扩ram或者256k,384k的片子?150k一屏
正点原子的例程有没有这种滑屏的呢?
我感觉要缓存三屏数据,应对两个方向

出0入0汤圆

发表于 2017-7-26 22:02:28 | 显示全部楼层
本帖最后由 not_at_all 于 2017-7-26 22:07 编辑
icoozy 发表于 2017-7-26 21:46
所以还是要外扩ram或者256k,384k的片子?150k一屏
正点原子的例程有没有这种滑屏的呢?
我感觉要缓存三屏 ...


利用DMA刷新屏幕,双缓冲就行    屏幕刷新的时候,可以修改另一个缓存的数据     除非你搞视频软解码,一般情况下芯片处理内部数据的速度比刷新屏幕的速度快
-----------------------
另外,最好16位硬件总线驱动,用IO模拟总线用不了DMA的      
提醒一下:芯片标称容量以 bit 来算,我们使用以 byte 来算,千万不要弄错

出0入0汤圆

 楼主| 发表于 2017-7-26 22:37:08 来自手机 | 显示全部楼层
not_at_all 发表于 2017-7-26 22:02
利用DMA刷新屏幕,双缓冲就行    屏幕刷新的时候,可以修改另一个缓存的数据     除非你搞视频软解码,一 ...

谢大侠,
我找了优酷上原子的综合测试实验的视频,太溜了
还请教一下,视频演示的是f7的主控吗,f4是否可以达到这种效果?

出0入0汤圆

发表于 2017-7-27 00:03:36 | 显示全部楼层
我没用过,所以我也不知道。估计没有比这个更好的方案。

出0入0汤圆

发表于 2017-7-27 00:21:29 来自手机 | 显示全部楼层
刷屏慢也有可能是程序,我遇到过,显示一张图片像是加载网络图片一样。调整逻辑会好很多,减少颜色运算,减少一切不必要运算,越是底层效果越明显

出0入0汤圆

 楼主| 发表于 2017-7-27 08:02:43 来自手机 | 显示全部楼层
zyqcome 发表于 2017-7-27 00:21
刷屏慢也有可能是程序,我遇到过,显示一张图片像是加载网络图片一样。调整逻辑会好很多,减少颜色运算,减 ...

因为是模拟总线,IO口已经是直接操作寄存器了,但是没办法做双缓存,只能读一段写一段。
没有颜色运算,存储格式与显示格式一样,bmp位图

出0入0汤圆

发表于 2017-7-27 09:15:54 | 显示全部楼层
这种成本也不低 不如上arm linux简单

出0入0汤圆

发表于 2017-7-27 09:18:39 | 显示全部楼层
都上F4了还用8位模拟,FSMC啊。

滑屏要足够的ram。

出0入0汤圆

发表于 2017-7-27 10:50:48 | 显示全部楼层
icoozy 发表于 2017-7-26 21:41
预留了16位,但占用了调试口,就先用8位用着

占用不了调试口吧...难不成你用的是PA口? 或者16位不连续? 16位不连续就是个杯具

出0入0汤圆

 楼主| 发表于 2017-7-27 11:26:08 来自手机 | 显示全部楼层
gongxd 发表于 2017-7-27 09:15
这种成本也不低 不如上arm linux简单

arm linux 功耗怎么样,电池供电啊,还要给屏背光吃掉一大块

出0入0汤圆

 楼主| 发表于 2017-7-27 11:31:50 来自手机 | 显示全部楼层
snoopyzz 发表于 2017-7-27 10:50
占用不了调试口吧...难不成你用的是PA口? 或者16位不连续? 16位不连续就是个杯具 ...

410就是没有fsmc,64脚,用的PA口,因为相对来说管脚集中一点布线好走,选它是因为便宜加功耗低

出0入0汤圆

发表于 2017-7-27 13:21:10 | 显示全部楼层
icoozy 发表于 2017-7-27 11:31
410就是没有fsmc,64脚,用的PA口,因为相对来说管脚集中一点布线好走,选它是因为便宜加功耗低 ...

换PB口, 别给自己找事...SW USB UART SPI都在PA上, 我觉得PA 16个脚全被占太杯具

出0入0汤圆

 楼主| 发表于 2017-7-27 13:39:17 来自手机 | 显示全部楼层
snoopyzz 发表于 2017-7-27 13:21
换PB口, 别给自己找事...SW USB UART SPI都在PA上, 我觉得PA 16个脚全被占太杯具

确实感觉用得很纠结
有没有好的滑屏方案推荐,现在这种方式处理不过来了,即使16位fsmc

出0入0汤圆

发表于 2017-7-27 13:58:21 | 显示全部楼层
本帖最后由 snoopyzz 于 2017-7-27 13:59 编辑
icoozy 发表于 2017-7-27 13:39
确实感觉用得很纠结
有没有好的滑屏方案推荐,现在这种方式处理不过来了,即使16位fsmc ...


我用f103@72mhz GPIO刷屏240*320*16位色, 图片放SPI FLASH(SPI@18Mhz), 14.4fps
用f030@48Mhz GPIO刷屏240*320*16位色, 图片放SPI FLASH(SPI@24Mhz), 18.9fps

刷纯色超过100fps

出0入0汤圆

 楼主| 发表于 2017-7-27 15:46:12 来自手机 | 显示全部楼层
snoopyzz 发表于 2017-7-27 13:58
我用f103@72mhz GPIO刷屏240*320*16位色, 图片放SPI FLASH(SPI@18Mhz), 14.4fps
用f030@48Mhz GPIO刷屏24 ...

这个帧率应该还是可以感觉出来吧

出0入0汤圆

发表于 2017-7-27 16:03:02 | 显示全部楼层
icoozy 发表于 2017-7-27 15:46
这个帧率应该还是可以感觉出来吧

这已经很接近是SPI最高速度了(我用了双缓冲DMA, 所以瓶颈只卡在SPI上), 你计算下就知道
320*240*16bit = 1228800
18MHz / 1228800 = 14.65fps
24Mhz / 1228800 = 19.53fps

用SDIO才有可能提高了

出0入0汤圆

发表于 2017-7-27 16:06:19 | 显示全部楼层
icoozy 发表于 2017-7-27 15:46
这个帧率应该还是可以感觉出来吧

你用STM32F4, 100M主频, 怎么也应该比我快的多吧, 原理上速度是够滑屏了,
我用STM32F1做淡入淡出都OK的

出0入0汤圆

 楼主| 发表于 2017-7-27 16:23:14 来自手机 | 显示全部楼层
snoopyzz 发表于 2017-7-27 16:06
你用STM32F4, 100M主频, 怎么也应该比我快的多吧, 原理上速度是够滑屏了,
我用STM32F1做淡入淡出都OK的 ...

谢谢,我找开发板来测试一下,目前的硬件不支持DMA,qspi 和8080都是模拟的

出0入0汤圆

 楼主| 发表于 2017-7-29 19:01:44 来自手机 | 显示全部楼层
今天改了16位总线接口,但仍然是io

出0入0汤圆

 楼主| 发表于 2017-7-29 19:04:23 来自手机 | 显示全部楼层
今天改了16位总线接口,但仍然是io模拟,移动一个64'x64的图标,动起来速度倒是够,但闪得厉害。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-21 07:22

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表