mini2440(2) LED灯裸机硬件控制程序
来源:互联网 发布:喀秋莎软件的操作介绍 编辑:程序博客网 时间:2024/04/27 14:57
查找mini2440的原理图,找到LED部分的原理图:
然后查找nLED_1到nLED_4分别连接的S3C2440的引脚:
由图可知:
nLED_1---GPB5
nLED_2---GPB6
nLED_3---GPB7
nLED_4---GPB8
在S3C2440的引脚划分中,这四个引脚都属于Port B,因此可以通过配置Port B的控制寄存器对这四个引脚的功能进行配置:
如果要让LED灯亮,nLED_1到nLED_4端需要低电平,因此GPB5到GPB8引脚需要:
(1)输出:GPBCON
因此,GPBCON寄存器的11,13,15,17位要设置为0,而10,12,14,16位要设置为1,而且我们还知道GPBCON寄存器的地址为0x56000010:
#define GPBCON (*((volatile unsigned long*)0x56000010))
// GPBCON = 0000 0000 0000 0000 0000 0000 0000 0000
// GPBCON = 0000 0000 0000 0001 0101 0100 0000 0000
GPBCON = 0x00015400;
(2)低电平;
由此可知,在引脚设置为输出时,引脚的状态与寄存器中对应位的状态保持一致,因此,要将引脚设置为低电平,我们只需要将寄存器中的5、6、7、8位设置为低电平即可:
#define GPBDAT (*((volatile unsigned long*)0x56000014))
#define LEDS (1<<5 | 1<<6 | 1<<7 | 1<<8)
GPBDAT = GPBDAT & (~LEDS);
这样,就可以在这四个引脚上面都输出低电平,四个LED灯就全部亮了。
- mini2440(2) LED灯裸机硬件控制程序
- mini2440(2) LED灯裸机硬件控制程序
- mini2440(6) 我的第一个ARM汇编程序---LED灯裸机硬件控制程序(2)
- mini2440(4) 我的第一个ARM汇编程序---LED灯裸机硬件控制程序
- mini2440裸机程序LED
- mini2440 裸机编程 -led
- mini2440裸机第一步:如何电亮led灯
- mini2440裸机程序之二--点亮LED灯
- mini2440裸机程序--LED灯(C语言)
- mini2440裸机程序测试第一部-LED
- ARM裸机程序开发10(LED控制程序)
- 基于mini2440板之 led Qt界面控制程序
- MINI2440裸机流水灯
- 一起学mini2440裸机开发(一)--第一个led灯点亮
- [2014.3.17]mini2440裸机跑马灯/按键点亮LED的C程序
- 一起学mini2440裸机开发(一)--第一个led灯点亮
- MINI2440 LED灯驱动
- 基于mini2440的按键中断控制LED(裸机代码)
- BroadcastReceiver安全问题
- Interface classes
- (function($){...})(jQuery) 讲解
- H264(NAL简介与I帧判断)
- Handler导致内存泄露分析
- mini2440(2) LED灯裸机硬件控制程序
- Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数
- Final 与 C++ Const的区别
- Java NIO原理图文分析及代码实现
- LayoutInflater.inflate详解
- Java的AES加密解密
- MongoDB基本命令用
- 民主湖-大数据(1)-------------------你最喜欢哪个版块
- Markdown学习手册