【Mind+】Arduino Uno入门 项目一 HELLO WORLD

2019-06-0411.8万
AI 快速预览详细 收起
本文介绍了如何使用Mind+软件进行Arduino Uno的连接设置,并通过三个小任务(点亮板载LED灯、点亮真实LED灯、让LED越闪越快)帮助初学者快速上手。首先通过数据线连接Arduino Uno到电脑,选择上传模式并扩展主控板。然后通过编写程序,控制LED灯的亮灭和闪烁。这些任务不仅适合零基础新手,也适用于STEM教育场景,帮助孩子培养编程兴趣和逻辑思维。
【Mind+】Arduino Uno入门 项目一 HELLO WORLD
-DFRobot官方出品
上一篇:【Mind+】Arduino Uno入门教程简介

下一篇:
【Mind+】Arduino Uno入门教程02  S.O.S.

*连接Arduino UNO

      通过以下3步完成Arduino Uno在Mind+中的连接设置。

      ■ 将Uno板通过数据线连接到电脑;

      ■ 打开Mind+软件,选择“上传模式
      ■ 单击“扩展,弹出如下窗口,选择“主控板”后,单击“Arduino Uno
【Mind+】Arduino Uno入门 项目一 HELLO WORLD图1
* 每个项目编程之前都要进行连接设置,之后的项目中将不再复述连接步骤。

*项目示例

      可以通过以下三个小任务进行实践:

      ■ 任务一:点亮板载LED灯
      ■ 任务二:点亮真实的 LED 灯
      ■ 任务三:让 LED 越闪越快

任务一:点亮板载LED灯
      
输入以下程序,并将程序上传。
【Mind+】Arduino Uno入门 项目一 HELLO WORLD图2

* 注意,在上传程序之前,要设置好CMO口,点击菜单栏中“连接设备”,在下拉窗口中点击对应COM口即可设置。

【Mind+】Arduino Uno入门 项目一 HELLO WORLD图4

      数字输出是 Arduino 主控板对原件的控制方式之一。它向输出的电路传送数字信号——0 和 1。0 意味着输出低电平,电路不会接通;1 则是输出指高电平,电路接通。

      上面的程序中,将 13 号管脚的数字输出设为高,与其连接的板载 LED 灯便会被点亮。经过 1 秒钟的延时(延时过程中,硬件保持延时开始时的状态,直到设定的时间结束),数字输出变为低,灯就会熄灭,之后保持熄灭状态 1 秒钟。  
      
     可以看到,板载 LED 灯在熄灭 1 秒后又重新亮了起来,1 秒钟后又熄灭,如此重复下去。
      
      并且,灯总是亮 1 秒,灭 1 秒,这个重复不会发生变化。这是因为,这些程序的模块是按它排列的顺序执行的,主控板不会先执行第一个模块,然后跳过延时的模块,直接去执行第三个模块,或者是按任何与程序不一样的顺序执行。

任务二:点亮真实的LED灯

1. 硬件连接
      将 LED 灯与 10 号管脚相连。注意插线时的颜色对应。
【Mind+】Arduino Uno入门 项目一 HELLO WORLD图3

2. 程序编写
      我们只需将管脚号从 13 换成 10 即可。
【Mind+】Arduino Uno入门 项目一 HELLO WORLD图5
任务三:让LED越闪越快
1. 程序编写
      首先来看这样一段程序。不难看出,这段程序是由其中的一小段不断重复而成的:

【Mind+】Arduino Uno入门 项目一 HELLO WORLD图6

      按照之前讲过的顺序执行原则,这一组模块就会一直重复下去。如果我们想让它执行很多次(比如 100 次),一种办法就是,把 100 个这样的模块组前后连接在一起。
【Mind+】Arduino Uno入门 项目一 HELLO WORLD图7

      可想而知,那样接起来的程序会非常长。并且,如果想知道它被重复执行了多少次,数起来也非常麻烦。那么,有没有一种模块,可以自动实现这个重复的过程,并且让人不怎么费力就知道重复执行了多少次呢?有的。

【Mind+】Arduino Uno入门 项目一 HELLO WORLD图8
2. 代码讲解
      上面这段程序,实现了“重复”这个想法。它就是程序中常用的条件循环结构。如何理解这个循环结构呢?“重复执行直到变量i<1”这句话是什么意思呢?

      循环的次数通过变量 i 的大小来控制。所谓变量,就是在程序运行过程中大小发生变化的量。循环执行过程中,变量 i 从 1开始,每次减小 0.1,直到减小到0,然后循环结束。每次循环,都会执行一次包在其中的程序(这里就是控制灯亮灭的程序)。

知识点小结


1. 元件
LED
2.Mind+ 程序模块
设置数字引脚1输出高电平
等待
条件循环
3.程序设计
顺序结构
循环结构
变量

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(21)
老螃蟹
老螃蟹
为什么不用设置引脚是 输出模式 还是输入模式?
而我用原版的ide不设置引脚的 pinMode 就运行不正常?
白菜价
白菜价
666666666666
帅就一个字
帅就一个字
为什么当变量=0时,灯最终的状态是常亮,而<0.1时,最终灯是灭
dongtai
dongtai
相恨见晚啊。世界变化太快。要多多在这个网站上学习
花生编程
花生编程
新手教程非常详细,赞!
花生编程
花生编程
学习学习
鬼斧神工
鬼斧神工
这个程序的意义是不是让自己能知道这个程序是重复执行的第几次了
鬼斧神工
鬼斧神工
等待为什么设为变量i呢?有没有大佬解答一下
dongtai
dongtai回复鬼斧神工
变量每次都会少0.1秒,所有亮的时间会慢慢缩短,给人一种越来越快的感觉。
EVE
EVE
作者
回复鬼斧神工
变量 i 越来越小,所以灯才会越闪越快
三春牛-创客
三春牛-创客
适合小白学习。
三春牛-创客
三春牛-创客
不错不错
攻城狮丶COM
攻城狮丶COM
讲得真好!
ARDUINO
ARDUINO
牛逼牛逼牛逼牛逼牛逼
淡淡的清香
淡淡的清香
讲的很好
腿毛利小五郎
腿毛利小五郎
最后一个图是不是应该不带最外面的循环
小军军
小军军回复腿毛利小五郎
不带的话就亮灭10次吧。套了就是10次这样的循环。
一起看未来
一起看未来
图片里的是UNO主板吗?怎么跟我的不一样
EVE
EVE
作者
回复一起看未来
教程里用的是UNO教育版,有可能和你的UNO板子长得不太一样,但是引脚定义都是一样的,不影响使用
DFBJxTQ0quw
DFBJxTQ0quw
为什么我的UNO面板和教程上的不一样
匹诺曹
匹诺曹回复DFBJxTQ0quw
有没有可能是你选择的是实施模式?
EVE
EVE
作者
回复DFBJxTQ0quw
教程里用的是UNO教育版,有可能和你的UNO板子长得不太一样,但是引脚定义都是一样的,不影响使用
TED007
TED007
刚接触Arduino uno,学习了,谢谢。
gada888
gada888
不错
wangyao
wangyao
优秀
MEILA
MEILA
优秀