这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » Arduino nano学习0x04——另一种LED闪烁

共1条 1/1 1 跳转至

Arduino nano学习0x04——另一种LED闪烁

高工
2017-06-19 23:10:10     打赏

一、背景

采用延时函数实现的LED闪烁,在延时未到过程中,CPU停留在延时函数处,无法执行其他运算,对资源是极大的浪费。这里我们尝试用另一种方法来实现LED闪烁。


视频地址:http://player.youku.com/player.php/sid/XMjgyNzMzOTE2NA==/v.swf

二、硬件

D9引脚接一个4.7K电阻再接一个LED到地

三、程序


const int ledPin =  9;      // LED引脚编号
int ledState = LOW;             //用来指示LED状态的变量
unsigned long previousMillis = 0;        //保留上一次读取时间
const long interval = 1000;           //灯闪烁间隔,单位ms

void setup() {
// 设定LED引脚为输出脚
pinMode(ledPin, OUTPUT);
}

void loop() {
unsigned long currentMillis = millis();//读取当前时间

if (currentMillis - previousMillis >= interval) {
//保存本次时间
previousMillis = currentMillis;

//对灯的状态进行翻转
if (ledState == LOW) {
ledState = HIGH;
} else {
ledState = LOW;
}

//设定灯的状态
digitalWrite(ledPin, ledState);
}
}

四、函数

1.millis()自本次板子运行多少ms数,50天清零一次。



共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]