FSMC对应地址线A0-A24【A1-A25】 是如何定义的 原子哥战舰历程 用的是A10 我想那个结构体 以及LCD_BASE不太理解

2019-07-20 23:20发布

//LCD地址结构体
typedef struct
{
 u16 LCD_REG;
 u16 LCD_RAM;
} LCD_TypeDef;
//使用NOR/SRAM的 Bank1.sector4,地址位HADDR[27,26]=11 A10作为数据命令区分线
//注意设置时STM32内部会右移一位对其! 111110=0X3E      
#define LCD_BASE        ((u32)(0x6C000000 | 0x000007FE))   // 这个部分没有理解透 资料没找到
#define LCD             ((LCD_TypeDef *) LCD_BASE)
////////////////////////////////////////////////////////////////////////////////// 
问题1:每一根地址线 对应的空间是多大 问题2:数据地址和寄存器地址如何定义的
问题3:如果换成 NE1  A16 则是如何定义LCD_BASE 呢

  原子哥 何在啊 求指导
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
15条回答
闷鱼
2019-07-20 23:46
条件:CS->BANK1/NE1  RS->A16  16位数据模式  

NE1 0x600000000   
NE2 0x640000000   
NE3 0x680000000   
NE4 0x6C0000000  

根据RS接的地址线计算地址:  
16位模式:add=2^16*2=20000(h)  

定义如下:  

typedef struct    
{    
  u16 LCD_REG;    
  u16 LCD_RAM;    
} LCD_TypeDef;    

#define LCD_BASE    ((uint32_t)(0x6001FFFE))    
#define LCD         ((LCD_TypeDef *) LCD_BASE)

一周热门 更多>