你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【经验分享】STM32CubeMX之FMC驱动TFT-LCD屏

[复制链接]
STMCU小助手 发布时间:2022-3-7 23:36
一、CubeMX配置- _' C& W# P0 c) S4 J
开发板上TFT-LCD接口如图:
9 D& p4 h, w5 v9 V" J. |: Q
( M- A. @9 V, t- v# h7 O K8AX]KE_3RR5(NF%(V8AN}O.png " i$ x, w0 B  ?2 a3 u% v

" L" d! h! o4 yLCD原理图如下:5 Z* ?! R8 s) h1 N
: H/ v- S% v) M/ b6 N- }
RXC%UFYWU(`1TAJB2)`BK)B.png 5 E" I  F4 h* s
6 I9 `! O/ S. e, @1 m
6 R) I3 z# D+ ?, t
引脚说明如下:
) X; ?* A$ h) S5 c  P  u) {# @●LCD D0-D15:使用了16bit:FMC D0 - FMC D15;3 w. ?, |" q; l; {, h! ~
●LCD_RS:使用FMC A18来控制向LCD写入数据还是命令(0-命令,1-数据);
: M. E1 m& {( W1 ^! l- ]% \2 ?●LCD_BL:背光控制,对应PB5;
7 C$ c1 Q$ g+ M: T●LCD_CS:LCD片选信号,对应PD7,FMC_NE1;+ V  I. q' t% f( J% S+ |
●LCD_WR :LCD写使能,对应PD5,FMC_NWE;* a/ b, \4 W4 j' R+ ?
●LCD_RD:LCD读使能,对应PD4,FMC_NOE;& u; A! T2 {2 a8 @% n
●RESET:LCD复位信号,直接与单片机复位信号接在一起;
; C4 `. E1 A' Z& M& a
+ t5 {# y/ V8 M# Q3 ~8 M, @8 C参数设置如下:
4 O- _$ s# U' n$ A& w  N' {, t9 i: s6 n: E9 O
J226~4LUWV@$]HA9A5$EY{4.png 6 E& `. s1 Y# u5 ?5 F: O2 Z, B$ P
, y$ H" U2 g8 T3 ~
二、参数设置讲解
: f; |$ T6 I! j6 `, u, b1、查看参数MCU屏幕控制芯片手册
7 T. }* N: @! _$ R

+ ?3 P) ^7 {3 e, x* u" r' G- Z PVA3BW10SHP~UO}D@N2XHE4.png + e. `$ v: u. I* L% j  c. H

" X" N1 n% E" L' H2、填写对应参数
$ Q8 Q( P9 g; M时序参数都是以HCLK的周期为单位的,在本文中HCLK=240Mhz,所以一个周期为4.17ns。其中主要的时序参数配置方法如下。0 x, Z6 F: Y! e4 z- x
4 Z4 T; h, h1 |& B: x% G3 p
读时序配置& J- n/ t" p( S5 D

1 r( F+ a5 a& \! W+ W 8GO$%0%IQ%[JPKNO0ATCN.png
# z" |4 N3 M) l% Z
- `7 W, G0 G" G5 T① 地址建立时间:Address setup time(ADDSET)* r0 v4 v" t/ [! _; X: q* Y
' h" S6 l0 u; ]
该值必须是0~15个HCLK。从表中可以看出,NT35310控制器要求读的时候最小为10ns,,所以设为3即可,3x4.17=12.51ns。
3 {- S; x; Q' V7 D! ^% G" k# o9 [0 i' d9 p7 g$ H. G7 b5 D# {. L" V
② 数据持续时间:Data setup time(DATASET)* y8 _. O% A5 K

$ j2 t- z0 d/ m; _3 f该值必须是0~255个HCLK,从图中可以看出,NT35310控制器要求的数据建立时间最小为10ns,理论上设置为3即可,但因为读时序较慢这里设置为7个HCLK,设置为5以下可能就会出现显示异常的现象。
& B7 ~4 c6 u+ V8 U- L/ w: ~! B5 \( ]
③此值必须0~15。我们这里就取默认最大的15即可
4 m6 I8 ^0 F% ^6 z  G
, I' n6 b2 x$ c+ R- A! f④默认A模式即可。模式A时序模型的优势在于:支持独立的读写时序控制。这一点对于控制TFT-LCD来说,非常符合。因为TFT-LCD在读的时候,一般比较慢,而在写入的时候一般比较快
" R* L! D! b$ e' V  v' g9 D& I" k$ G2 _0 N  }
写时序配置  n2 X* r: Z- r

9 u: W) F2 A2 l9 n/ i' Y 2YU3E1]P{NW3UUYV3$TPHXA.png
8 H3 S" q8 r' U+ u4 X/ c; M# X/ |2 y+ L" n1 s( k
① 地址建立时间:Address setup time(ADDSET)
5 e) h( a( |, N: a; W
4 [, U% c+ k2 {, k! _该值必须是0~15个HCLK。从表中可以看出,NT35310控制器要求写的时候最小为0ns,,所以这里设置为0。" X+ f0 U; U8 m

: ^7 _/ s1 f" O, j2 Q; ^1 c% k1 d② 数据持续时间:Data setup time(DATASET)) ~! P  d. K+ ^
& m4 F8 c# [" u- h
该值必须是0~255个HCLK,从图中可以看出,NT35310控制器要求的数据建立时间最小为10ns,因为写时序较快这里设置为4即可。" Q1 ~; R8 o2 |0 _- d* F( w% ~

& Z" I7 Z, G5 L5 @③默认15即可5 s8 d) a. t* Y; a7 B/ k$ e9 Z

5 v9 E2 p, F' X" T) w" X9 o④默认A模式即可
7 F( ~* \5 e6 v& R6 ?" ]
! k0 {8 U8 K8 T" ^上述步骤配置完成后就可以在工程中添加你的LCD驱动程序。1 P+ D1 d$ r3 Q6 ^' \
+ }6 ?- s2 k( ]+ K8 e
WX}7NLRU(OI7N5QNB1AVYOY.png ' B0 v& m: g2 X7 a- o) Z5 s
, s/ i. e# C+ G7 c
如果程序和MX的配置都没问题显示还不正常那就先考虑读时序里的data setup time 时间拉长。
8 U" U, G! G# ^$ P5 q+ h! c* K7 z% U" |: ^2 I

1 M5 t. D6 u7 N6 c) c, O8 `
收藏 评论0 发布时间:2022-3-7 23:36

举报

0个回答

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版