本篇内容为,使用 Arduino 点亮 LED 的做法示范。很简单的一个入门示范。我们让 LED 闪。

本篇使用到的工具和材料

Arduino Mini Pro

1 PCS

Mini USB 数据线

FT232用

1 PCS

FT232RL

FTDI 出品

USB
转串口

1 PCS

跳线套装

1 PCS

面包板

1 PCS

杜邦线

母对母

5 PCS

电阻

直插

340Ω

1 PCS

LED

直插

颜色随意

1 PCS

如果各位使用的 Arduino 板子自带有 USB 转串口功能的,比如 UNO,Nano 那些,第一项 USB 转串口用的工具是不需要的。反而杜邦线你可能需要公对公的。如有不明白,欢迎请进群查问,一起学习。群号见博文最下方。

软件

你需要安装 Arduino.cc 主页下载的 IDE(集成开发环境软件)。最起码要这个,如果你像我一样有用 Visual Studio的话,可以在安装好 Arduino 软件后,下载并安装一个叫做 Visual Micro 的插件来使用 Visual Studio 开发 Arduino 代码(CPP)。下面截图和代码将使用官方的 IDE。

连接

这次做法是由 Arduino 的引脚直接供电给 LED,我选择了 2 号引脚,数字的。哪个是 2 号?看丝印,或者你板子的引脚图吧。比如我这个:

图片上方,左至右第五只脚就是 2 号,丝印也写着。另外上方左至右第四只脚是地。

面包板接法:四号脚接面包板的地线,五号脚用跳线拉到远离 arduino 的地方(没有引脚插着的地方),LED 正极(较长的那引脚)与其相连,LED 负极接电阻,电阻另一只脚接面包板的负极。电阻在此电路中起了限流作用,详见博文最后参考资料部分。

由于我这块是 Mini Pro,需要 USB 转串口才能对 Arduino 写入程序,所以还需要用杜邦线(母对母)通过 FT232 USB/串口转换模块,与电脑 USB 连接。这款 FT232 最大好处是引脚直接怼给 Arduino Mini Pro 的,顺序一致的。当然,各位要用也要看清楚咯,以防万一嘛。

在未插上电脑之前,有一件事需要再次确认的。目前 Arduino Mini Pro 有两个版本的电压,分别是 3.3V 和 5V,大家小心注意,需要把 FT232 模块的电压跳线帽插到正确位置。就是下图右侧排针附近那个跳线帽,我的 Arduino Mini Pro 电压是 3.3V的。

最后我们可以连上电脑的 USB 了。插上后,Windows 系统会自动安装相关驱动。然后 FT232 的灯会亮起,通过 FT323 对 Arduino 供电 3.3V,所以 Arduino 的电源指示灯也会亮起。

这时候我们可以写代码了,我们希望 LED 闪,就是对数字输出引脚 2号,交错地输出高电平和地电平。

代码

起码有两个办法可以使 Arduino 执行我们以上的要求的。

第一个办法 - 延时,下一篇我们讲用定时器实现。首先打开 Arduino 软件,你应该会看到这样的界面:

我建议,特别是有超过一种 Arduino 板在手上的朋友们,最好养成习惯,打开 IDE 后第一件事,检查右下角,板的型号和 COM 口是否正确。如果不正确,现在就改好先,这里改:

然后,这个界面默认代码模板是有两个函数,里面空白的。void setup () 是启动 Arduino 后只执行一次的部分,void loop() 是在启动后 setup 执行后,无限循环的部分。举例你有 A, B 两句代码在 setup 然后有 C, D, E 三句代码在 loop 里面,Arduino 启动后会这样执行:A – B – C – D – E – C – D – E – ….. 后面无限循环 C, D, E 三句。

那这些 ABCDE 语句到底写什么呢,我们要 LED 闪嘛,要做的首先是配置 2 号引脚为输出用(因为还可以用来输入的),然后我们就循环发送高电平、低电平。很简单,具体代码如下。

// 2016-12-11
// By Lepton-华
// 欢迎加入 Arduino 发烧玩家QQ群,群号 8580606
void setup() {
pinMode(2, OUTPUT); // 配置 2 号引脚为输出用
} void loop() {
digitalWrite(2, HIGH); // 数字输出,2号引脚,输出高电平(即对 LED 供电,LED 点亮)
delay(1000); // 延时 1000 毫秒
digitalWrite(2, LOW); // 数字输出,2号引脚,输出低电平(不对 LED 供电,LED 熄灭)
delay(1000); // 再延时 1000 毫秒
}

代码用到三个官方函数,pinMode,digitalWrite,和 delay,作用如上代码注释所示。详细介绍见博文最后的参考链接。

最后我们可以直接按 Upload,Arduino IDE 会先编译(因为代码变动了,它懂得识别的),然后通过 COM 口(FT232连接着),对 Arduino Mini Pro 写入程序,并且写入完成后会重启它一次。

如无意外,你的 LED 就开始闪动了。恭喜~

下一篇我会随便讲一下另一种方式使 LED 闪动,就是通过定时器。这方式的好处是,你可以使 LED 闪动之外,再让 Arduino 干点别的事情。下一篇见~

QQ群

欢迎加入我们的大家庭  点击加入 Arduino 发烧玩家群号 8580606

参考资料和 IDE 下载地址

Arduino 产品列表 https://www.arduino.cc/en/Main/Products
Arduino IDE https://www.arduino.cc/en/Main/Software
pinMode 函数 https://www.arduino.cc/en/Reference/pinMode
digitalWrite函数 https://www.arduino.cc/en/Reference/digitalWrite
Delay 函数 https://www.arduino.cc/en/Reference/Delay
电阻限流 http://baike.baidu.com/view/2098783.htm
https://zhidao.baidu.com/struct/questions/39810a23ce91aeb636fda6a7.html

Arduino 极速入门系列–1 点亮 LED的更多相关文章

  1. Arduino 极速入门系列 - 光控灯(1)- 关于理论和 LED 那些事

    点个 LED 闪亮好像太单调,这次来个光控 LED 灯.这个其实不需要 Arduino 也能做,这次只是用来演示一下 PWM 在 Arduino 里面的做法.PWM 原理后面会解释.这次用充电宝提供 ...

  2. Arduino 极速入门系列 - 光控灯(3) - 光敏电阻、与电阻分压那些事

    继续是讲解基础原理,新手专用部分.这次讲光敏电阻,和用电阻分压.光电元器件有好几种,其中测光相关的元器件,常见的有光敏三极管和光敏电阻,我们这次光控灯用光敏电阻.在我们光控灯里面,将会使用它搭建出分压 ...

  3. Arduino 极速入门系列 - 光控灯(2) - 关于开关,上拉、下拉电阻那些事

    接上篇,这次继续讲解光控灯的另外两个组成部分 - 开关和光敏电阻,光控灯里面将会有自锁开关按钮和光敏电阻.这此主要给新玩电子的朋友解释一下开关按钮的做法. 开关按钮的引脚电平读取问题 - 新手专用 我 ...

  4. Raspberry PI 系列 —— 裸机点亮LED灯

    Raspberry PI 系列 -- 裸机点亮LED灯 背景 近期刚买了Raspberry PI B+,配置执行了官方提供的Raspbian系统,折腾了一周Linux系统,感觉没啥意思,于是就试着想了 ...

  5. STM32入门系列-使用库函数点亮LED,LED初始化函数

    要点亮LED,需要完成LED的驱动, 在工程模板上新建一个led.c和led.h文件,将其存放在led文件夹内.这两个文件需要我们自己编写. 通常xxx.c文件用于存放编写的驱动程序,xxx.h文件用 ...

  6. STM32入门系列-使用库函数点亮LED软硬件分析

    电路图分析 首先找来单片机的原理图,根据原理图进行相关的设计工作. 例如在上图中相同网络标号表示它们是连接在一起的,因此D1发光二极管阴极是连接在STM32的PC0管脚上,D2指示灯阴极连接在PC1管 ...

  7. arduino入门学习实现语音控制LED灯

    需要的准备的硬件arduino+PC+麦克风实现语音命令控制LED灯的亮灭. 首先需要将写好的arduino程序烧录到arduino uno主板中,下面是代码如下: int val;//定义变量val ...

  8. SpringCloud系列之分布式配置中心极速入门与实践

    SpringCloud系列之分布式配置中心极速入门与实践 @ 目录 1.分布式配置中心简介 2.什么是SpringCloud Config? 3.例子实验环境准备 4.Config Server代码实 ...

  9. 第7章 使用寄存器点亮LED灯—零死角玩转STM32-F429系列

    第7章     使用寄存器点亮LED灯 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/fir ...

随机推荐

  1. 反编译android的apk

    将要反编译的APK后缀名改为.rar或 .zip,并解压   得到其中的classes.dex文件(它就是java文件编译再通过dx工具打包而成的),将获取到的classes.dex放到之前解压出来的 ...

  2. android 横向滚动条

    /*** * 横向滚动条,修改版,从左向右滚动,支持html代码和html里面的网络图片 */public class MarqueeView extends LinearLayout { priva ...

  3. 关于sigwait

    刚开始看sigwait函数,只是知道它是用来解除阻塞的信号,可是使我疑惑的是那么解除了以后为什么线程收到终止信号SIGINT的时候还是没能终止呢?   于是网上找了一些资料,总的理解如下所示: sig ...

  4. [Struts2] Action Implements SessionAware

    struts2 的Action中若希望访问Session对象,可采用两种方式: 1.从ActionContext中获取: 2.实现SessionAware接口. 1.从ActionContext中获取 ...

  5. Ubuntu14.04台式机r8169有线网卡驱动问题

    由于台式在安装了Ubuntu14.04后插入网线后灯不亮,不能使用有线网. 查找资料发现原来是网卡驱动问题,解决办法如下: 1.查看网卡驱动名称 lspci -v 找到以太网连接的kernel dri ...

  6. php用正则检测某字段开头是否为字母

    //判断数组都已字段的开头是否为字母 $data=array();  for($i=0;$i<$length;$i++){ //是,则把数组重新取出赋值if (preg_match(" ...

  7. linux下JsonServer启动

    1:进入到JsonServer run.sh目录下; 2:执行"export PATH=.:$PATH"; 3:执行"run.sh start"; 这样便把Js ...

  8. 视频软件TurboDemo 教程:如何为视频添加旁白和音乐

    在前面的文章中,已经对视频软件TurboDemo如何快速的捕捉屏幕和视频编辑做了一些了解,本文主要来了解如何为视频添加旁白和音乐. Slide Timing 在Player Controls窗口中的单 ...

  9. Swift2.3 --> Swift3.0 的变化

    Swift3.0语法变化 首先和大家分享一下学习新语法的技巧: 用Xcode8打开自己的Swift2.3的项目,选择Edit->Convert->To Current Swift Synt ...

  10. phpcms v9联动菜单的调用方法及get_linkage函数简单过程

    {get_linkage($r['areaid'],1,' >> ',1)} 复制代码 当然这个 $r 也不是绝对的.要看你的loop 是如何写的. {loop $data $n $r} ...