#define GPM4CON (*(volatile unsigned int *)0x110002E0)//设置地址
#define GPM4DAT (*(volatile unsigned int *)0x110002E4)
#define setbit(x,y) x|=(1<<y) //将X的第Y位置1
#define clrbit(x,y) x&=~(1<<y) //将X的第Y位清0
#define setone(x) (~(x &= ~1))
void delay(volatile int d)
{
while (d--);
}
int main(void)
{
int i = 0;
GPM4CON = 0x1111; //设置地址的值
while(1)
{
setone(GPM4DAT);
GPM4DAT = 14;// setbitGPM4DAT , 0)
delay(10000000);
GPM4DAT = 13;
delay(10000000);
GPM4DAT =11;
delay(10000000);
GPM4DAT = 7;
delay(10000000);
}
return 0;
}
用汇编点灯
/* led (GPM4_0~3) on */
ldr r0, =0x110002E0
ldr r1, =0x00001111
str r1, [r0]
ldr r1, =0x0e
str r1, [r0, #0x04]