이 프로젝트에서는 5 개의 RGB (Red Green Blue) LED를 Arduino Uno 에 인터페이스 할 것 입니다. 이 LED는 Uno의 PIN 사용량을 줄이기 위해 병렬로 연결됩니다.
일반적인 RGB LED는 아래 그림에 나와 있습니다.
RGB LED에는 그림과 같이 4 개의 핀이 있습니다.
PIN1: 색상 1 음극 단자 또는 색상 1 양극 단자
PIN2: 세 가지 색상 모두에 대해 공통 포지티브 또는 세 가지 색상 모두에 대해 공통 네거티브
PIN3: 색상 2 음극 단자 또는 색상 2 양극 단자
PIN4: 색상 3 음극 단자 또는 색상 3 양극 단자
따라서 RGB LED 에는 두 가지 유형 이 있습니다. 하나는 공통 음극 유형 (공통 음극)이고 다른 하나는 공통 양극 유형 (공통 양극) 유형입니다. CC (Common Cathode 또는 Common Negative)에는 각 단자가 색상을 나타내는 3 개의 양극 단자와 세 가지 색상 모두를 나타내는 1 개의 음극 단자가 있습니다. CC RGB LED의 내부 회로는 다음과 같이 나타낼 수 있습니다.
RED가 위에 있도록하려면 RED LED 핀에 전원을 공급하고 공통 음극을 접지해야합니다. 모든 LED도 마찬가지입니다. CA (Common Anode 또는 Common Positive)에는 각 단자가 색상을 나타내는 3 개의 음극 단자와 세 가지 색상 모두를 나타내는 1 개의 양극 단자가 있습니다. CA RGB LED의 내부 회로는 그림과 같이 나타낼 수 있습니다.
RED가 위에 있도록하려면 RED LED 핀을 접지하고 공통 양극에 전원을 공급해야합니다. 모든 LED도 마찬가지입니다.
우리 회로에서는 CA (Common Anode 또는 Common Positive) 유형을 사용합니다. 5 개의 RGB LED를 Arduino에 연결하려면 일반적으로 5x4 = 20 PIN이 필요합니다. RGB LED를 병렬로 연결하고 멀티플렉싱 이라는 기술을 사용하여이 PIN 사용량을 8 개로 줄 입니다.
구성품
하드웨어: UNO, 전원 공급 장치 (5v), 1KΩ 저항 (3 개), RGB (빨강 녹색 파랑) LED (5 개)
소프트웨어: Atmel studio 6.2 또는 Aurdino nightly.
회로 및 작업 설명
RGB LED Arduino 인터페이스를 위한 회로 연결 은 아래 그림과 같습니다.
이제 까다로운 부분을 위해 SET1의 RED LED와 SET2의 GREEN LED를 켜고 싶습니다. 우리는 UNO의 PIN8 및 PIN9에 전원을 공급하고 PIN7, PIN6을 접지합니다.
이 흐름을 사용하면 첫 번째 SET에는 RED가, 두 번째 SET ON에는 GREEN이 있지만 SET1에는 GREEN, SET2 ON에는 RED가 있습니다. 간단한 비유로 위의 구성으로 4 개의 LED가 모두 회로를 닫고 모두 빛납니다.
따라서이 문제를 해결하기 위해 한 번에 하나의 SET 만 켤 것입니다. t = 0m SEC에서 SET1이 ON으로 조정됩니다. t = 1m SEC에서 SET1은 OFF로 조정되고 SET2는 ON으로 설정됩니다. 다시 t = 6m SEC에서 SET5가 꺼지고 SET1이 켜집니다. 계속됩니다.
여기서 요령은 인간의 눈은 30HZ 이상의 주파수를 포착 할 수 없다는 것입니다. 즉, LED가 30HZ 이상의 속도로 지속적으로 켜지고 꺼지는 경우입니다. 눈은 LED가 계속 켜져있는 것으로 봅니다. 그러나 이것은 사실이 아닙니다. LED는 지속적으로 켜지고 꺼집니다. 이 기술을 멀티플렉싱이라고합니다.
간단히 말해서 우리는 5 개 SET의 각 공통 음극에 1 밀리 초에 전원을 공급할 것이므로 5 밀리 초 안에주기를 완료 할 것이며, 그주기가 SET1에서 다시 시작된 후 이것은 영원히 계속됩니다. LED 세트가 너무 빨리 켜지고 꺼지기 때문입니다. 인간은 모든 SET가 항상 켜져 있다고 예측합니다.
따라서 t = 0 밀리 초에서 SET1에 전원을 공급하면 RED 핀을 접지합니다. t = 1 밀리 초에 SET2에 전원을 공급하고 GREEN 핀을 접지합니다 (이때 RED와 BLUE는 HIGH로 당겨집니다). 루프가 빠르게 진행되고 눈은 FIRST SET에서 RED 빛을, SECOND SET에서 GREEN 빛을 봅니다.
이것이 RGB LED를 프로그래밍하는 방법입니다. 멀티플렉싱이 어떻게 작동하는지 확인하기 위해 프로그램에서 모든 색상을 천천히 빛나게합니다.