您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 技术讨论区 -> [求助]BF548的EPPI 驱动外部TFT
本帖共有546个阅读者
发表帖子 发表投票 回复主题
[求助]BF548的EPPI 驱动外部TFT
lvben5d(论坛新手)
lvben5d
头衔:社区公民
帮派:无帮无派
帖数:61
金钱:672
积分:89
注册时间:2014/3/24
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
[求助]BF548的EPPI 驱动外部TFT
各位前辈,请问下BF548的EPPI0 驱动外部active TFT的时候,这个扫描是DSP内部控制器按照我们预先给定的2D缓冲区,进行Dataflow为 CircleLoopBack 循环反复扫描驱动?
还是 外部TFT屏本身就具备扫描功能,我们只需要将对应像素点阵的1个图片给TFT,TFT就会一直显示这个图片而不需要DSP的EPPI口去处理?
如果是内部DSP驱动,我们可以设置20帧的速率,那么我设置2帧,是不是CPU处理就会更块?

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2014/3/24 13:05:28
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
TFT屏内部没有缓存图像的区域,如果让液晶屏持续显示,你 必须不停的送数据,数据断了,屏就不显示了。
PPI接口只能使用DMA把指定区域的数据送出来。整个过程CPU不参与,所以即使你不刷屏,CPU也不会处理的更快,在BF54系列上,你即使把CPU停下来,DMA扔会维持液晶屏显示。
DMA和CPU共用SDRAM总线,CPU访问内存频繁时,会影响DMA访问。

TFT液晶屏都有一个标准的输入时钟,这个时钟已经决定了液晶屏的刷新率,所以你的液晶屏也不可能只刷2帧。CPU可以每秒更新2帧的图像数据,但DMA仍会以每秒50-60帧的速度刷屏。


这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2014/3/25 23:00:20
lvben5d(论坛新手)
lvben5d
头衔:社区公民
帮派:无帮无派
帖数:61
金钱:672
积分:89
注册时间:2014/3/24
2信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
感谢andy 解释。非资料里可以找到。~~3Q
如何把数据赛给 做TFT输出的 PPI呢?
如果停止当前的PPI扫描,以便我重新输入背景图和Overlay图?  


「该帖子被 lvben5d 在 2014-03-27 15:17:00 编辑过」

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2014/3/26 15:57:50
尊贵身份标志
andy(论坛版主)
andy
头衔:社区公民
帮派:无帮无派
帖数:2287
金钱:11132
积分:2263
注册时间:2011/6/8
3信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
PPI 只能通过DMA传输,所以PPI传输数据的地址就是DMA地址寄存器配置的地址,你将这个地址指向你的数据buffer,就可以了。
修改这个buffer的数据时,不需要停止dma和ppi,直接向这个buffer写入新数据就可以。这样做可能会看到屏上有明显刷新的痕迹,也可以将DMA停止,然后将地址指向新的数据buffer,再启动DMA,这样图像变换会瞬间完成。

这家伙很懒,什么也没有留下!
等级:论坛版主 参考IP地址:*.*.*.*
2014/3/30 10:14:42
lvben5d(论坛新手)
lvben5d
头衔:社区公民
帮派:无帮无派
帖数:61
金钱:672
积分:89
注册时间:2014/3/24
4信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
今天参考 AD例子里面有一个LCD的例子,采用了PingPong缓冲区进行位图的现实,非常合理而且好,建议大家去看
工程文件在 Blackfin\example\...里 Example_8.

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2014/4/1 11:49:05
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.154202 Call, 1 Queries, Processed in 0.031250 second(s),