아두이노 나노 - 여러 LED 깜박임 | Arduino Nano - Blink multiple LED

이 튜토리얼은 지연 함수를 사용하지 않고 각각의 주파수로 여러 LED들이 동시에 깜박이도록 Arduino Nano를 프로그래밍하는 방법을 안내합니다. 예시로 세 개의 LED를 사용할 것입니다만, 더 많은 LED를 포함시키기 위해 설정을 쉽게 확장할 수 있습니다.

준비물

1×Arduino Nano Amazon
1×USB A to Mini-B USB cable 쿠팡 | Amazon
1×LED Amazon
1×220 ohm resistor Amazon
1×Breadboard 쿠팡 | Amazon
1×Jumper Wires Amazon
1×(Optional) DC Power Jack 쿠팡 | Amazon
1×(Recommended) Screw Terminal Expansion Board for Arduino Nano 쿠팡 | Amazon
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.

LED에 관하여

우리는 LED에 관한 구체적인 튜토리얼을 가지고 있습니다. 이 튜토리얼은 하드웨어 핀아웃, 작동 원리, 아두이노 나노와의 배선 연결, 아두이노 나노 코드 등에 관한 자세한 정보와 단계별 지침을 포함하고 있습니다... 이에 대해 더 알아보려면 다음 링크를 참조하세요:

아두이노 나노 - LED 튜토리얼

(BASE_URL/tutorials/arduino-nano/arduino-nano-led)

선연결

Arduino Nano multiple LED Wiring Diagram

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

아두이노 나노 코드 - 여러 LED 깜빡임

여러 개의 LED를 깜박이려면 delay() 함수를 사용할 수 없습니다. 대신, millis() 함수를 사용하고 타임스탬프를 관리해야 합니다.

여러 개의 LED를 깜박이면서 타임스탬프를 관리하는 것은 초보자에게 도전적일 수 있습니다. 다행히도 ezLED 라이브러리는 내부적으로 타임스탬프를 관리하여 여러 개의 LED를 깜박이는 과정을 단순화합니다. 이를 통해 사용자가 이 라이브러리를 사용할 때 타임스탬프 관리를 직접 할 필요가 없어집니다. 또한, LED 배열을 사용함으로써 코드의 명확성과 간결함을 향상시킬 수 있습니다.

/* * 이 Arduino Nano 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino Nano 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-nano/arduino-nano-blink-multiple-led */ #include <ezLED.h> // ezLED 라이브러리 #define PIN_LED_1 4 // LED 1에 연결된 아두이노 나노 핀 #define PIN_LED_2 5 // LED 2에 연결된 아두이노 나노 핀 #define PIN_LED_3 6 // LED 3에 연결된 아두이노 나노 핀 ezLED led1(PIN_LED_1); // PIN_LED_1에 연결된 핀으로 ezLED 객체 생성 ezLED led2(PIN_LED_2); // PIN_LED_2에 연결된 핀으로 ezLED 객체 생성 ezLED led3(PIN_LED_3); // PIN_LED_3에 연결된 핀으로 ezLED 객체 생성 void setup() { Serial.begin(9600); led1.blink(500, 500); // 500ms 켜짐, 500ms 꺼짐, 즉시 깜빡임 led2.blink(200, 800); // 200ms 켜짐, 800ms 꺼짐, 즉시 깜빡임 led3.blink(200, 200); // 200ms 켜짐, 200ms 꺼짐, 즉시 깜빡임 } void loop() { led1.loop(); // loop() 함수에서 led1.loop() 함수를 꼭 호출해야 함 led2.loop(); // loop() 함수에서 led2.loop() 함수를 꼭 호출해야 함 led3.loop(); // loop() 함수에서 led3.loop() 함수를 꼭 호출해야 함 // 여기서 무언가를 실행 }

사용 방법

  • 제공된 다이어그램에 따라 컴포넌트를 연결하세요.
  • USB 케이블을 사용하여 컴퓨터에 아두이노 나노 보드를 연결하세요.
  • 컴퓨터에서 아두이노 IDE를 실행하세요.
  • Arduino Nano 보드와 해당하는 COM 포트를 선택하세요.
  • 아두이노 IDE의 왼쪽 바에 있는 Libraries 아이콘을 클릭하세요.
  • "ezLED"를 검색한 다음, ArduinoGetStarted의 led 라이브러리를 찾으세요.
  • EzLED 라이브러리를 설치하려면 Install 버튼을 클릭하세요.
Arduino Nano led library
  • 위의 코드를 복사하고 Arduino IDE에 붙여넣으세요.
  • Arduino IDE에서 Upload 버튼을 클릭하여 코드를 컴파일하고 Arduino Nano 보드에 업로드하세요.
How to upload Arduino Nano code on Arduino IDE

LED 상태를 확인하세요.

아두이노 나노 코드 - 배열을 사용하여 여러 LED 깜빡이기

위의 코드를 LED 배열을 사용하여 최적화할 수 있습니다. 아래 코드는 배열을 사용하여 LED 객체를 관리합니다.

/* * 이 Arduino Nano 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino Nano 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-nano/arduino-nano-blink-multiple-led */ #include <ezLED.h> // ezLED 라이브러리 #define NUM_LED 3 // LED 세 개 #define PIN_LED_1 4 // LED 1에 연결된 아두이노 나노 핀 #define PIN_LED_2 5 // LED 2에 연결된 아두이노 나노 핀 #define PIN_LED_3 6 // LED 3에 연결된 아두이노 나노 핀 ezLED ledArray[NUM_LED] = { ezLED(PIN_LED_1), // 핀 PIN_LED_1에 연결된 ezLED 객체 생성 ezLED(PIN_LED_2), // 핀 PIN_LED_2에 연결된 ezLED 객체 생성 ezLED(PIN_LED_3) // 핀 PIN_LED_3에 연결된 ezLED 객체 생성 }; void setup() { Serial.begin(9600); ledArray[0].blink(500, 500); // 500ms 켜짐, 500ms 꺼짐, 즉시 깜박임 ledArray[1].blink(200, 800); // 200ms 켜짐, 800ms 꺼짐, 즉시 깜박임 ledArray[2].blink(200, 200); // 200ms 켜짐, 200ms 꺼짐, 즉시 깜박임 } void loop() { for (int i = 0; i < NUM_LED; i++) ledArray[i].loop(); // loop()에서 led.loop() 함수를 반드시 호출해야 함 // 여기서 무언가를 실행 }

유연한 점멸을 위해, ezLED 라이브러리의 다른 기능들을 참조하십시오.

동영상

비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!