打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
关于 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 直接用。


将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/W,1为读0为写,而8080总线是两只脚RD,WR,其中的某个脚为低就对应响应功能。根据这个逻辑关系,我们很容易就猜想到为什么LCD为6800的R/W脚可以直接接上51单片机的8080总线的WR了。


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

补充:
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几根线。目前瑞萨和三星才刚刚出货(主要是大屏的)。

【分享】如果您觉得本文有用,请点击右上角“…”扩散到朋友圈!

关注电子工程专辑请搜微信号:“eet-china”或点击本文标题下方“电子工程专辑”字样,进入官方微信“关注”。


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
RGB接口与MCU接口的LCD屏,有什么区别?
stm32 驱动 TFT LCD-Changing's Blog
LCD的接口类型详解
LCD的CPU接口和RGB接口
关于FSMC使用的小结(很多是坛子里的经验)欢迎拍砖http://bbs.eeworld.com.cn/thread-254103-1-1.html
RGB屏驱动流程
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服