`

FSMC接网络控制芯片和LCD

 
阅读更多

首先明确一个问题 FSMC 有两种控制器
一、NOR memory control
二、NAND/PC CARD memory control

首先 按管脚数分 100和 144的

100pin的
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 直接用。

STM32的FSMC 连接外设 比如液晶,要把液晶分为两部分来对待,一部分是液晶寄存器,一部分是液晶显示的数据,可以当做显存吧。
因此用一个地址线 Ax 来区分当前连接的是寄存器还是显存,假使RS引脚为高时代表寄存器被选通,,
那么地址线上该位Ax就可以决定选通什么,
不过地址线是指导了,可是还有地址。
假设A0连接的是RS,那么选通液晶寄存器的尾地址是什么?
当传输是16位时,是0x???? 0002,不是0x???? 0001
看下面的图片说明(来自官方手册)

16位数据在内部使用【25:1】访问,8位数据地址时按照内部访问地址与外部实际连接地址一致
也就是实际地址数左移一位后的地址,或许也可以看做外部连接地址X2,
搞明白这点其他都好理解
举例:
9G的液晶移植例子中选用A16连接LCD的RS引脚
那么实际上连接的外部引脚地址是0x6001 0001,但是在通过内部CPU选择该地址时要用 0x6002 0001
对于RS的连接地址,CPU从内部访问它用的地址比外部实际地址左移了一位,这是在16位的访问模式下。

 

分享到:
评论

相关推荐

    基于STM32 的FSMC接口驱动TFT彩屏的设计

    本文提出了一种能直接驱动数字液晶屏的设计方案,方案先介绍了TFT数字彩屏的工作原理,利用STM32处理器的FSMC接口设计的硬件电路和软件程序均能对显示控制芯片进行有效的控制。在实际应用中显示清晰流畅,并且CPU有...

    STM32F407-FSMC-LCD-ILI9486

    STM32F407芯片通过FSMC模拟80时序控制ILI9486驱动LCD

    基于STM32设计的LCD屏驱动代码(采用模拟8080时序方式驱动).zip

    MCU采用STM32F103ZET6,这款型号是支持FSMC接口,但是为了方便深入学习LCD的时序,这份代码没有采用FSMC接口,采用的是模拟时序方式驱动的,目的就是方便学习LCD编程,网上例子程序基本都是采用FSMC驱动的。...

    基于STM32的FSMC接口驱动TFT彩屏的设计

    在实际应用中显示清晰流畅,并且CPU有足够的时间来处理用户程序。该方案能成功应用在电脑横机的人机界面显示中,且其硬件电路结构简单、控制方式灵活、对于其他型号的接口芯片也能提供参考。

    STM32 FSMC驱动ili9341

    STM32使用FSMC总线驱动LCD,LCD主控芯片为9341!

    基于STM32的FSMC接口驱动TFT彩屏

    在实际应用中显示清晰流畅,并且CPU有足够的时间来处理用户程序。该方案能成功应用在电脑横机的人机界面显示中,且其硬件电路结构简单、控制方式灵活、对于其他型号的接口芯片也能提供参考。

    液晶屏资料 9341_STM32-FSMC16BIT_FOR SD-20180128_OK

    对于LCD显示屏的控制,简单的讲就是通过向芯片ILI9341发送指定的命令和参数,就可以直接控制。FSMC连接好外部存储器并连接好后,可以直接通过访问地址进行读写数据。使用FSMC外接存储器时,起存储单元是映射到STM32...

    实验12 OLED显示实验.zip_DS0连接PF9_iIC接LCD_oled iic_stm32f407_按键OLED显示

    3,ALIENTEK 2.8/3.5/4.3/7寸TFTLCD模块(通过FSMC驱动,FSMC_NE4接LCD片选/A6接RS) 4,按键KEY0(PE4)/KEY1(PE3) 5,24C02(IIC连接在PB8/PB9上面) 实验现象: 本实验通过KEY1按键来控制24C02的写入,通过另外一个...

    正点原子的STM32F103精英板的FSMC驱动3.5英寸的LCD屏幕的工程

    LCD驱动芯片型号为NT35310

    STM32F103ZET6-TFTLCD-4.3INCH.rar

    TFT LCD采用16位8080并口驱动芯片NT35510,STM32通过FMSC总线接口通讯实现显示图像控制。工程平台为STM32CUBEIDE,以STM32F103ZET6为例。具体介绍见CSDN博文《STM32 FSMC接口驱动4.3寸TFT LCD屏》。

    显示/光电技术中的基于STM32 的FSMC接口驱动TFT彩屏的设计方案

    本文提出了一种能直接驱动数字液晶屏的设计方案,方案先介绍了TFT数字彩屏的工作原理,利用STM32处理器的FSMC接口设计的硬件电路和软件程序均能对显示控制芯片进行有效的控制。在实际应用中显示清晰流畅,并且CPU有...

    基于STM32 的FSMC接口驱动TFT彩屏的设计方案

    本文提出了一种能直接驱动数字液晶屏的设计方案,方案先介绍了TFT数字彩屏的工作原理,利用STM32处理器的FSMC接口设计的硬件电路和软件程序均能对显示控制芯片进行有效的控制。在实际应用中显示清晰流畅,并且CPU有...

    TFTLCD驱动

    硬件资源: 1,DS0(连接在PB5) 2,串口1(波特率:115200,PA9/PA10连接在板载USB转串口... 3,2.8/3.5/4.3/7寸TFTLCD模块(通过FSMC驱动,FSMC_NE4接LCD片选/A10接RS) 具有LCD的初始化操作,8080通信代码以及字符显示函数

    tft彩色液晶屏驱动芯片 ILI9488 详细说明书

    ILI9488 TFT LCD Single Chip Driver 320RGBx480 Resolution and 262K-color 支持spi 8bit,16bit rgb 4种接口。

    STM32F103 TFT LCD ST7735 测试程序,刷新快

    STM32F103C8T + SPI(模拟和硬SPI两种方式)+TFT LCD (ST7735芯片), 用IO模拟时序 会出现刷新慢的问题,改为硬件SPI 刷屏速度会快些

    C语言基于STM32的MQ系列实现的天然气泄露监测及报警源代码

    C语言基于STM32的MQ系列实现的天然气泄露监测及报警源代码 实验器材: 探索者STM32F4开发板 实验目的: 学习彩色TFTLCD显示屏的使用... 3,ALIENTEK 2.8/3.5/4.3/7寸TFTLCD模块(通过FSMC驱动,FSMC_NE4接LCD片选/A6接RS)

    串口空闲中断+DMA.zip

    串口3空闲中断+DMA接收不定长度的...1、FSMC为灵活的静态存储控制器,利用控制SRAM的原理控制TFTLCD,方便快捷 2、LCD初始化程序中有厂商提供的根据不同的驱动芯片所对应的初始化序列,不用理会 3、一帧最大传输30字节

    STM32F103ZET6单片机 FSMC-外扩SRAM实验例程源码.zip

    STM32F103ZET6单片机 FSMC-外扩SRAM实验例程源码 /外部内存测试(最大支持1M字节内存测试) void ExSRAM_Cap_Test(u16 x,u16 y) { u8 writeData = 0xf0, readData; u16 cap=0; u32 addr; addr = 1024; //从1KB...

    STM32F103 模拟IIC实验_STM32F103

    STM32F103模拟IIC实验.学习STM32模拟IIC的使用,驱动24C02实现EEPROM... 3,ALIENTEK 2.8/3.5/4.3/7寸TFTLCD模块(通过FSMC驱动,FSMC_NE4接LCD片选/A10接RS) 4,按键KEY0(PE4)/KEY1(PE3) 5,24C02(IIC连接在PB6/PB7上面)

    实验33 无线通信实验.rar

    3,ALIENTEK 2.8/3.5/4.3/7寸TFTLCD模块(通过FSMC驱动,FSMC_NE4接LCD片选/A10接RS) 4,KEY0按键(连接在PE4)/KEY1按键(连接在PE3) 5,NRF24L01模块(SPI2(PB13/PB14/PB15)/IRQ(PG6)/CS(PG7)/CE(PG8)). 实验现象: ...

Global site tag (gtag.js) - Google Analytics