FSMC位宽由16位变为8位地址设置求解

2019-12-12 18:23发布

用STM32F103VCT6,原来用16位的FSMC用得好好的,但为了省一点IO,设为8位却麻烦了。
原来的16位配置如下:
#define Bank1_LCD_D    ((u32)(0x60020000))    //Disp Data ADDR
#define Bank1_LCD_C    ((u32)(0x60000000))           //Disp Reg ADDR
变为8位后,查资料好像右移一位就行(当然这个地方FSMC_MemoryDataWidth_8b也相应设置为8位)
#define Bank1_LCD_D    ((u32)(0x60010000))    //Disp Data ADDR
#define Bank1_LCD_C    ((u32)(0x60000000))           //Disp Reg ADDR
现在LCD只是初始化成功,但是写数据什么的还是不行,应该是上面的基址什么的还有问题,请问那位坛友遇到过?
用的是Bank1,RS接A16
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。