#define LCD ((LCD_TypeDef *) LCD_BASE) 这是强制类型转换吗?

2019-07-21 05:11发布

typedef struct { u16 LCD_REG; u16 LCD_RAM; } LCD_TypeDef;      #define LCD_BASE        ((u32)(0x6C000000 | 0x000007FE)) #define LCD             ((LCD_TypeDef *) LCD_BASE)  

请问下红 {MOD}标示:是将LCD_BASE强制类型转换后再定义给LCD 吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
15条回答
小Y
2019-07-21 16:12
回复【2楼】菜鸟鸡哥:
---------------------------------
你好,那么这样的话对应过去,LCD_REG 和LCD_RAM各是多少?C语言基础有点差劲~这是我的定义:16位的。我用的是A1---PF1     NE4
#define LCD_BASE        ((uint32_t)(0x60000002 | 0x0C000000)) #define LCD             ((LCD_TypeDef *) LCD_BASE) 按我的计算的话应该是LCD_RAM =0x6c00 0004,         LCD_RAM= 0x6c000000+2^n*2   数据长度是16bit
不知道我这样的计算对不对!
不管对不对吧, ((uint32_t)(0x60000002 | 0x0C000000))这样的话对应过去是多少?怎么对应?

一周热门 更多>