【Espruino】NO.04 让灯自由闪动
来源:互联网 发布:单片机密码锁编程 编辑:程序博客网 时间:2024/06/05 20:12
http://blog.csdn.net/qwert1213131/article/details/26952811
本文属于个人理解,能力有限,纰漏在所难免,还望指正!
【小鱼有点电】
上一节内容讲解了如何让LED小灯亮与灭,如果要实现闪烁的话,需要敲入很多代码,而且无法控制亮灭的时间间隔。本节,我们将采用两种方法,分别引入三个函数来分别实现闪烁功能,让控制更简单更准确。第一种方法:通过延时函数来搞定
setTimeout()函数描述:在经过timeout个毫秒后执行function功能,返回一个ID,可以被clearTimeout()调用
function setTimeout(function,timeout)
setInterval()描述:定期执行function功能,周期为timeout个毫秒,返回一个ID,可以被clearInterval()调用
function setInterval(function,timeout)示例:
function toggle(){ digitalWrite(LED1,1); setTimeout("digitalWrite(LED1,0);",500);//500ms后灭灯}setInterval(toggle,1000);//1s执行一次toggle函数
第二种方法:通过PWM搞定
这个方法有个限制,就是连接LED的引脚具备PWM功能,如果没有PWM功能,则会提示警告。通过控制PWM的占空比来控制亮灭的比例,调整PWM频率来控制闪烁的快慢。
analogWrite()描述:输出PWM,无返回值
value取值范围在0到1
options目前只支持频率设置,单位为Hz
function analogWrite(pin,value,options)
示例:
analogWrite(LED1,0.5,{freq:1});//以1Hz频率执行LED闪烁,且亮500ms,灭500ms。程序中的0.5代表亮灭的比例为1:1,即一个周期内亮灭各500ms
如果修改如下:
analogWrite(LED1,0.1,{freq:1});//以1Hz频率执行LED闪烁,且亮100ms,灭900ms。
0 0
- 【Espruino】NO.04 让灯自由闪动
- 【Espruino】NO.01 介绍
- 【Espruino】NO.xx NOTE
- 【Espruino】NO.02 快速入门
- 【Espruino】NO.13 蓝牙模块
- 【Espruino】NO.17 使用平板电脑调试Espruino(OTG方式)
- 【Espruino】NO.03 从点灯开始
- 【Espruino】NO.07 获取电压值
- 【Espruino】NO.10 数字温度传感器DS18B20
- 【Espruino】NO.11 轻松读写SD卡
- 【Espruino】NO.12 加速度传感器演示
- 【Espruino】NO.14 温湿度传感器DHT11
- 【Espruino】NO.15 nRF24L01+无线收发器
- 【Espruino】NO.16 使用VS1003播放音乐
- 【Espruino】NO.18 使用L298N驱动直流电机
- 【Espruino】NO.05 按键是你的仆人
- 【Espruino】NO.06 按键是你的仆人(续)
- 【Espruino】NO.08 使用PWM驱动蜂鸣器奏乐
- (10)JS之按下不同的按钮显示不同的颜色
- Java能扮演嵌入式开发主角吗?
- 12.4日期类
- JAVA之类的构造与对象初始化
- 写给准备参加秋招的学弟学妹们~一定要来看哦~
- 【Espruino】NO.04 让灯自由闪动
- Java用于嵌入式系统的十大优点和五个局限
- Android修炼之道—自定义控件 (300喵喵币)
- poj 2117 Electricity
- LinuxMint 15 / Ubuntu 13.04 / Ubuntu 13.10 下无法连接 wpa2 enterprise 加密无线网络的解决方法
- Apache服务器的配置(一)
- 多媒体编程——声音播放(2)
- 人生真的是一场马拉松吗?
- HDU1372:Knight Moves(BFS)