查看: 50064|回复: 31

[基础教程] DFR0100 Arduino教程02 -- LED灯闪烁

[复制链接]
该教程实验平台:Arduino入门套件

上一篇教程:Arduino教程 Lesson 1 -- 驱动安装及下载Blink程序

回顾一下Lesson 1的内容,我简单分了以下几点:

  • 了解Arduino软件编辑环境 -- Arduino IDE
  • 如何通过Arduino IDE下载一个Blink程序
  • "//" 和 "/*...*/"的含义
  • setup()和loop()函数的重要性及作用
  • pinMode(pin,mode)函数
  • digitalWrite(pin,value)函数
  • delay(ms)函数

开始新的一课!

这次我们还是同样要用Blink程序,有所不同的是,这里我们需要外接一个LED到数字引脚,而不是使用焊在Arduino板上的LED 13(也就是“L”灯)。便于我们能清晰的认识LED的工作原理及一些硬件电路的搭建。


STEP 1:需要准备的东西:
1 × DFduino UNO R3(以及配套USB数据线)

  
1.png
1 × Prototype Shield原型扩展板+面包板  
2.png
若干 彩色面包线   
3.png
1 × 5mm LED灯  
4.png
1 × 220欧电阻*  
5.png


STEP 2:硬件连接

首先,从我们的套件中取出Prototype shield扩展板和面包板,将面包板背面的双面胶歇下,粘贴到Prototype shield扩展板上。再取出UNO,把贴有面包板Prototype shield扩展板插到UNO上。取出所有元件,按照下图连接。


6.png

图中的蓝色与红色的线用彩色面包线连接,使用面包板上其他孔也没关系,只要元件和线的连接顺序与上图保持一致即可。
确保LED连接是否正确的,LED长脚为+,短脚为-,完成连接后,给Arduino接上USB数据线,供电,准备下载程序。


STEP 3:输入代码


打开Arduino IDE,在编辑框中输入样例代码1-1所示代码。(输入代码也是一种学习编程的过程,虽然提供代码的压缩包,但还是建议初学者自己输入代码,亲身体验一下。)

样例代码 1-1:
  1. //项目一 —— LED 闪烁
  2.      /*
  3. 描述:LED每隔一秒交替亮灭一次
  4.      */   
  5. int ledPin = 10;
  6. void setup() {
  7.         pinMode(ledPin, OUTPUT);
  8. }
  9. void loop() {
  10.         digitalWrite(ledPin,HIGH);
  11.         delay(1000);
  12.         digitalWrite(ledPin,LOW);
  13.         delay(1000);
  14. }
复制代码

输入完毕后,点击IDE的“校验(Verify)”,查看输入代码是否通过编译。如果显示没有错误,单击“下载(UpLoad)”,给Arduino下载代码。以上每一步都完成了的话,你应该可以看到面包板上的红色LED每隔一秒交替亮灭一次。



现在让我们来回顾一下代码和硬件,看看它们是如何工作的。代码是我们Lesson 1 是一模一样的,所以重复说明了。那就说下硬件吧!

STEP 4: 硬件回顾

面包板

面包板是一种可重复使用的非焊接的元件,用于制作电子线路原型或者线路设计。简单的说,面包板是一种电子实验元件,表面是打孔的塑料,底部有金属条,可以实现插上即可导通,无需焊接的作用。面包板该怎么使用?其实很简单,就是把电子元件和跳线插到板子上的洞洞里,具体该怎么插,我们就要从面包板的内部结构上说了。

7.png

从上图我们可以看到,面包板分为上下两个部分,蓝线指出的纵向每5个孔是相通的。

电阻

下一个要说的元件是电阻。电阻的单位是 Ω。电阻会对电流产生一定的阻力,引起它两端电压的下降。可以将电阻想象成一个水管,它比连接它的管子细一点,当水(电流)流入电阻,因管子变细,水流(电流)虽然从另一端出来,但水流减小了。电阻也是一样的道理,所以电阻可以用来给其他元件减流或减压。

电阻有很多用处,对应名称也不同,上拉电阻,下拉电阻,限流电阻等。我们这里用作限流电阻。在这个例子里,数字引脚10 输出电压为5V,输入电流为40mA(毫安)直流电。普通的LED需要2V的电压和35mA左右的电流。因此如果想以LED的最大亮度点亮它,需要一个电阻将电压从5V降到2V,电流从40mA减到35mA。这个电阻起限流的作用。

这里具体对电阻值选取的计算就不做说明了,只要知道在接LED时需要用到一个100Ω左右的电阻就可以了。大一点也没关系,但不能小于100Ω。如果电阻值选的过大的话,LED不会有什么影响,就是会显的比较暗。很容易理解,电阻越大,减流或减压效果更明显了。LED 随电流减小而变暗。

不同的LED灯所需电压也有不同,推荐《LED常识》一贴。
关于上拉电阻,下拉电阻,限流电阻,请看此贴《电路知识之电阻的功能》。

LED

LED也是一种二极管,会发光的二极管。LED能发出不同颜色和亮度的光线,包括光谱中的紫外线和红外线。(比如我们经常使用的各类遥控器上面的LED也是其中一种,与普通的发光二极管长的一样,只是发出的光我们人眼看不到,我们也称之为红外发射管。)

LED如果仔细观察LED,你会注意到,LED引脚长度不同,长引脚为+,短引脚为-。那如果正负接反会怎么样呢?下面这张图就说明问题了,接反就不亮了呗。下图是不是还缺个电阻呀,细心的你发现了吗?

9.png


动手试一试

尝试换不同阻值的电阻,看看LED灯的变化。

现在你知道了各元件的功能及整个项目中软硬件是如何工作的,让我们尝试做其他好玩儿的东西吧!



下一篇教程:Arduino教程 Lesson 3 -- 做一个S.O.S求救信号灯


Youyou  初级技匠

发表于 2014-3-21 23:59:07

Grey 发表于 2014-3-19 18:34
楼主好细心,一步步都列出来了
32个赞

亲,32个赞怎么够呢,必须怒赞啊
回复 支持 2 反对 0

使用道具 举报

心平气和  学徒

发表于 2017-5-16 20:22:40


为什么我的没有反应呢?全部安图做的
回复 支持 0 反对 1

使用道具 举报

社区活动向导  NPC

发表于 2013-12-12 10:05:27

不错,配件和连线图,看着超舒服的。。。。。
回复 支持 反对

使用道具 举报

Grey  中级技匠

发表于 2014-3-19 18:34:53

楼主好细心,一步步都列出来了
32个赞
回复 支持 反对

使用道具 举报

zyj2007at  见习技师

发表于 2015-8-7 14:01:33

已经学会了,我又加上了一盏灯,也亮了,挺有意思。
回复 支持 反对

使用道具 举报

zyj2007at  见习技师

发表于 2015-8-7 14:01:37

已经学会了,我又加上了一盏灯,也亮了,挺有意思。
回复 支持 反对

使用道具 举报

Jane  管理员
 楼主|

发表于 2015-8-8 09:39:30

zyj2007at 发表于 2015-8-7 14:01
已经学会了,我又加上了一盏灯,也亮了,挺有意思。

回复 支持 反对

使用道具 举报

powera  见习技师

发表于 2015-12-1 10:42:27

哇,怎么可能这么详细
楼主威武!!!
回复 支持 反对

使用道具 举报

OLDSTUDENT  初级技师

发表于 2016-1-24 11:00:19

对于初学者不怕细只怕粗。谢谢楼主!
回复 支持 反对

使用道具 举报

murongshaogong  初级技师

发表于 2016-4-17 10:49:40

第一次接触这样的板子 好好学习下
回复 支持 反对

使用道具 举报

z1033969032  见习技师

发表于 2016-5-22 10:56:52

已经学会了
回复 支持 反对

使用道具 举报

maoweiyong  学徒

发表于 2016-9-12 16:27:01

为什么我的没有反应呢?全部安图做的
回复 支持 反对

使用道具 举报

maoweiyong  学徒

发表于 2016-9-13 08:07:10

maoweiyong 发表于 2016-9-12 16:27
为什么我的没有反应呢?全部安图做的

板子不一样,GND的位置和教程不同,自己解决了!!!
回复 支持 反对

使用道具 举报

ElleryQueen  见习技师

发表于 2016-11-3 07:58:49

感谢楼主,初学者真的是受益了
回复 支持 反对

使用道具 举报

Jane  管理员
 楼主|

发表于 2016-11-3 11:27:30

ElleryQueen 发表于 2016-11-3 07:58
感谢楼主,初学者真的是受益了

哈哈哈 不客气哒
回复 支持 反对

使用道具 举报

chengshuwan  见习技师

发表于 2017-1-6 15:40:08

学习的路上第二章已拜读。。。
回复 支持 反对

使用道具 举报

talesman  学徒

发表于 2017-1-20 08:59:12

我按照教程一模一样做的可是led等就是不亮(如图),求指点
e05a9f003af33a87e141da5ccf5c10385343b52f.jpg
回复 支持 反对

使用道具 举报

talesman  学徒

发表于 2017-1-20 09:01:45

maoweiyong 发表于 2016-9-13 08:07
板子不一样,GND的位置和教程不同,自己解决了!!!

你好,请问你是怎么解决的?我也是按照图上做的但是led有任何反应
回复 支持 反对

使用道具 举报

Jane  管理员
 楼主|

发表于 2017-1-21 18:36:35

talesman 发表于 2017-1-20 09:01
你好,请问你是怎么解决的?我也是按照图上做的但是led有任何反应

LED长短脚有没有接反呀?
回复 支持 反对

使用道具 举报

samon2017  学徒

发表于 2017-1-30 14:15:25

talesman 发表于 2017-1-20 09:01
你好,请问你是怎么解决的?我也是按照图上做的但是led有任何反应

多彩线插错,GND从左往右第4个孔。
回复 支持 反对

使用道具 举报

jiashe2011  见习技师

发表于 2017-2-21 23:02:10

不错,配件和连线图都有。
回复 支持 反对

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
wifi气象站

硬件清单

btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2019 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail