打印

关于 FSMC 使用的小结(很多是坛子里的经验)欢迎拍砖

[复制链接]
13105|43
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ducha|  楼主 | 2010-5-15 13:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 ducha 于 2010-5-15 13:47 编辑

在这里吧FSMC 涉及到的用法做一个分类总结,虽然官方的文档很好,但是还是用朴素的话做分类说明,方便大家使用,同时如果小弟有理解不对的地方,希望大家及时指正,又缺少的部分大家发帖补充完善下吧。
首先明确一个问题 FSMC 有两种控制器
一、NOR memory control
二、NAND/PC CARD memory control

首先 按管脚数分 100和 144的

100的
STM32中100脚的型号的FSMC能否同时使用Bank1和Bank2?
数据手册中有下面一段注释:
For the LQFP100 and BGA100 packages, only FSMC Bank1 and Bank2 are available. Bank1 can only support a multiplexed NOR Flash memory using the NE1 Chip Select. Bank2 can only support a 16- or 8-
bit NAND Flash memory using the NCE2 Chip Select.
因为只有一个片选脚 PD7  (NE1 和NCE2同一个)  所以BANK1 和bank2只能使用一个

可能会有用IO模拟片选的,我觉得对于慢速设备可以这么做,但是对于快速设备这么做就没意义了,失去了FSMC的速度。还有个解决办法就是加译码器 将地址分小 可以达到FSMC挂接多设备的目的。

同时注意到 100的片子想访问SRAM的话 地址线和数据线分开的原因,需要使用NOR地址数据线复用模式。对于144的就不存在这个问题了线够多,我感觉用不上复用模式了。

144PIN:
bank1 有4个片选 NEx(x=1.2.3.4)
BANK2/3 分别使用      NCEx(x=2,3)做片选, 与 NEx(1,2)复用//
BANK4  为PC card  使用NCE4_1/NCE4_2 做片选。其中NCE4_1,与NE3 复用

所以这么看来独立的片选线为5条。

问题总结:
1、DM9000A的接口 (当SRAM用)
  首先DM9000的控制实质就是读数据、写数据  只不过是有个CMD 来控制数据是地址还是命令: IOR和IOW是DM9000的读写选择引脚,低电平有效,即低电平时进行读(IOR)写(IOW)操作;AEN是芯片选通引脚,低电平有效,该引脚为低时才能进行读写操作;CMD的命令/数据切换引脚,低电平时读写命令操作,高电平时读写数据操作。
  在一款开发板子上看到将dm9000接到BANK1上这是没问题的,只要将一根数据线连CMD 就可以对其操作,但是不建议使用IO来模拟控制CMD ,原因是DM9000快速设备

至于DM9000能不能挂在NAND 控制器,我觉得是不可以的。这点我也不确定

2、LCD 接口
LCD 目前我见到的大多是接到SRAM/NOR控制其上的 非地址锁存的那种。所以不能接到NAND 直接用。

有错的地方大家指正啊。

(未完待续)
沙发
ducha|  楼主 | 2010-5-15 17:40 | 只看该作者
本帖最后由 ducha 于 2010-5-15 17:53 编辑

续1)将LCD 所谓的8080 和6800接口 做个比较

首先这两中都是并行总线模式,接着看其引脚的定义
(1)8080模式。这类模式通常有下列接口信号:
Vcc(工作主电源)
Vss(公共端)
Vee(偏置负电源,常用于调整显示对比度)
/RES,复位线。DB0~DB7,双向数据线。
D/I,数据/指令选择线(1:数据读写,0:命令读写)。
/CS,片选信号线(如果有多片组合,可有多条片选信号线)。
/WR, MPU向LCD写入数据控制线。
/RD, MPU从LCD读入数据控制线。
(2)6800模式。在这种模式下,Vcc、Vss、Vee、/RES、DB0~DB7、D/I的功能同模式(1),其他信号线为:
R/W,读写控制(1:MPU读, 0:MPU写)。
E,允许信号(多片组合时,可有多条允许信号线)。

比较发现 明显的8080 与6800接口上仅仅是 读写线的差别
6800总线读写控制只需要1只脚R/W1为读0为写,而8080总线是两只脚RDWR,其中的某个脚为低就对应响应功能。根据这个逻辑关系,我们很容易就猜想到为什么LCD为6800R/W脚可以直接接上51单片机的8080总线WR了。


下面说下比较重要的相同点,就是都是使用D/I 数据/指令选择线,用来判断DATA线上是数据还是命令(1:数据读写,0:命令读写)。 这点倒是和DM9000a类似

使用特权

评论回复
板凳
huhu2009| | 2010-5-15 18:35 | 只看该作者
我来补充一下LCD接口模式方面的内容吧,不对的地方,请大家指正。

LCD接口模式众多,主要有MCU模式、RGB模式、SPI模式、VSYNC模式、MDDI模式。

   MCU模式:目前最常用的连接模式,包括80、68(080模式和6800模式)、串行,一般是80系统(68系统已经不存在了)。80包括18/16/9/8 bits种传输形式,18位接口即RGB均为6位数据,通过LCD Driver IC处理将6位数据转换成灰阶电压输送到panel上。一般这种模式下的 LCD DRIVER都带一个GRAM,数据可以先存到IC内部GRAM后再往屏上写,所以这种模式LCD可以直接接在MEMORY的总线上。连线分为:CS/,RS(寄存器选择),RD/,WR/,再就是数据线了。
MCU接口:会解码命令,由timing generator产生时序信号,驱动COM和SEG驱动器。
优点是:控制简单方便,无需时钟和同步信号。缺点是:要耗费GRAM,所以难以做到大屏(QVGA以上).

   RGB模式:大屏采用较多的模式,数据位传输也有6位,16位和18位之分。连线一般有:VSYNC,HSYNC、DOTCLK、ENABLE、RGB数据线等。剩下就是数据线。它的优缺点正好和MCU模式相反。
   RGB连接方式需要DOTCLK,HSYNC和VSYNC三根时钟线来保证RGB数据按照正确的时序由CPU向LCD传输,其中DOTCLK为系统时钟,提供稳定的方波时钟,HSYNC为行同步信号,VSYNC为场同步信号。另外现在的LCM大都带控制器,需要SPI发送控制命令的,初始化(设置窗口)那些命令操作都是要通过SPI接口传进LCD的控制器中。由于RGB模式下显示数据不需要写入GRAM,可以直接写屏,速度快常用于显示视频和动画。
RGB接口:在写LCD register setting时,和MPU没有区别。区别只在于图像的写入方式。

   SPI模式:采用较少,连线为CS/,SLK,SDI,SDO四根线,连线少但是软件控制比较复杂。

   VSYNC模式:该模式是在MCU模式下增加了一根VSYNC(帧同步)信号线而已,应用于运动画面更新。

   MDDI模式:高通公司于2004年提出的接口MDDI(Mobile Display Digital Interface),通过减少连线可提高移动电话的可靠性并降低功耗,这将取代SPI模式而成为移动领域的高速串行接口。连线主要是host_data,host_strobe,client_data,client_strobe,power,GND几根线。目前瑞萨和三星才刚刚出货(主要是大屏的)。

使用特权

评论回复
地板
songbangyan| | 2010-5-17 11:52 | 只看该作者
学习了!

使用特权

评论回复
5
无冕之王| | 2010-5-17 21:37 | 只看该作者
有点心得

使用特权

评论回复
6
andyheba| | 2010-8-30 17:28 | 只看该作者
复习下!

使用特权

评论回复
7
xixihaha0| | 2010-8-31 10:00 | 只看该作者
不错,很 有条理

使用特权

评论回复
8
xuetingxun2010| | 2010-9-21 23:20 | 只看该作者
mark

使用特权

评论回复
9
无冕之王| | 2010-9-22 12:05 | 只看该作者
很老的帖子了,不过的确是还不粗

使用特权

评论回复
10
xsgy123| | 2010-9-22 19:31 | 只看该作者
很不错的经验小结

使用特权

评论回复
11
lixiaoxu2meng| | 2010-9-25 08:06 | 只看该作者
mark

使用特权

评论回复
12
hsbjb| | 2010-10-18 19:17 | 只看该作者
心得写的还不错

使用特权

评论回复
13
pkat| | 2010-10-18 22:52 | 只看该作者
心得总结的还是不错的:lol

使用特权

评论回复
14
lixiaoxu2meng| | 2010-10-19 09:51 | 只看该作者
mark

使用特权

评论回复
15
alvin007| | 2011-1-13 11:58 | 只看该作者
顶楼主!
支持这种有质量的帖子
希望哪天自己也能为这个帖子添砖加瓦

使用特权

评论回复
16
秋天落叶| | 2011-1-13 14:47 | 只看该作者
不错

使用特权

评论回复
17
hsbjb| | 2011-1-13 17:10 | 只看该作者
总结的还不错

使用特权

评论回复
18
rdmaiyjl| | 2011-1-13 18:39 | 只看该作者
mark

使用特权

评论回复
19
lixiaoxu2meng| | 2011-1-14 09:08 | 只看该作者
收藏 感谢楼主

使用特权

评论回复
20
baidudz| | 2011-1-14 15:29 | 只看该作者
小结写的不错

使用特权

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

本版积分规则

11

主题

75

帖子

1

粉丝