一板网电子技术论坛

风筝
发表于: 2020-2-3 12:08:53 | 显示全部楼层

Arduino Uno开发板可用于实现LED闪烁。在本篇文章中,我们将使用Arduino Uno控制一个LED灯,实现每1000ms更改一次LED灯的照明状态。

arduino_led.jpg

如何将Arduino Uno连接到LED。


所需的材料清单:

–  Arduino Uno开发板

–  跳线

–  面包板

–  LED灯

–  电阻


LED有两个重要参数:正向电压[V]和正向电流[mA]。通常,这两个值可以在LED型号的规格中找到。本文中使用的LED的正向电压为2.2V,正向电流为30mA。由于Arduino提供5V电压,2.8V(5V-2.2V)必须被一个电阻吸收。根据欧姆定律R = V / I,需要93.3欧姆(2.8V / 0.03A)的电阻。由于一个电阻通常没有93.3欧姆的阻值,因此使用下一个较大阻值的电阻。因此,本文中使用了150欧姆的电阻。如果不知道正向电压/电流,则在大多数情况下使用1k欧姆电阻是安全的。


如何将LED连接到Arduino?

Arduino的GND引脚连接到LED的阴极(通常是短脚)。电阻的其中一个引脚连接到LED的阳极(长脚)。电阻的另一个引脚连接到Arduino的引脚2。由于电流仅在一个方向上流过LED,因此LED不能反向连接。电阻可以反向连接。此外,电阻是连接在GND与LED的阴极之间,还是引脚2与LED的阳极之间都没有关系。

led_bb.jpg

如何将Arduino Uno连接到LED的原理图。


如何编程实现LED闪烁?

首先,定义一个变量(outLED),该变量通过引脚2控制LED。此外,还需要另一个变量来表示LED的状态。由于状态将被切换(打开、关闭、打开、关闭...),因此变量被命名为“toggle”。在setup函数中,引脚“ 2”设置为输出模式。在loop()函数中,通过使用“!”运算符来取反。 “!”在代码中描述闪烁状态非常有用。接下来,将存储在“toggle”中的状态写入引脚“ 2”。最后,添加1000ms的延迟,以便能够感知闪烁效果。

  1. const int outLED = 2; // output pin for LED
  2. boolean toggle = LOW; // variable that is used to store the pin's state (switched on/switched off)
  3. void setup() {
  4.   pinMode(outLED, OUTPUT); // set the LED pin to output mode
  5. }
  6. void loop() {
  7.   toggle = !toggle; // change the state of the LED. If the state represents LOW, then change state to a HIGH value (done by "!" operator) and the outher way around.
  8.   digitalWrite(outLED, toggle); // write state variable to LED pin
  9.   delay(1000); // wait for 1000ms in order to achieve a blinking LED effect
  10. }
复制代码

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题 557 | 回复: 1077



手机版|

GMT+8, 2021-4-15 08:11 , Processed in 0.079104 second(s), 31 queries . Powered by Discuz! X3.4

YiBoard一板网 © 2015-2020 地址:河北省石家庄市长安区高营大街 ( 冀ICP备18020117号 )

快速回复 返回顶部 返回列表