设置第32位时,我在代码中有编译器警告.代码有效,但这个警告让我很烦.
编译器是Keil C,处理器是32位ARM.代码如下
PINSEL0 |= PINSEL_AD15;
Run Code Online (Sandbox Code Playgroud)
其中PINSEL0是32位寄存器,定义为
#define PINSEL0 (*((volatile unsigned long *) 0xE002C000))
Run Code Online (Sandbox Code Playgroud)
并PINSEL_AD15定义如下:
#define PINSEL_AD15 ((1<<30)|(1<<31))
Run Code Online (Sandbox Code Playgroud)
我收到的警告信息是:整数运算结果超出范围