历史上的今天
今天是:2025年02月18日(星期二)
2020年02月18日 | ARM学习笔记13——LED驱动程序设计
2020-02-18 来源:eefocus
首先我们要根据开发板原理图得到控制LED灯的引脚是哪个,我们现在以LED1为例,我们已经知道LED1由S5PV210的GPC1_3控制,因此我们按如下步骤进行:
第一步是配制S5PV210的GPC1_3为输出口;
第二步我们禁止GPC1_3的上、下拉电阻功能;
第三步就是控制GPC1_3输出高电平或低电平。
要想对GPC1进行配置,那我们需要知道其配置寄存器的地址,根据S5PV210的编程手册我们可以知道:
GPC1的配置寄存器地址是:0xE0200080
GPC1数据寄存器地址是:0xE0200084
GPC1上、下拉控制寄存器地址是:0xE0200088
同样由S5PV210的编程手册得知,要将GPC1_3配置为输出口,只要将地址单元0xE0200080(配置寄存器)的BIT15设置为0001即可。
根据ARM体系结构的特点:运算编写在寄存器中完成,要想访问存储器必须用到加载ldr/str指令。要想操作地址单元0xE0200080(GPC1配置寄存器)的内容,必须将0xE0200080放到ARM寄存器(R0-Rn)中,然后用ldr/str指令访问该单元(GPC1配置寄存器)的内容。 那么,如何将0xE0200080放到寄存器中呢?我们这里可以采用比较直观的方法,通过伪指令ldr来完成,即:ldr r0,-=0xE0200080.
将GPC1_3配置为输出口的代码段为:
ldr r2,=0xE0200080 @将地址0xE0200080放到ARM寄存器R2
ldr r3,[r2] @加载地址单元0xE0200080的内容到R3中
mov r0,#0xf @将立即数0xf放到R0
bic r3,r3,r0,lsl #12 @将R3的BIT[15:12]清零
mov r1,#0x1 @将1放到ARM寄存器R1中
orr r3,r3,r1,lsl #12 @将R3的BIT15:BIT12=0001
str r3,[r2] @将R3的内容存储到R2指向的地址单元(0xE0200080)
禁止GPC1_3上、下拉电阻功能代码片段:
ldr r2,=0xE0200088
mov r0,#0x3
ldr r3,[r2]
bic r3,r3,r0,lsl #6
str r3,[r2]
控制GPC1_3输出高电平代码片段
ldr r2,=0xE0200080
mov r0,#1
ldr r3,[r2]
orr r3,r3,r0,lsl #3
str r3,[r2]
控制GPC1_3输出低电平代码片段
ldr r2,=0xE0200080
mov r0,#1
ldr r3,[r2]
bic r3,r3,r0,lsl #3
str r3,[r2]
如果实现LED灯的亮、灭闪烁,在LED亮和灭之后都需要加入一定的延时,否则我们看不到灯的闪烁。 我们可以用类似如下的代码实现延时:
delay:
mov r1,#0xf00000
sub r1,r1,#1
cmp r0,#0
bne delay
mov pc,lr
史海拾趣
|
上海正全力加强158个迎世博重点蔬菜基地的建设,强化生产基地的监管,建立健全农产品质量安全可追溯体系。闵行区农委世博蔬菜基地除在场区实行全天候巡逻外,还在农田蔬菜大棚和装运车间安装了监控摄像头,实现世博重点蔬菜基地生产和运输过程的有 ...… 查看全部问答> |
|
本帖最后由 paulhyde 于 2014-9-15 09:20 编辑 哪位大虾可以指导一下关于采样保持电路的几个问题: 1、最常用的有哪些芯片 2、电路应该如何设计及各个部分的作用是什么 3、AD的是否影响采样保持电路芯片的选择,如果有还麻烦您讲解一下啊 再 ...… 查看全部问答> |
|
功率MOSFET具有开关速度快,导通电阻小等优点,因此在开关电源,马达控制等电子系统中的应用越来越广。通常在实际的设计过程中,电子工程师对其的驱动电路以及驱动电路的参数调整并不是十分关注,尤其是从来没有基于MOSFET内部的微观结构去考虑驱动 ...… 查看全部问答> |
|
我在RVDS环境下把以前能够通过的c源代码的工程改为c++的工程,但是发生连接错误找不到Main函数: Undefined symbol Main (referred from 2440init.o)。请大虾指点… 查看全部问答> |
|
在网上有很多开源的软件项目,只要你有能力,或者说喜欢就可以加入那个团队,大家一起来设计的那种. 这样大家就可以在网上通过一个公共的项目共同学习,交流. 那么在硬件项目上,比如说,数字电路,模拟电路的设计啊,(PCB,DSP,等等各类东西)在网上有没 ...… 查看全部问答> |
|
[提建议]建立一个语音教学及互动平台 我相信在坛子里面的学生应该不少吧。想在EEWorld里学到一些实践的经验和如何做项目。 我们论坛中已经有了 但是,我觉得我们eeworld是还会有更多的想法和活动的. 如: 链接:https:/ ...… 查看全部问答> |
|
下面的这篇文章也可能老生常谈,但相信对于新的学电子的童鞋来说,,可以认真看看,,相信有所帮助! 1.三极管用电流控制,MOS管属于电压控制. 2、成本问题:三极管便宜,mos管贵。 3、功耗问题:三极管损耗大。 4、驱动能力:mos管常用来电 ...… 查看全部问答> |
|
本帖最后由 qwqwqw2088 于 2014-1-8 14:52 编辑 自USB插头问世以来,插 USB 接口就是个特别考验运气的事情,这就像抛硬币正面与反面朝上的概率一样,插进去和插不进去就像是五五分的。所以以后想要做选择但又找不到硬币的时候, ...… 查看全部问答> |




