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

网友投稿 289 2022-10-31

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

0 引言

1 STM32 简介

2 TFT彩屏模块工作原理

本设计采用3.2 寸分辨率为320×240 的液晶屏,并使用ILI9341芯片控制液晶屏。

3 总体方案的硬件设计

由于图片的数据太大需要外接FLASH存储器用来存储图片数据,电路如图2 所示。

本设计使用的AT25DF041A芯片是一个串行接口的闪存设备,灵活的架构AT25DF041A擦掉、消除粒度小至4 KB,使它非常适合数据存储,不再需要额外数据存储E2PROM设备。

4 软件设计

4.1 FSMC简介

FSMC是灵活静态存储控制器。STM32芯片可利用FSMC 控制NOR FLASH、PSRAM 和NAND FLASH 存储芯片[3]。这里,只使用FSMC 的NOR/PSRAM 模式控制LCD,所以只需分析NOR FLASH 控制信号线部分。

STM32 寻址空间的地址映射中的0×60000000 ~0x6FFFFFFF 是分配给PSRAM、NOR FLASH 这类可直接寻址的器件。当外部接了NOR FLASH,并且FSMC外设被设置为正常工作,当向0×60000000 地址写入数据0xFFFF,FSMC会自动把数据转化成各信号线上相应的电平信号写入数据。

4.2 用FSMC模拟8080时序

FSMC写NOR 时序跟8080接口的时序是十分相似的,对它们的信号线对比如表1所示。

为了模拟出8080 时序,把FSMC 地址线中的A0 连接8080的DCX,当A0为低电平时,数据线D[15:0]的信号会被理解为ILI9341命令,若A0为高电平时,传输的信号则会被理解为数据。所以传送数据时只需向地址为0x6xxxxxx1,0x6xxxxxx3,0x6xxxxxx5 这些奇数地址写入数据,此时地址线A0(D/CX)会为高电平;需要发送命令时向0x6xxxxxx0,0x6xxxxxx2,0x6xxxxxx4 这些偶数地址写入数据时,地址线A0(D/CX)会为低电平,这个数据会被理解为命令。在代码中利用指针变量,向不同的地址单元写入数据,就能够由 FSMC 模拟出8080 接口向ILI9341写入控制命令或GRAM的数据了。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Docker容器跨主机多网段通信解决方案
下一篇:VPGAME 的 Kubernetes 迁移实践
相关文章

 发表评论

暂时没有评论,来抢沙发吧~