关于STM32F407算FSMC地址计算

2019-07-20 21:48发布

目前我调试TFT液晶驱动的时候,看到计算地址:
//使用NOR/SRAM的Bank1.sector4,地址位HADDR[27,26]=11,A6作为数据命令区分线
//注意设置时STM32内部会右移一位对其:111 1110 = 0x7E  
#define LCD_BASE        ((u32)(0x6C000000 | 0x0000007E))
#define LCD             ((LCD_TypeDef *) LCD_BASE)

目前在开发板是按照这个地址来驱动,如果//使用NOR/SRAM的Bank1.sector0,地址位HADDR[27,26]=00,
那么基地址0x60000000,假设A16作为数据命令区分线,那么数据位地址怎么算,是否对应的地址:
#define LCD_BASE        ((u32)(0x60000000 | 0x0001FFFE))
#define LCD             ((LCD_TypeDef *) LCD_BASE)

不知这样是否正确

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
xkwy
1楼-- · 2019-07-21 00:41
 精彩回答 2  元偷偷看……
xkwy
2楼-- · 2019-07-21 04:31
 精彩回答 2  元偷偷看……
aiq1210
3楼-- · 2019-07-21 09:16
xkwy 发表于 2016-6-5 17:00
贴一个我曾经写过的代码,你看看我是怎样计算的。。

你的计算方式我能理解按照这个算出来
# define NT35510_CMDBASS           0x60000000
# define NT35510_DATABASS         0x60020000
xkwy
4楼-- · 2019-07-21 14:16
aiq1210 发表于 2016-6-5 18:41
你的计算方式我能理解按照这个算出来
# define NT35510_CMDBASS           0x60000000
# define NT3551 ...

封装好之后,再改引脚的话只需修改一下宏就行了,不用再计算了,不会出错
aiq1210
5楼-- · 2019-07-21 16:18
xkwy 发表于 2016-6-5 21:49
封装好之后,再改引脚的话只需修改一下宏就行了,不用再计算了,不会出错

是的,目前看到正点原子开发板对TFT LCD液晶驱动地址例程不知道怎么算,不是很理解。
xuande
6楼-- · 2019-07-21 18:30
 精彩回答 2  元偷偷看……

一周热门 更多>