Категории Статей
Популярные Статьи
Arduino, ИК(IR) приемник и пульт управления
Необходимый набор электронных компонентов: Плата Arduino UNO(или любая другая) Макетная плат ...»
Плавное мигание светодиодом с использованием ШИМ порта
Необходимый набор электронных компонентов: плата Arduino UNO(или любая другая) Макетная плат ...»
Использование RGB светодиода, эффект хамелеона :)
Необходимый набор электронных компонентов: Плата Arduino UNO(или любая другая) Макетная плат ...»

Управление RGB светодиодом с компьютера через USB порт

Необходимый набор электронных компонентов:

  1. Плата Arduino UNO(или любая другая)
  2. Макетная плата breadboard
  3. RGB светодиод с общим катодом
  4. Резисторы 220 Ом 3 штуки
  5. Провода "папа-папа"

Софт:

  1. Arduino IDE

Принципиальная схема подключения:

Схема подключения на макетной плате:

Исходный код программы:

 


/*
    Управление RGB светодиодом с компьютера через USB порт
 */
// Для управления цветом светодиода используем 3 ШИМ порта
int bluePin = 9;
int greenPin = 10;
int redPin = 11;

// Команды управления светодиодом. Цвета и выключение
String COLOR_RED = "red";
String COLOR_BLUE = "blue";
String COLOR_GREEN = "green";
String COLOR_OFF = "off";

void setup() {
  // Инициализация последовательного порта. Устанавливаем скорость 9600 бит/c
  Serial.begin(9600);
  // Инициализируем выходы для нашего RGB светодиода
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);
}



void loop() {
  // В переменную color считываем команду с цветом от ПК
  String color;
  
  // Проверяем, доступны ли данные с ПК
  int check = Serial.available();
  // если есть, то считываем как строку
  if (check > 0) {
    color = Serial.readString();
  }
  
  // Сравниваем поступившую команду с описанными ранее и включаем необходимый цвет на RGB LED 
  if (COLOR_RED.equalsIgnoreCase(color)) {
    setColor(255, 0, 0);
  } else if (COLOR_GREEN.equalsIgnoreCase(color)) {
    setColor(0, 255, 0);
  } else if (COLOR_BLUE.equalsIgnoreCase(color)) {
    setColor(0, 0, 255);
  } else if (COLOR_OFF.equalsIgnoreCase(color)) {
    setColor(0, 0, 0);
  } else if(check > 0){
    // Если команда не распознана, сообщаем пользователю подсказку.
    Serial.println("Send command is bad! Send please \"RED\" \"GREEN\" \"BLUE\" or \"OFF\"!");
  }

}

// Функция включения необходимого цвета на нашем RGB светодиоде
void setColor(int red, int green, int blue) {
  analogWrite(redPin, red);
  analogWrite(greenPin, green);
  analogWrite(bluePin, blue);
}

После загрузки программы на Arduino мы сможем управлять включением различных цветов на RGB светодиоде, а также выключать его.

  Отзывов: 0
Ваше Имя:


Ваш отзыв: Внимание: HTML не поддерживается! Используйте обычный текст.

Оценка: Плохо           Хорошо

Введите код, указанный на картинке:



Последние Статьи
Выпущена новая модель миниатюрного компьютера Raspberry Pi Zero
Выпущена новая модель миниатюрного одноплатного компьютера Raspberry Pi Zero стоимостью около 5$ Гл ...»
16.12.2015    Просмотров: 472
Arduino, ИК(IR) приемник и пульт управления
Необходимый набор электронных компонентов: Плата Arduino UNO(или любая другая) Макетная плат ...»
11.03.2015    Просмотров: 7758
Управление RGB светодиодом с компьютера через USB порт
Необходимый набор электронных компонентов: Плата Arduino UNO(или любая другая) Макетная плат ...»
10.03.2015    Просмотров: 3545
Последние отзывы
Использование RGB светодиода, эффект хамелеона :)
Скорее всего перепутаны пины для RGB светодиода. Попробуйте поменять либо подключение светодиода, либо порядок вызова функции setFadeColor. ...»
05.04.2016    Просмотров: 5336
Администратор
Использование RGB светодиода, эффект хамелеона :)
Хм. Почему-то, всё ещё резкий переход у меня выходит. ...»
05.04.2016    Просмотров: 5336
Summerwind