与学习单片机一样,学习arm裸机开发的第一个程序,点亮lED灯;
我们使用三星的S3C2440,fl2440开发板做实验
电路图如下:
主要寄存器:
各寄存器详情:
程序流程:
1.设置GPBCON对应位为output工作模式。
2.设置GPBUP对应位上拉电阻有效。
3.设置CPBDATA对应为有效电平。
附:
Led灯汇编代码
GPBCONREG EQU 0x56000010 GPBDATREG EQU 0x56000014 GPBUPREG EQU 0x56000018 AREA Init, CODE,READONLY ENTRY Start LDR R0, = GPBCONREG LDR R1,= 0xffddd7ff STR R1,[R0] LDR R0,=GPBUPREG LDR R1,=0xfffffa9f STR R1,[R0] LDR R0, = GPBDATREG LDR R1, =0xfffffa9f STR R1,[R0] END
C语言代码(启动代码略):
#include "def.h" #include "option.h" #include "2440addr.h" #include "2440lib.h" #include "2440slib.h" void main() { rGPBCON=(0x1<<5)+(0x1<<6)+(0x1<<8)+(0x1<<10); rGPBUP=0x0; rGPBDAT=(~(0x1<<5))\ &(~(0x1<<6))\ &(~(0x1<<8))\ &(~(0x1<<10)); }
版权声明:本文为博主原创文章,未经博主允许不得转载。