1

我试图通过这样的结构方法访问 stm32f103 MCU 中的寄存器数组:

typedef struct
{
volatile u32 MNVIC_IABR[3];

}MNVIC_IABR_T;

#define MNVIC_IABR  ((volatile MNVIC_IABR_T*) 0xE000E300)

但它给了我错误:

In file included from ../src/MNVIC_program.c:8:0:
../include/MNVIC_PRIVATE.h:58:21: error: expected identifier before '(' token
#define MNVIC_IABR  ((volatile MNVIC_IABR_T*) 0xE000E300)
                 ^

我发现了问题,它是指针的名称,它与最后一行中的寄存器名称相同,所以我进行了更改,它现在正在工作:

#define MNVIC_IABR_STRUCT  ((volatile MNVIC_IABR_T*) 0xE000E300)
4

0 回答 0