原文:http://arduino.cc/en/Tutorial/Blink
译文:http://blog.youkuaiyun.com/qffj/article/details/8185564
小灯闪闪
这个实例演示了Arduino 最简单的输出。让LED灯闪起来。
硬件需求
- Arduino 开发板
- LED
电路
把一个220欧的电阻连到pin 13上. 然后把 LED的长腿(正腿,又称阳极)连在电阻上。把短腿(负腿,又称阴极)接地。然后连接Arduino 板和计算机,启动 Arduino 程序,输入下面的代码。
大多数Arduino 开发板的pin 13已经接上了LED。不需要额外的硬件连接,运行程序就可以看到LED闪烁。
原理图
代码
在以下代码中,首先你初始化 pin 13 作为输出
pinMode(13, OUTPUT);
在主循环中, 然后打开LED灯:
digitalWrite(13, HIGH);
这条语句把5 伏的电压送至 pin 13.导致2个引脚之间产生电压差从而点亮 LED, 下面用这行代码关闭LED:
digitalWrite(13, LOW);
pin 13 回归0伏, LED就关了. 在开与关之间,你希望有足够的时间让人看到变化,所以 delay()命令让Arduino 什么在1000微秒(=1秒)中什么都不要做。当你使用
BlinkWithoutDelay 实例中学习如何一边做别的事一边制造delay(延迟)。delay()
命令,这段时间里面其他事都不会发生。理解了基本实例之后,可以从
理解了这个例子以后,从 DigitalReadSerial 实例中学习如何把开关的值读取到 Arduino.
/*
闪烁
打开LED1秒,再关上1秒,如此往复
这个例程可以公开
*/
// 大多数Arduino 的Pin 13 上已经有一个 LED
// 起个名字:
int led = 13 ;
// setup过程只运行一次:
void setup ( ) {
// 把这个数字引脚初始化为输出引脚
pinMode (led , OUTPUT ) ;
}
// loop过程永远循环
void loop ( ) {
digitalWrite (led , HIGH ) ; // 打开LED (电压为HIGH)
delay ( 1000 ) ; // 等1秒
digitalWrite (led , LOW ) ; // 降低电压关上LED
delay ( 1000 ) ; // 等一秒
}
闪烁
打开LED1秒,再关上1秒,如此往复
这个例程可以公开
*/
// 大多数Arduino 的Pin 13 上已经有一个 LED
// 起个名字:
int led = 13 ;
// setup过程只运行一次:
void setup ( ) {
// 把这个数字引脚初始化为输出引脚
pinMode (led , OUTPUT ) ;
}
// loop过程永远循环
void loop ( ) {
digitalWrite (led , HIGH ) ; // 打开LED (电压为HIGH)
delay ( 1000 ) ; // 等1秒
digitalWrite (led , LOW ) ; // 降低电压关上LED
delay ( 1000 ) ; // 等一秒
}
See Also
- setup()
- loop()
- pinMode()
- digitalWrite()
- delay()
- BareMinimum: The bare minimum of code needed to start an Arduino sketch.
- Blink: Turn an LED on and off.
- DigitalReadSerial: Read a switch, print the state out to the Arduino Serial Monitor.
- AnalogReadSerial: Read a potentiometer, print it's state out to the Arduino Serial Monitor.
- Fade: Demonstrates the use of analog output to fade an LED.
- ReadAnalogVoltage : Reads an analog input and prints the voltage to the serial monitor