Arduino开发入门课程

MakeCourse

ZMAKER

LED已经能够亮起来了,但只是能够实现亮灭功能,基本上就是一个“上电断电”的操作。而本次课程,我们将控制LED灯让它渐渐变亮,再慢慢熄灭。

当然,不需要过多硬件啦~

这里我们用一个电位计(电位器)先来控制LED观察效果。手边如果有万用表的话,可以先测量一下它的电阻值变化,具体三个引脚怎么接,自己摸索啦。

需 要 的 器 件:

Arduino UNO电路板(1块)

面包板(1块)

220Ω电阻(1个)

LED神灯(1盏)

面包线(若干)

这里我们用一个电位计(电位器)先来控制LED观察效果。手边如果有万用表的话,可以先测量一下它的电阻值变化,具体三个引脚怎么接,自己摸索啦。

连接方式:

程序就是类似下面这个样子:

但是,为了规范一些,因为电位器的读数是0-1024的范围,而LED的亮度值范围是0-255,所以,这里我们要进行一下运算了,也就是"val/1024*255",但是如果遇到别的状况怎么办呢?比如要把10~300,对应成2.5~6.5呢?这样的情况显然如果再进行计算的话就得费一番心力了,有兴趣的可以试一下。所以就有了这样一个固定函数map(),具体用法如下:

或者改成这个样子:

好了这就是我们今天的程序了,而今天的知识点就已经在这个程序里面了---analogRead()和analogWrite();

对的,今天我们遇到两个新的函数,analogRead()是模拟输入函数,analogWrite()是模拟输出函数。关于模拟量,是跟数字量相对应的另一种常见的数据类型。数字量,之前就已经很熟练的使用了,比如开和关、是和不是、对和错等,我们上节课的按键开关就是典型的数字输入量。但就像在我们生活中,并不是所有问题都只有“是,不是”这两情况一样,比如数学中的数字,不只是0和1,还有1、2、3、4、5、6、7等,甚至从0数到1都数不完呢,0.1,0.01,0.001等而这些就可以看作模拟量。就像我们这节课用到的电位计,当我们转动旋钮的时候,可以随意的选择在什么时候停止转动,,可以通过添加程序命令来看一下电位计的读数:

这个就是模拟输入,在Arduino主控板上是A0~A6引脚。而模拟输出,就是另一种独特巧妙的方式了,我们可以留着下节课仔细讲解。

↓ 更多精彩作品 ↓

Processing系列教程

CAD轻量化教程

Arduino开发入门教程

Scratch图形化编程教程

App Inventor程序开发课程

《玩儿转Micro: bit》系列

Magicavoxel像素体3D建模

Linux基础入门课程

Python入门&人工智能

人工智能先修课程

开放 融合 创造

未完待续

欢迎好奇宝宝们来玩儿!个人参观可直接空降~

团体参观请联系后台,或根据下方联系方式提前预约~

交通路线:乘坐地铁1号线梧桐街站A出口)

河南省国家大学科技园南配1号楼东1-2层

欢迎关注我们的新浪微博@郑州创客空间

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180414B0PZNX00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券