战舰版里的TFT使用FSMC来显示数据,使用FSMC_A10控制RS端,
//使用NOR/SRAM的 Bank1.sector4,地址位HADDR[27,26]=11 A1作为数据命令区分线
//注意设置时STM32内部会右移一位对其! 111110=0X3E
#define LCD_BASE ((u32)(0x6C000000 | 0x000007FE))
#define LCD ((LCD_TypeDef *) LCD_BASE)
这个使用A10的地址偏移是0x000007FE,这个是怎么算的?
加入我使用A0呢,偏移又是多少
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
---------------------------------
是一个物理地址,如果你FSMC设置为16位的话,那么FSMC_A0至FSMC_A24都为0的时候,可以发送两个字节的数据,FSMC_A0为1的时候,就是另外两个字节的数据了,所以可以把LCD的RS连接在FSMC_A0上,如果你选择bank1的话,可以通过往地址0x68000000上写一个16位数据作为LCD的指令,往地址0x68000001上写一个16位数据为LCD的后续指令。
FSMC驱动I80协议的并口是很好用的,就是速度稍慢。
一周热门 更多>