打印
[应用相关]

STM32 FSMC总线深入研究

[复制链接]
974|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Listate|  楼主 | 2016-10-23 17:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
由于CPU与FPGA通信的需要,以及对8080总线的熟悉,首选采用了STM32的FSMC总线,作为片间通信接口。FSMC能达到16MHz的写入速度,理论上能写20fps的1024*768的图片哈哈。(当然实际上是不可能的,就算是DMA传输,数据源也跟不上,实际上刷模拟的图片每秒10fps,刷的很high)当然这不是本篇的要点,这里主要研究STM32的FSMC接口,将速度提升到极限。
1. FSMC协议分析
如下为ILI9325的8080接口的协议
CS(片选信号):低电平片选有效,高电平失能(默认为高:失能)
RS(数据寄存器):低电平写寄存器,高电平写数据(默认为高:写数据)FSMC默认为低。。。。
RD(读信号) :低电平有效,上升沿写入数据,高电平失能(默认为高,失能)
WR(写信号) :低电平有效,上升沿写入数据,高电平失能(默认为高,失能)
FSMC写SRAM模式如下:
(1)读操作
(2)写操作
HCLK为系统时钟72MHz
综上,分析出FSMC与8080接口协议异同点
(1)同:CS,RS,RD有效电平都一样,单个字节的写入与读取时序完全一样
(2)异:
A:8080 默认RS为高,而FSMC默认RS为低
B:8080接口协议能保持CS,RS等有效,连续写数据,而FSMC以此只能输出一个数据。
C:8080协议没有地址线,而FSMC还有地址线,这使得数据输出不连续。

沙发
bbapple| | 2016-10-23 17:39 | 只看该作者
个人感觉手册就是太保守了。

使用特权

评论回复
板凳
handleMessage| | 2016-10-23 17:44 | 只看该作者
感觉速度每提升,应该在小就是默认的吧。

使用特权

评论回复
地板
bbapple| | 2016-10-23 17:49 | 只看该作者
本帖最后由 bbapple 于 2016-10-23 17:51 编辑

我追求的是极限

使用特权

评论回复
5
xia00| | 2016-10-23 17:55 | 只看该作者
FSMC最大实现了72MHz(66.7到100MHz之间,实际为72MHz,HCLK)的翻转速度,这要求外部器件支持那么高的速率。

使用特权

评论回复
6
hfdy01| | 2016-10-23 17:58 | 只看该作者
读写操作一直都有必要好好研究啊

使用特权

评论回复
7
CallReceiver| | 2016-10-23 18:02 | 只看该作者
请教下,FSMC写命令与数据的时序图有什么需要注意的吗?

使用特权

评论回复
8
boy1990| | 2016-10-23 18:06 | 只看该作者
CallReceiver 发表于 2016-10-23 18:02
请教下,FSMC写命令与数据的时序图有什么需要注意的吗?

FSMC的信号线翻转非常快,这使得IC或者FPGA时序设计上得非常严谨。

使用特权

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

本版积分规则

161

主题

1233

帖子

1

粉丝