博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
S3C2440裸机程序开发点亮LED
阅读量:4974 次
发布时间:2019-06-12

本文共 853 字,大约阅读时间需要 2 分钟。

与学习单片机一样,学习arm裸机开发的第一个程序,点亮lED灯;

我们使用三星的S3C2440fl2440开发板做实验

电路图如下:

主要寄存器:

各寄存器详情:

程序流程:

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)); }

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/will1990/archive/2012/11/28/4951542.html

你可能感兴趣的文章
Codeforces 869E The Untended Antiquity
查看>>
boost 相关
查看>>
在Ubuntu Server下搭建LAMP环境
查看>>
Android开发详解之onTouch和onClick详解
查看>>
nodejs dateformat date-utils
查看>>
【sicily】卡片游戏
查看>>
日志系统:数据来源的思考
查看>>
第一次写代码总结
查看>>
[转帖] sparkdev 的 博客 systemd
查看>>
[cnbeta] 波音系列飞机价格。。。
查看>>
MSTSC 3389 端口修改
查看>>
Java数据类型的位数
查看>>
旁门左道通过JS与纯CSS实现显示隐藏层
查看>>
HDU 4313 Matrix(并查集)
查看>>
HDU 2546 饭卡(0-1背包)
查看>>
HDU 2426 Interesting Housing Problem(二分图最佳匹配)
查看>>
SpringMVC存取Session的两种方法
查看>>
通俗易懂之Tensorflow summary类 & 初识tensorboard
查看>>
python基础篇12-函数
查看>>
获取APP地图权限
查看>>