前言:
int pin = 13; void setup(){ pinMode(13,OUTPUT); digitalWrite(pin,HIGH); delay(10 * 60 * 60 * 1000); digitalWrite(pin,LOW); } void loop(){ }
進入本範例:
/*
Blink without Delay
Turns on and off a light emitting diode (LED) connected to a digital pin,
without using the delay() function. This means that other code can run at the
same time without being interrupted by the LED code.
The circuit:
- Use the onboard LED.
- Note: Most Arduinos have an on-board LED you can control. On the UNO, MEGA
and ZERO it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN
is set to the correct LED pin independent of which board is used.
If you want to know what pin the on-board LED is connected to on your
Arduino model, check the Technical Specs of your board at:
https://www.arduino.cc/en/Main/Products
created 2005
by David A. Mellis
modified 8 Feb 2010
by Paul Stoffregen
modified 11 Nov 2013
by Scott Fitzgerald
modified 9 Jan 2017
by Arturo Guadalupi
This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/BlinkWithoutDelay
*/
複製以下紅色段程式碼到 Arduino IDE
const int ledPin = LED_BUILTIN;
int ledState = LOW;
unsigned long previousMillis = 0;
const long interval = 1000;
void setup() {
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);
}
}
中文翻譯
/ *
閃爍板載LED 不使用delay函數
打開和關閉連接到數字引腳的發光二極管(LED),
而不使用delay()函數。這意味著其他代碼可以在
同時不會被LED代碼打斷。
電路:
-使用板載LED。
-注意:大多數Arduino都有一個您可以控制的板載LED。在ArduinoUNO,ArduinoMEGA,ArduinoZERO連接到數字引腳13,-而MKR1000 則位於引腳 6。
LED_BUILTIN設置為正確的LED引腳,與使用哪個板無關。
如果您想知道板上LED連接到哪個引腳,Arduino模型,請在以下位置查看開發板的技術規格:
https://www.arduino.cc/en/主要/產品
創建於2005年
大衛·梅利斯(David A.Mellis)
於2010年2月8日修改
保羅·斯托弗雷根(Paul Stoffregen)
於2013年11月11日修改
由斯科特·菲茨杰拉德(Scott Fitzgerald)
於2017年1月9日修改
通過阿圖羅·瓜達盧皮(Arturo Guadalupi)
此示例代碼在公共領域。
http://www.arduino.cc/en/Tutorial/BlinkWithoutDelay
* /
//常量不會改變。用於設置板載LED:
const int ledPin = LED_BUILTIN; // LED引腳號
//ledState變量將更改:
int ledState = LOW; // ledState用於設置LED
//通常,對於保留時間的變量,應使用“ unsigned long”
//該值很快會變得太大而無法存儲 int
unsigned long previousMillis = 0; //將存儲上次更新LED的時間
(unsigned long 無符號 長) (以前的Millis)
//常量不會改變:
const long interval = 1000; //閃爍間隔(毫秒)
( long長變量 )
//將數字引腳設置為輸出:
pinMode(ledPin, OUTPUT);
}
}
void loop() {
//在這裡放置需要一直運行的代碼。
//檢查是否是時候讓LED閃爍了;也就是說,如果差異
//在當前時間和上次閃爍之間,LED大於
//您要使LED閃爍的時間間隔。
unsigned long currentMillis = millis();
if(currentMillis-previousMillis> = interval){
//保存上一次您使LED閃爍的時間
previousMillis = currentMillis;
//如果LED熄滅,則將其打開,反之亦然:
if (ledState == LOW) {
ledState = HIGH;
} else {
ledState = LOW;
}
//使用變量的ledState設置LED:
digitalWrite(ledPin, ledState);
}
}
}
沒有留言:
張貼留言