# 閃爍的LED
> 這個例子展示了在Arduino板Genuino板上能夠看到的最簡單”輸出”操作:讓一個LED小燈閃爍。
### 所需硬件
* Arduino或Genuino板
* LED小燈
* 220Ω電阻
### 電路
連接**電阻**的一端到Arduino板的13號引腳,將LED較長的一端(叫作陽極,電流流入的地方)連接到電阻的另一端。?
連接LED較短的一端到Arduino GND接口。連線如下圖所示。

大多數Arduino板已經有一個板載LED燈和13引腳相連。?
如果你沒有連接外部的小燈并在板上運行了這個工程,你應該可以看到板載的LED閃爍。
和LED搭配的電阻值可能并非是220Ω;LED和1kΩ以下的電阻搭配都會亮起。
### 原理圖

### 代碼
在搭好電路之后,將Arduino或Genuino板插入電腦并啟動Arduino IDE,然后將這段代碼輸入。也可從**文件>例子>01.Basics/Blink**(File/Examples/01.Basics/Blink )中找到。?
代碼中做的第一件事情就是將13號引腳**初始化**為**輸出引腳**(OUTPUT pin)
~~~
pinMode(13, OUTPUT);
~~~
在主循環中你用這行代碼打開LED:
~~~
digitalWrite(13, HIGH);
~~~
這行代碼給13號引腳加了5V的電壓。這個操作使得LED兩側產生電壓差,并且由此點亮了LED。接著你用以下代碼把LED關閉:
~~~
digitalWrite(13, LOW);
~~~
這行代碼將13號引腳重新置為了0V的低電壓,以此關掉了LED。
LED開與關是及其迅速的,而你是想讓人們有足夠時間來看到這個改變。因此就要用delay()函數告訴板子:你等著別動,1000毫秒(就是1秒)后再繼續。當你看到delay()出現時就意味著在這個時間內什么都不做。
在你了解了基本例子之后再看一下[02.Digital 數字引腳操作 BlinkWithoutDelay 不用delay函數閃爍led ]( ),它會展示如何在delay的過程中同時做其他事情。
~~~
/*
點亮LED
將LED點亮一秒鐘,接著熄滅一秒鐘,不斷重復這一過程。
大多數Arduino都有一個可控的板載LED,Uno和Leonardo板就有一個與13號引腳連接的LED。如果不確定你的Arduino上哪個引腳連接著板載LED
看看這個網址:http://www.arduino.cc
示例代碼是公開的
*/
//setup函數在重新上電或按了復位后只運行一次
void setup() {
// 初始化13引腳,并將其定義為輸出引腳。
pinMode(13, OUTPUT);
}
// loop函數永遠地重復執行
void loop() {
digitalWrite(13, HIGH); // 將LED點亮(HIGH代表高電壓)
delay(1000); // 停一秒鐘
digitalWrite(13, LOW); // 將LED熄滅(LOW代表低壓)
delay(1000); // 停一秒鐘
}
~~~
## 相關資料
[setup()](http://www.arduino.cc/en/Reference/Setup)?
[loop()](http://www.arduino.cc/en/Reference/Loop)?
[pinMode()](http://www.arduino.cc/en/Reference/PinMode)?
[digitalWrite()](http://www.arduino.cc/en/Reference/DigitalWrite)?
[delay()](http://www.arduino.cc/en/Reference/Delay)?
[讀取模擬信號、串口操作?
Arduino工程的最小單元?
讀取數字引腳?
LED亮度漸隱?
讀取模擬電壓]( )
- 說明
- 系統示例文件目錄結構及說明
- 01.Basics
- AnalogReadSerial
- BareMinimum
- Blink
- DigitalReadSerial
- Fade
- ReadAnalogVoltage
- 02.Digital
- BlinkWithoutDelay
- Button
- Debounce
- DigitalInputPullup
- StateChangeDetection
- toneKeyboard
- toneMelody
- toneMultiple
- tonePitchFollower
- 03.Analog
- AnalogInOutSerial
- AnalogInput
- AnalogWriteMega
- Calibration
- Fading
- Smoothing
- 04.Communication
- ASCIITable
- Dimmer
- Graph
- Midi
- MultiSerial
- PhysicalPixel
- ReadASCIIString
- SerialCallResponse
- SerialCallResponseASCII
- SerialEvent
- SerialPassthrough
- VirtualColorMixer
- 05.Control
- Arrays
- ForLoopIteration
- IfStatementConditional
- switchCase
- switchCase2
- WhileStatementConditional
- 06.Sensors
- ADXL3xx
- Knock
- Memsic2125
- Ping
- 07.Display
- barGraph
- RowColumnScanning
- 08.Strings
- CharacterAnalysis
- StringAdditionOperator
- StringAppendOperator
- StringCaseChanges
- StringCharacters
- StringComparisonOperators
- StringConstructors
- StringIndexOf
- StringLength
- StringLengthTrim
- StringReplace
- StringStartsWithEndsWith
- StringSubstring
- StringToInt
- 09.USB
- Keyboard
- KeyboardLogout
- KeyboardMessage
- KeyboardReprogram
- KeyboardSerial
- KeyboardAndMouseControl
- Mouse
- ButtonMouseControl
- JoystickMouseControl
- 10.StarterKit_BasicKit (與特定硬件相關,暫無)
- p02_SpaceshipInterface
- p03_LoveOMeter
- p04_ColorMixingLamp
- p05_ServoMoodIndicator
- p06_LightTheremin
- p07_Keyboard
- p08_DigitalHourglass
- p09_MotorizedPinwheel
- p10_Zoetrope
- p11_CrystalBall
- p12_KnockLock
- p13_TouchSensorLamp
- p14_TweakTheArduinoLogo
- p15_HackingButtons
- 11.ArduinoISP(暫無)
- ArduinoISP