最近想做一个设备,准备使用STM32F103VET6单片机的FSMC功能,控制LCD和W5100S芯片。LCD的控制器是RA8835A芯片。W5100S准备用8bit并口模式。现在有几个问题想请“高手”赐教。
1、只使用FSMC的8位宽总线。该芯片的FSMC的总线地址线和数据线是能物理分开?不想使用数据和地址线复用!
2、想使用不同bank[x]的地址映射。这种方式是不是支持。
3、LCD接口拟连线的方案是:
FSMC_D[7:0],连8bit数据线;FSMC_NE1,连LCD片选CE:使用bank1地址
FSMC_NOE:连LCD片选RD
FSMC_NEW:连LCD片选WR
FSMC_A[0]:连LCD片选A0
4、W5100S接口拟连线的方案是:
FSMC_D[7:0],连8bit数据线;FSMC_NE2,连片选CSn:使用bank2地址
FSMC_NOE:连片选RDn
FSMC_NEW:连选WRn
FSMC_A[0:1]:连芯片地址片选A0~A1
5、除了使用的引脚外,其它的引脚如:FSMC_A[2:24]和FSMC_D[8:15],能不能当GPIO用来连接LED等设备?
肯请高手不惜赐教,尤其是做过的朋友!跪拜!
本帖最后由 bigbat 于 2019-1-4 16:24 编辑
最近想做一个设备,准备使用STM32F103VET6单片机的FSMC功能,控制LCD和W5100S芯片。LCD的控制器是RA8835A芯片。W5100S准备用8bit并口模式。现在有几个问题想请“高手”赐教。
1、只使用FSMC的8位宽总线。该芯片的FSMC的总线地址线和数据线是能物理分开?不想使用数据和地址线复用!
是分开的,没有复用
2、想使用不同bank[x]的地址映射。这种方式是不是支持。
不是所有的bank都支持
3、LCD接口拟连线的方案是:
FSMC_D[7:0],连8bit数据线;FSMC_NE1,连LCD片选CE:使用bank1地址
FSMC_NOE:连LCD片选RD
FSMC_NEW:连LCD片选WR
FSMC_A[0]:连LCD片选A0
恩
4、W5100S接口拟连线的方案是:
FSMC_D[7:0],连8bit数据线;FSMC_NE2,连片选CSn:使用bank2地址
FSMC_NOE:连片选RDn
FSMC_NEW:连选WRn
FSMC_A[0:1]:连芯片地址片选A0~A1
应可以
5、除了使用的引脚外,其它的引脚如:FSMC_A[2:24]和FSMC_D[8:15],能不能当GPIO用来连接LED等设备?
肯请高手不惜赐教,尤其是做过的朋友!跪拜!
可以,只是别在FSMC里初使化了就行
http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
谢谢,
@ddllxxrr
刚看了datasheet,STM32F103VET6这个封装的芯片只能是地址和数据复用的!需要,地址锁存器了!
http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
反正我用FSMC去驱动一个是RA8875一个FLASH并行的,就没加锁存,用片选分开的,好用。
http://shop34182318.taobao.com/
https://shop436095304.taobao.com/?spm=a230r.7195193.1997079397.37.69fe60dfT705yr
@ddllxxrr 标准总线中的地址怎么形成呀。标准8080总线周期时,地址和数据复用的,先形成地址信号,然后在生成数据信号,地址信号怎么形成呀!除非,你用GPIO模拟一个地址周期,或是使用非复用的芯片。如:144引脚的芯片。
顺便问一下,有没有其它公司有外部总线的芯片?管脚在64就可以了。如:51单片机也可以。
fsmc只是一个固定好地址的端口,所以不存在地址复用的问题
是地址线和数据线复用,也就是一个引脚,总线周期前半段输出地址信号,做为“地址线”,后半段输出数据,做“数据线”。这称为“复用”。stm32f103,一百脚的芯片数据和地址是复用的,所以需要锁存器。当然有些芯片内部包含锁存器,但是,需要锁存引脚。
本帖最后由 bigbat 于 2019-1-8 09:33 编辑
fsmc的结构就是一个端口,在固定的地址上打出数据,并不是存储器结构,没有地址线的问题.
stm32的fmc是用来扩展sram或dram,这个才是完整的存储器.
具体驱动lcd发送地址还是数据是由指令配合数据格式来实现的.