原创 家庭作业,裸奔第一个实验已成功,点亮LED

2008-10-31 11:07 3795 2 2 分类: MCU/ 嵌入式

先让板子上的两个LED点亮,另外两个熄灭,以便检查结果是否正确。


先用ADS建立两个文件,init.s和led.c


init.s内容如下


    AREA init,CODE,READONLY
      CODE32
      ENTRY
ResetEntry   
       IMPORT main
       LDR SP,=0x33ff4800
       bl main
   END


led.c内容如下:


#define rGPFCON (*(volatile unsigned *)0x56000050)
#define rGPFDAT (*(volatile unsigned *)0x56000054)
#define rLED1 (1<<4)
#define rLED2 (1<<5)
#define rLED3 (1<<6)
#define rLED4 (1<<7)
#define LED1ON rGPFDAT="rGPFDAT|rLED1"
#define LED2ON rGPFDAT="rGPFDAT|rLED2"
#define LED3ON rGPFDAT="rGPFDAT|rLED3"
#define LED4ON rGPFDAT="rGPFDAT|rLED4"
#define LED1CLR rGPFDAT="rGPFDAT"&(~rLED1)
#define LED2CLR rGPFDAT="rGPFDAT"&(~rLED2)
#define LED3CLR rGPFDAT="rGPFDAT"&(~rLED3)
#define LED4CLR rGPFDAT="rGPFDAT"&(~rLED4)


void main()
{rGPFCON=(rGPFCON|0x00ff)|0x5500;
while(1)
{LED1ON;
LED2ON;
LED3CLR;
LED4CLR;
}


}


设置好ADS(RO=0x0不知道对不对,反正实验成功了) 然后编译生成bin文件 用sjf2410烧写flash,复位电路板,观察实验现象:两个灯亮两个灯灭。

文章评论0条评论)

登录后参与讨论
我要评论
0
2
关闭 站长推荐上一条 /2 下一条