结构体变量赋值

2019-08-21 13:16发布

本帖最后由 夜乄歌 于 2017-4-9 14:34 编辑

试着自己重映射定义结构体但是给结构体赋值的时候总是出现数据类型,之前我记得在那个帖子看到过的结果找了半天没找到,有没有之前遇到过类型情况的,分享下解决方法呗[mw_shl_code=c,true]#define PERIRH_BASE                        ((unsigned long)0x40000000)
#define APB1PERIRH_BASE                 PERIRH_BASE
#define APB2PERIRH_BASE                (PERIRH_BASE + 0x10000)
#define AHBPERIRH_BASE                (PERIRH_BASE + 0x20000)

#define RCC_BASE                        (AHBPERIRH_BASE + 0x1000)
#define GPIOE_BASE                         (APB2PERIRH_BASE + 0x1800)


#define        RCC_APB2ENR                        *(unsigned int *)(RCC_BASE + 0x18)
        
#define GPIOE_CRL                        *(unsigned int *)(GPIOE_BASE + 0x00)
#define GPIOE_CRH                        *(unsigned int *)(GPIOE_BASE + 0x04)        
#define GPIOE_ODR                        *(unsigned int *)(GPIOE_BASE + 0x0c)
#define GPIOE_BSRR                        *(unsigned int *)(GPIOE_BASE + 0x10)
#define GPIOE_BRR                    *(unsigned int *)(GPIOE_BASE + 0x14)
   

typedef unsigned int uint32_t;
typedef unsigned short uint16_t;

typedef struct                                //定义一个GPIO_Typedef类型的结构体变量。
{
        uint32_t CRL;
        uint32_t CRH;
        uint32_t IDR;
        uint32_t ODR;
        uint32_t BSRR;
        uint32_t BRR;
        uint32_t LCKR;
        
}GPIO_TypeDef;


# define GPIOE  ((GPIO_TypeDef*)GPIOE_BASE)
[/mw_shl_code]这个是stm32f10x.h里面的代码
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。