OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3813|回复: 15

关于FSMC驱动TFT的地址线问题,,,

[复制链接]

6

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2016-7-9
在线时间
20 小时
发表于 2016-7-9 10:49:59 | 显示全部楼层 |阅读模式
1金钱
如图,为什么直接向0X6C0007FE写数据就是代表RS=0,表示写命令呢??
1.png
2.png


最佳答案

查看完整内容[请看2#楼]

懂了,懂了,刚刚看了下关于地址线方面的资料,加上你的提示,明白了 这个图是开发板上定义的FSMC_A10的地址, 这个是我理解后改的,一样可以达到效果,只需要FSMC_A10这一位的值为0或1就行了,
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2016-7-9
在线时间
20 小时
 楼主| 发表于 2016-7-9 10:50:00 | 显示全部楼层
憨厚诚实大叔 发表于 2016-7-9 13:53
800不就是0b100,0000,0000,不就是对应A10到A0么

懂了,懂了,刚刚看了下关于地址线方D:\Else\Download\STM32\Q\3.wmf面的资料,加上你的提示,明白了 3.png
这个图是开发板上定义的FSMC_A10的地址,
4.png
这个是我理解后改的,一样可以达到效果,只需要FSMC_A10这一位的值为0或1就行了,
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-7-9 11:17:38 | 显示全部楼层
你先去看看FSMC的地址线,和FSMC怎样向外部不同的地址写数据
回复

使用道具 举报

6

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2016-7-9
在线时间
20 小时
 楼主| 发表于 2016-7-9 12:07:28 | 显示全部楼层
憨厚诚实大叔 发表于 2016-7-9 11:17
你先去看看FSMC的地址线,和FSMC怎样向外部不同的地址写数据

当处理16位数据时HADDR[24:0]对应FSMC_A[25:1],而我用的开发板是FSMC_A[10]接的TFT的RS端,当写命令时不是应该将RS=0么,这样不就是应该把FSMC_A[10]=0么?为什么是往FSMC_A[10]的地址写数据就是命令,向FSMC_A[10]+2地址写数据就是写RAM呢
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-7-9 12:57:08 | 显示全部楼层
往0x800这个地址写数据时,对应的地址线的电平是如何
往0x7fe这个地址写数据时,对应的地址线的电平是如何
回复

使用道具 举报

6

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2016-7-9
在线时间
20 小时
 楼主| 发表于 2016-7-9 13:41:03 | 显示全部楼层
憨厚诚实大叔 发表于 2016-7-9 12:57
往0x800这个地址写数据时,对应的地址线的电平是如何
往0x7fe这个地址写数据时,对应的地址线的电平是 ...

就是不清楚这往这地址写数据它的电平是怎么样的嘛,小白求详解
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-7-9 13:53:45 | 显示全部楼层
800不就是0b100,0000,0000,不就是对应A10到A0么
回复

使用道具 举报

69

主题

978

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3772
金钱
3772
注册时间
2015-4-26
在线时间
765 小时
发表于 2016-7-9 15:09:01 | 显示全部楼层
yz2816157676 发表于 2016-7-9 12:07
当处理16位数据时HADDR[24:0]对应FSMC_A[25:1],而我用的开发板是FSMC_A[10]接的TFT的RS端,当写命令时 ...

因为地址是右移一位对齐, 所以要 加2  你不懂估计是因为你觉得加1才对吧
我有故事,你有酒吗
回复

使用道具 举报

6

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2016-7-9
在线时间
20 小时
 楼主| 发表于 2016-7-9 15:34:06 | 显示全部楼层
来俩不甜的 发表于 2016-7-9 15:09
因为地址是右移一位对齐, 所以要 加2  你不懂估计是因为你觉得加1才对吧

这我写错了是HADDR[25:1]对应FSMC_A[24:0]
回复

使用道具 举报

6

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2016-7-9
在线时间
20 小时
 楼主| 发表于 2016-7-9 15:50:07 | 显示全部楼层
憨厚诚实大叔 发表于 2016-7-9 11:17
你先去看看FSMC的地址线,和FSMC怎样向外部不同的地址写数据

还有个问题,问下,就是为什么向FSMC_A10地址写数据后就表示写了对应的命令或数据呢,写数据或命令不是在RS=0/1的条件下,向D[15:0]写入么,而D[15:0]又连在FSMC_D[15:0]了,为什么不是向这写呢
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-7-9 16:06:33 | 显示全部楼层
他是把TFT当作外部SRAM处理,你先弄清楚STM32怎么通过FSMC先外部的SRAM不同地址写数据先
回复

使用道具 举报

6

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2016-7-9
在线时间
20 小时
 楼主| 发表于 2016-7-9 16:09:27 | 显示全部楼层
憨厚诚实大叔 发表于 2016-7-9 16:06
他是把TFT当作外部SRAM处理,你先弄清楚STM32怎么通过FSMC先外部的SRAM不同地址写数据先

这个我不清楚额,,你有这方面的资料么,
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-7-9 16:23:34 | 显示全部楼层
yz2816157676 发表于 2016-7-9 16:09
这个我不清楚额,,你有这方面的资料么,

不是有视频么。。。。。
回复

使用道具 举报

6

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2016-7-9
在线时间
20 小时
 楼主| 发表于 2016-7-9 16:36:39 | 显示全部楼层
憨厚诚实大叔 发表于 2016-7-9 16:23
不是有视频么。。。。。

原子的视频?好吧,没看,我找找
回复

使用道具 举报

1

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
75
金钱
75
注册时间
2015-2-27
在线时间
18 小时
发表于 2016-7-27 14:09:45 | 显示全部楼层
800不就是0b100,0000,0000,不就是对应A10到A0么这个不是400么?
回复

使用道具 举报

4

主题

25

帖子

0

精华

初级会员

Rank: 2

积分
85
金钱
85
注册时间
2013-6-23
在线时间
11 小时
发表于 2016-8-12 10:20:55 | 显示全部楼层
受教了  我也一直在想这个问题。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-9 07:21

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表