当前位置:首页 > 新闻资讯 > 科技生活 > 新闻
Arduino编程,从新手到达人系列
  • 2018/11/20 11:29:01
  • 类型:原创
  • 来源:电脑报
  • 报纸编辑:电脑报
  • 作者:
【电脑报在线】Arduino 并不仅仅是一块小小的开发板,而是一个基于灵活、易于使用的硬件和软件的开源电子开发平台,它即包含了硬件——各个型号的开发板、扩展板,也提供了开发所需的软件——开发环境和许许多多开发者创造的代码。

 

Arduino 并不仅仅是一块小小的开发板,而是一个基于灵活、易于使用的硬件和软件的开源电子开发平台,它即包含了硬件——各个型号的开发板、扩展板,也提供了开发所需的软件——开发环境和许许多多开发者创造的代码。这是特意为艺术家、设计师、业余爱好者和感兴趣的人创建的交互式对象和环境。由于提供了各种传感器的函数包,所以就算没有电子信息基础的爱好者,也可以使用Arduino快速开发出嵌入式作品。近期电脑报推出的arduino课程将围绕人工智能设计,触摸科技前沿,感受智造未来,提高孩子的STEAM素养,优化学业成绩,进而为创新人才的成长奠定基础。线下课程即将推出,敬请关注。

 

 

一、流水灯制作

1)实验器件 

n Led灯:6个

n 220Ω的电阻:6个

n 多彩面包板实验跳线:若干

 

2)实验连线

按照二级管的接线方法,将六个LED灯依次接到数字1--6引脚上。如图1流水灯实验的连线原理图,实物连接效果图2:

 

 

图1

 

 2

3)实验原理

 

在生活中我们经常会看到一些由各种颜色的led灯组成的广告牌,广告牌上各个位置上癿led灯不断的变话,形成各种效果。本节实验就是利用led灯编程模拟广告灯效果。 

程序参考:

int BASE = 2 ;  //第一颗LED 接的 I/O 脚

int NUM = 6;   //LED 的个数

 

void setup()

{

   for (int i = BASE; i < BASE + NUM; i ++)

   {

     pinMode(i, OUTPUT);   //设定数字I/O脚为输出

   }

}

 

void loop()

{

   for (int i = BASE; i < BASE + NUM; i ++)

   {

     digitalWrite(i, LOW);    //设定数字I/O脚输出为"低",即逐渐关灯

     delay(200);        //延迟

   }

   for (int i = BASE; i < BASE + NUM; i ++)

   {

     digitalWrite(i, HIGH);    //设定数字I/O脚输出为"低",即逐渐开灯

     delay(200);        //延迟

   }  

}

 

实验结果:可以看到LED流动闪烁,实验如图3。

 

图3

 

二、交通灯设计

上面我们已经完成了单个小灯的控制实验,接下来我们就来做一个稍微复杂一点的交通灯实验,其实聪明的朋友们可以看出来这个实验就是将上面单个小灯的实验扩展成3 个颜色的小灯,就可以实现我们模拟交通灯的实验了。我们完成这个实验所需的元件除了Arduino 控制器和下载线还需要的硬件如下:

红色M5 直插LED*1

黄色M5 直插LED*1

绿色M5 直插LED*1

220Ω电阻*3

面包板*1

面包板跳线*1

准备好上述元件我们就可以开工了,我们可以按照上面小灯闪烁的实验举一反三,下面是我们提供参考的原理图(图4),我们使用的分别是数字10、7、4、接口.

 

图4

 

图5

既然是交通灯模拟实验,红黄绿三色小灯闪烁时间就要模拟真实的交通灯(图5),我们使用Arduino 的delay()函数来控制延时时间,相对于C 语言就要简单许多了。

下面是一段参考程序:

int redled =10; //定义数字8 接口

int yellowled =7; //定义数字7 接口

int greenled =4; //定义数字4 接口

void setup()

{

pinMode(redled, OUTPUT);//定义红色小灯接口为输出接口

pinMode(yellowled, OUTPUT); //定义黄色小灯接口为输出接口

pinMode(greenled, OUTPUT); //定义绿色小灯接口为输出接口

}

void loop()

{

digitalWrite(greenled, HIGH);////点亮 绿灯

delay(5000);//延时5秒

digitalWrite(greenled, LOW); //熄灭 绿灯

for(int i=0;i<3;i++)//闪烁交替三次,黄灯闪烁效果

{

delay(500);//延时0.5 秒

digitalWrite(yellowled, HIGH);//点亮  黄灯

delay(500);//延时0.5 秒

digitalWrite(yellowled, LOW);//熄灭  黄灯

}

delay(500);//延时0.5 秒

digitalWrite(redled, HIGH);//点亮 红灯

delay(5000);//延时5 秒

digitalWrite(redled, LOW);//熄灭 红灯

}

下载程序完成后就可以看到我们自己设计控制的交通灯了。注意:此设计电路跟流水灯的极为相似,实验效果:绿灯亮5秒,绿灯熄灭,黄灯循环闪烁3次,红灯亮5秒,依次循环。

 

电脑报数橙Scratch在线课程如何购买?

 

1.登录电脑报官方数橙网站:http://www.showchi*.c*m/lesson

2.在录播课选择S1(全五章),单章98元-128元,全集打包价490元(原价1280元)。目前定价十分优惠,希望国内的科技老师、孩子以低成本融入到浩瀚的编程教育体系中来,拥抱未来的科技教育

3. 微信扫码付款后可在线学习,超大内容量逐步掌握编程知识。

学习说明:如果是初级入门的用户,可以选择个单章节购买(价格98元起),然后根据进阶程度购买全章节52节课时。教辅QQ群:825776309,有老师专门解答,欢迎各位读者参加。

本文出自2018-11-19出版的《电脑报》2018年第45期 A.新闻周刊
(网站编辑:zoey)


我来说两句(0人参与讨论)
发表给力评论!看新闻,说两句。
匿名 ctrl+enter快捷提交
读者活动
48小时点击排行
论坛热帖