前两课我们用按钮,用电位器通过PWM方式调节LED的亮度,今天我们玩个简单的,纯粹用编程的手法来让LED渐明渐暗,如同呼吸一般,所以我们给它起了一个神奇的名字,呼吸灯。
其实本课的电路是这几课中最简单的。俗称最开始的质量最好,最后的偷工减料最严重。。。开个玩笑。
试验用元器件列表:
ocrobot mango控制板(Arduino兼容) | 一块 |
面包板 | 一块 |
面包板专用跳线 | 一盒 |
任意颜色LED | 一个 |
220欧姆电阻 | 一个 |
USB数据线 | 一根 |
准备好以上元器件,我们就着手设计电路图,如下图
同样的,因为是PWM试验,所以LED的数字接口一定要选用带#号标识的数字口,只有带#号的数字输出口才具有硬件PWM输出功能。
然后我们就依据电路连接图来搭建自己的试验电路,我搭建的电路如下:
好了,下面大家来看程序,这可是今天的主角:
希望大家自己动手调整几个延时参数,让呼吸灯的效果更真实,具有美感
ARDUINO 代码复制打印
1./*
2. 作者:极客工坊
3. 时间:2012年6月8日
4. IDE版本号:1.0.1
5. 发布地址:www.geek-workshop.com
6. 作用:通过循环语句控制PWM来达到呼吸灯效果
7.*/
8.
9.void setup ()
10.{
11. pinMode(11,OUTPUT);
12.}
13.
14.void loop()
15.{
16. for (int a=0; a<=255;a++) //循环语句,控制PWM亮度的增加
17. {
18. analogWrite(11,a);
19. delay(8); //当前亮度级别维持的时间,单位毫秒
20. }
21. for (int a=255; a>=0;a--) //循环语句,控制PWM亮度减小
22. {
23. analogWrite(11,a);
24. delay(8); //当前亮度的维持的时间,单位毫秒
25. }
26. delay(800); //完成一个循环后等待的时间,单位毫秒
27.}
然后,我们将程序下载到ocrobot mango(Arduino兼容)控制板中,就能看到效果了,下面的视频是我的试验演示效果。
Arduino入门教程--第十五课--Arduino制作感温杯电路
现在有一款非常漂亮的杯子,能够感应出杯中液体的温度,显示不同的颜色,提醒用户注意高温,非常人性化,非常创意的一种产品
原件列表
arduino控制器 1个
面包板 1块
面包板专用跳线盒 1盒
红黄蓝LED 各1枚
220Ω电阻 3枚
lm35温度传感器 1个
USB数据线 1根
我们今天就要用arduino制作一个这个杯子的电路,我们先来设计好电路,通过lm35温度传感器感应温度后,让不同颜色的led显示表示其温度
基于原理图我们搭建出了实物图
程序如下
ARDUINO 代码复制打印
1./*
2. 作者:极客工坊-迷你强
3. 时间:2012年8月15日
4. IDE版本号:1.0.1
5. 发布地址:www.geek-workshop.com
6. 作用:依据温度显示水杯制作同等功能的电路程序
7.*/
8.
9.void setup() {
10. pinMode(13, OUTPUT);
11. pinMode(12, OUTPUT);
12. pinMode(11, OUTPUT);
13.}
14.void loop() {
15. int vol = analogRead(A0) * (5.0 / 1023.0*100); //读取LM35温度值
16.if (vol<=31) //低温区的温度值设置、以及led显示
17.{
18. digitalWrite(13, HIGH);
19. digitalWrite(12, LOW);
20. digitalWrite(11, LOW);
21.}
22.else if (vol>=32 && vol<=40) //中温区温度范围设置 &&为“与”的意思,具体请查阅wiki
23.{
24. digitalWrite(13, LOW);
25. digitalWrite(12, HIGH);
26. digitalWrite(11, LOW);
27.}
28.else if (vol>=41) //高温区温度设置
29.{
30. digitalWrite(13, LOW);
31. digitalWrite(12, LOW);
32. digitalWrite(11, HIGH);
33.}
34.
35.}