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

STM32F103VCT6 -- FSMC模式驱动TFTLCD

[复制链接]
TLLED 发布时间:2018-10-11 15:23
    淘了一个终端设备,没有资料,使用的主芯片是STM32F103VCT6,试着驱动TFT-LCD。    9.jpg
7 [, ]* h3 A; _, F1 C    10.jpg
' m- }1 |! W( t* S' D; }; r) x
    1、首先,需要找到SWD接口,好查找,只需要找出SWDIO和SWCLK两个信号线。连上J-link仿真器,检测芯片,查找到芯片。
8 w3 L' ~, b  \9 P. J; p, `    1.png : V: D/ p; Y/ Q
    2.png
7 h' @% M9 ~& ~. q) v    2、试着猜测TFT-LCD驱动方式,STM32F103VCT6 LFQP100封装的芯片,这个芯片内部带有FSMC,应该会选用FSMC驱动方式。
1 a0 M' s1 \  \. [; w2 u9 g   芯片资料中有关FSMC引脚:! G( S" v8 Q; b0 h5 A$ D
    3.png
+ r7 d# L: U5 R3 _3 @    4.png 8 \2 g/ g( m. w) I
       有关引脚就这么多,D0~D15,NWE,NOE,这个芯片是公用的,主要是NE?和A?这两个芯片。
; q2 z8 R' q# r! a5 @9 k6 X    3、驱动程序。
% t9 _) n* e, |9 Z/ ^        找到之前开发板资料,STM32驱动TFT的例程,找相关的驱动程序并修改。STM32F103VCT6这个型号只有一个NE1,所以这个信号确定了,接下来就是找出使用的地址线是A?,地址线确定了TFT分配的地址。
+ r  u. A+ E6 U9 ]3 x( M9 ^1 @& p    5.png
& k+ y3 w# f/ D+ k5 C        资料中,NE1对应的地址是0x6000 0000。TFT-LCD的基地址是从这里开始的,接下来就要找出A对应的读写地址。STM32F103VCT6的地址是从A16~A23,先从A16开始。: y# L6 {+ N, n4 \# S8 _8 S
         6.png
( i$ \6 c  J) f+ J# W0 d5 ]         最后确定LCD的地址:
3 B3 h1 C/ H8 e+ G9 T$ e       7.png 4 K5 c0 I& A9 [, f4 u  a$ _# H; J1 g1 D
    4、结果:
7 n0 M, N1 l3 x) ^% [         测试还比较幸运,试了A16地址,TFT就点亮啦。2 N  S) U4 e, s# ~* o! {
         12.jpg ) {' j* z" T& I( y* e- Q' @
    5、程序代码:4 \, w+ K( h- d. @- |# Y
         实验13 TFTLCD显示实验.rar (334.85 KB, 下载次数: 226)
8.jpg

评分

参与人数 1 ST金币 +1 收起 理由
向西走 + 1 很给力!有借鉴价值

查看全部评分

收藏 4 评论26 发布时间:2018-10-11 15:23

举报

26个回答
Leo_W 回答时间:2018-10-11 20:45:04
本帖最后由 Leo_Www 于 2018-10-11 20:46 编辑
0 q, P" x: ~* a& K: v, k
TLLED 发表于 2018-10-11 20:09. C, b; ^7 M, _9 y! T; v
估计是地址信号线A?,这个线决定显示屏数据地址,也有可能是显示芯片型号不在这个程序里面列出的这些。 ...

; W1 j2 e& Y- u你的是f103xC系列,我的是f103xZ系列。地址线是一样的吧(地址线的图上面有)  屏幕型号是ILI9320的
TLLED 回答时间:2018-10-11 20:09:03
Leo_Www 发表于 2018-10-11 19:56
) h5 o  _+ @/ r2 S. g我使用的是stm32f103zet6,屏幕的引脚与你的完全一致,下载附件后屏幕却始终是白色,请问会不会是芯片型号 ...

' \5 F5 X* t7 H9 q& e$ y估计是地址信号线A?,这个线决定显示屏数据地址,也有可能是显示芯片型号不在这个程序里面列出的这些。
Leo_W 回答时间:2018-10-12 16:07:15
兄弟,找到原因了,你的程序没有问题。其实一开始屏幕就是坏的!!!我查了好多原因,以为是复位的问题,于是用软件复位(结果是错的)。今天换了块屏幕,终于是好了。地址线确实要以0x60000000开头
AI++ 回答时间:2018-10-11 15:40:11
沙发,, E" |0 J% ]" k# {/ y
不错哦
epochal 回答时间:2018-10-11 18:20:24
谢谢分享!
Leo_W 回答时间:2018-10-11 19:54:57
请问如果RST未连接至开发板复位端,该如何操作?
Leo_W 回答时间:2018-10-11 19:56:52
我使用的是stm32f103zet6,屏幕的引脚与你的完全一致,下载附件后屏幕却始终是白色,请问会不会是芯片型号的问题
TLLED 回答时间:2018-10-11 20:06:18
Leo_Www 发表于 2018-10-11 19:54
8 l0 [& Z2 E2 z  r, J请问如果RST未连接至开发板复位端,该如何操作?

" z; I9 v1 z1 o& p/ X& f我没有去测量RST引脚信号,可能那个引脚默认是高电平,不复位也可以使用
TLLED 回答时间:2018-10-11 21:36:45
Leo_Www 发表于 2018-10-11 20:45
4 n* F7 i: y# H+ a! o8 L4 H你的是f103xC系列,我的是f103xZ系列。地址线是一样的吧(地址线的图上面有)  屏幕型号是ILI9320的 ...

* g$ o1 F) I5 S9 Z你用的地址线是A16?还是A?
Leo_W 回答时间:2018-10-11 22:03:11
TLLED 发表于 2018-10-11 21:36
4 O& R2 I! K; C2 j6 @2 R! _! m你用的地址线是A16?还是A?
& L1 [1 o# V" V' `8 V; R
A16.。。。
Leo_W 回答时间:2018-10-11 22:17:12
大概是这样子的! r8 u8 g# R3 [% c& [0 _

I/O配置

I/O配置

FSMC配置

FSMC配置

FSMC地址线

FSMC地址线

TFT屏幕引脚

TFT屏幕引脚
一木320 回答时间:2018-10-11 22:18:24
感谢分享。
TLLED 回答时间:2018-10-12 06:32:21
Leo_Www 发表于 2018-10-11 22:17
5 X% g" \. A8 W( `3 `2 G; r大概是这样子的
/ R3 m/ Z9 b7 O7 x7 M
22.png
& [) W; t/ M$ X# \& e) N 1.png
0 }( e9 Q  g- f& b
TLLED 回答时间:2018-10-12 06:33:31
, v8 j$ c+ ]" C( {. h9 ]4 u
如果是NE1和A16,LCD地址按照图片上的地址再试试
12下一页
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版