前言

TFT-LCD 即薄膜晶体管液晶显示器。其英文全称为: Thin Film Transistor-Liquid Crystal Display。 TFT-LCD 与无源 TN-LCD、 STN-LCD 的简单矩阵不同,它在液晶显示屏的每一个象素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。 TFT-LCD 也被叫做真彩液晶显示器。

本节我们将通过 STM32F4的 FSMC接口来控制 TFTLCD的显示,关于控制屏的具体命令,及相关特性,请参看屏幕控制芯片说明书。好了费话不多说,下面开始我们的FSMC接口控制LCD屏的这验。

示例详解

基于硬件平台: 正点源子的stm32f4 探索者开发板,MCU 的型号是 STM32F4ZET6, 使用stm32cubemx 工具自动产生的配置工程,使用KEIL5编译代码。本示例所用的开发板及部分原理图:

  1. 关于CUBEMX工具及KEIL工具的操作将不再细讲,如果还有不熟悉的可以查看之前的教程文档。下面直接介绍工程配置:
  1. 系统时钟树

  1. 串口配置(用于程序调试)

  1. RCC配置

  1. SYS配置

  1. FSMC接口配置(对应可用于SRAM的模块有4个,这里我们用第一个)

详细参数配置如下(需根据自已的实际电路来定)

  1. 引脚配置,按原理图来

PB15用于LED背光驱动:

  1. 堆栈配置(也可保持默认):

  1. 工程代码

    1. 在工程中加入事先准备好的lcd.c , lcd.h, font.h 三个文件(这三个文件是在正点原子的探场索者开发板官方LCD例程文件中经过少量修改得而来),.h文件放在Inc文件夹中即可:

  1. 在main.c 中main函数中 USER CODE BEGIN Includes ,USER CODE 0 、 USER CODE 2、USER CODE 4 区域加入如下图所示代码:

  1. 编译工程,烧录程序,成功点亮LCD并控制显示:

通过以上的结果可知本次的FSMC LCD读写操作实验成功!

对于本实验,LCD的操作,FSMC接口时序设置为:

经过实验发现,对于本实验的实验硬件平台,用下面的参数也是可以的:

OK,本期实验完成!下期见!同时如果大家有什么疑问或是有想了解的其它内容,也欢迎大家留言!!最后喜欢这个公众号的同学们记得加关注了,会有不定期技术干货推出!!

文中源码资料下载,在公众号里给十三发消息:

下载|STM32基础系列教程44

关注十三公众号

STM32 基础系列教程 44 - FSMC_LCD相关推荐

  1. STM32 基础系列教程 50 – MbedTls

    前言 mbed TLS(以前称为PolarSSL)是TLS和SSL协议的实现,并且需要相应的加密算法和支持代码.这是双重许可与Apache许可证 2.0版(与GPLv2许可也可).网站上指出,mbed ...

  2. STM32 基础系列教程 49 – Jansson

    前言 JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全 ...

  3. STM32 基础系列教程 48 – CJSON

    前言 JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的一个子集,采用完全 ...

  4. STM32 基础系列教程 47 - MD5

    前言 MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信 ...

  5. STM32 基础系列教程 46 – RNG

    前言 随机数发生器(RNG)是一个以连续模拟噪声为基础的随机数发生器,在主机读数时提供一个 32 位的随机数.STM32F407自带RNG ,本节将给大演示STM32F4系列MCU中的RNG的使用.用 ...

  6. STM32 基础系列教程 45 - FSMC_LCD_Touch

    前言 上一节我们完成了用 STM32F4的 FSMC接口来控制 TFTLCD的显示的操作,其实正点原子的探索者F4开发板带的屏幕支持触摸操作,笔者用的是4.3寸的电容触摸屏,本节我们继续实验,来完成基 ...

  7. STM32 基础系列教程 43 – SRAM

    前言 STM32F407ZGT6 自带了 192K 字节的 SRAM,对一般应用来说,已经足够了,不过在一些对内存要求高的场合, 比如跑算法或者跑 GUI 等,自带的这些内存就不够用了.比如跑算法或者 ...

  8. STM32 基础系列教程 42 - SDMMC+Fatfs

    前言 本节我们将基于42讲 "STM32 基础系列教程 41 - SDMMC" 的基础来实现基于SD卡文件系统的文件操作. 示例详解 基于硬件平台: 正点源子的stm32f4 探索 ...

  9. STM32 基础系列教程 41 – SDMMC

    前言 SDIO(Secure Digital Input and Output) 安全数字输入输出接口,它支持多种类型的MMC卡,如SD卡,SDIO卡,MMC卡等.STM32 的SD/SDIO MMC ...

最新文章

  1. 软件包管理 之 Linux软件安装之RPM的安装技巧
  2. 认识网页:html + css + JavaScript
  3. org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 60
  4. 分享预告:「数据安全问题」+「 股权与期权」
  5. 在reader中勾选pdf复选框_绝对可勾选的在WORD 2003中加入复选框的方法
  6. Android添加垂直滚动scrollview
  7. ios 启用 证书_如何在iOS 10中启用就寝提醒,轻柔的唤醒和睡眠跟踪
  8. OkHttp自定义重试次数
  9. vue的watch监听
  10. python 单链表是否有回路_第5章 第1节 链表
  11. myeclipse 项目改名404
  12. mysql笔试_mysql笔试题
  13. 计算机视觉CV中RANSAC算法的学习笔记~
  14. linux获取系统启动时间
  15. 场内玩家追赶,场外玩家乐此不疲,场内场外谁主沉浮?
  16. 公众号知道我浏览他吗_浏览微信公众号会有记录吗?我们应该如何寻找记录?公众号浏览记录怎么查看?...
  17. wpf之pdf的显示
  18. 虚拟搭建局域网模拟器_如何建立虚拟局域网
  19. html5 游戏ui设计,7款手机游戏UI界面设计欣赏
  20. 小灰,你出书花了多少钱?

热门文章

  1. 利用ASP.netCore自带DI(DependencyInjection)实现批量依赖注入
  2. cv2.putText 文字换行('\n')无法解析换行
  3. 毕加索发布轻量化转化引擎及BIMSOP协作云平台
  4. 远程连接linux服务器mysql
  5. linux 内核线程与普通进程的区别
  6. 黑马程序员-4 String类和StringBuffer类
  7. Accent-Insensitive, Accent Sensitive, a ã, e é 模糊查询
  8. UA OPTI512R 傅立叶光学导论14 Wiener-Khinchine定理,Rayleigh定理与矩定理
  9. VC++ 剪贴板编程
  10. C#字符串截取学习总结