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

STM32F103VCT6 -- FSMC模式驱动TFTLCD

[复制链接]
TLLED 发布时间:2018-10-11 15:23
    淘了一个终端设备,没有资料,使用的主芯片是STM32F103VCT6,试着驱动TFT-LCD。    9.jpg ! z- |* z/ N, Z" x
    10.jpg
- F. b/ p0 a* [( I' q  l% `
    1、首先,需要找到SWD接口,好查找,只需要找出SWDIO和SWCLK两个信号线。连上J-link仿真器,检测芯片,查找到芯片。
0 }( e5 B' C: b: k; B3 P9 w" r( `    1.png
, Z; V2 H$ [9 T- `0 ~% B9 M- b    2.png ! I7 M  f0 d( l6 L
    2、试着猜测TFT-LCD驱动方式,STM32F103VCT6 LFQP100封装的芯片,这个芯片内部带有FSMC,应该会选用FSMC驱动方式。
. m7 b1 f9 d' k4 t# h  n   芯片资料中有关FSMC引脚:+ R- `$ t5 U6 O+ i' H0 V) M
    3.png
3 x, G. L7 ]7 x% q8 L- ^6 T    4.png 4 Q" p% g3 Z1 Q; b
       有关引脚就这么多,D0~D15,NWE,NOE,这个芯片是公用的,主要是NE?和A?这两个芯片。
: Q# R$ x! D" C2 z4 l. F0 n+ `    3、驱动程序。  X: L9 e! ]6 {5 F
        找到之前开发板资料,STM32驱动TFT的例程,找相关的驱动程序并修改。STM32F103VCT6这个型号只有一个NE1,所以这个信号确定了,接下来就是找出使用的地址线是A?,地址线确定了TFT分配的地址。& s0 y' A, o+ Y* h1 O. @
    5.png
; _* }& F9 O8 m8 w, w        资料中,NE1对应的地址是0x6000 0000。TFT-LCD的基地址是从这里开始的,接下来就要找出A对应的读写地址。STM32F103VCT6的地址是从A16~A23,先从A16开始。
9 {9 l6 q* C* n: R2 m9 X         6.png
0 S, Q9 W5 ?* m# c% _         最后确定LCD的地址:
/ d& I7 g% ?; C& ?7 k       7.png
& {* F; R( T( `" i+ d2 y& U/ ^    4、结果:
( u6 o5 f* x' y: l( r         测试还比较幸运,试了A16地址,TFT就点亮啦。5 N+ d2 q% Q) T5 ?" }2 u4 B
         12.jpg 4 E- P# r7 D. O
    5、程序代码:- K6 d( c$ X" z4 r
         实验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 编辑 ' n9 {* z6 T7 y# v
TLLED 发表于 2018-10-11 20:097 m8 O! A& v4 @2 O/ @( N
估计是地址信号线A?,这个线决定显示屏数据地址,也有可能是显示芯片型号不在这个程序里面列出的这些。 ...

1 N! D# _0 i% e2 }9 _" j. w& M* x3 ~你的是f103xC系列,我的是f103xZ系列。地址线是一样的吧(地址线的图上面有)  屏幕型号是ILI9320的
TLLED 回答时间:2018-10-11 20:09:03
Leo_Www 发表于 2018-10-11 19:56) O- m# Z0 Y% v
我使用的是stm32f103zet6,屏幕的引脚与你的完全一致,下载附件后屏幕却始终是白色,请问会不会是芯片型号 ...
4 ^8 D6 Y$ C3 f7 {" V" c9 [( ]
估计是地址信号线A?,这个线决定显示屏数据地址,也有可能是显示芯片型号不在这个程序里面列出的这些。
Leo_W 回答时间:2018-10-12 16:07:15
兄弟,找到原因了,你的程序没有问题。其实一开始屏幕就是坏的!!!我查了好多原因,以为是复位的问题,于是用软件复位(结果是错的)。今天换了块屏幕,终于是好了。地址线确实要以0x60000000开头
AI++ 回答时间:2018-10-11 15:40:11
沙发,, d2 c: c7 Q# |  ?) S, |
不错哦
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' r. J) ~- e6 E
请问如果RST未连接至开发板复位端,该如何操作?
( r" ]/ @+ K0 ^: x) D. q
我没有去测量RST引脚信号,可能那个引脚默认是高电平,不复位也可以使用
TLLED 回答时间:2018-10-11 21:36:45
Leo_Www 发表于 2018-10-11 20:45/ e6 W. V  ]0 g
你的是f103xC系列,我的是f103xZ系列。地址线是一样的吧(地址线的图上面有)  屏幕型号是ILI9320的 ...
; S$ s- |9 w5 r$ Y; S' Q
你用的地址线是A16?还是A?
Leo_W 回答时间:2018-10-11 22:03:11
TLLED 发表于 2018-10-11 21:366 P; p: H$ P) w9 E
你用的地址线是A16?还是A?

# d6 p& n. v1 _9 [# a2 F" a, _9 I  EA16.。。。
Leo_W 回答时间:2018-10-11 22:17:12
大概是这样子的
: n+ e0 K! B/ C

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+ z" t2 f( R+ F- V1 m5 t& Y
大概是这样子的
7 A* k' ~. j& U6 r0 r9 o8 a6 J
22.png 0 t' j; ~8 L& Z6 `3 k/ R
1.png
" W4 q3 \: v: k% m1 X" p: B
TLLED 回答时间:2018-10-12 06:33:31

6 a1 C$ Q% Q0 H如果是NE1和A16,LCD地址按照图片上的地址再试试
12下一页
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版