|
Управление светодиодами Возьмем простейший случай – управление работой одного светодиода. Последовательно со светодиодом необходимо подключить резистор 220 Ом для понижения напряжения. Обязательно нужно учесть полярность подключения. На фото анод светодиода подключен на 12-ый пин и катод на землю GND. Ниже приведенный скетч заставляет вспыхивать светодиод. За длинной вспышкой идут пять коротких.
// ___Светодиод___ void setup() // начальные установки void loop() // рабочий цикл digitalWrite(12, HIGH); digitalWrite(12, HIGH); digitalWrite(12, HIGH); digitalWrite(12, HIGH); digitalWrite(12, HIGH); }
Оптимизируем программный код за счет применения циклической конструкции for. Теперь скетч будет более компактным.
// ___Светодиод___ void setup() void loop() for(int i=1; i<10; i++) // цикл for digitalWrite(12, HIGH);
Соберем установку, например, из 5-и светодиодов. Классическое подключение нескольких светодиодов предусматривает отдельный резистор для каждого из них. Я решил поставить один общий резистор. Схема заработала правильно. Но недостатком стало слабое понижение яркости свечения светодиодов с включением каждого последующего светодиода. Поэтому советую все таки каждый светодиод подключать через отдельный резистор. В установке задействованы 4, 6, 8, 10 и 12-й пины. Ниже привожу два возможных скетча.
// ___Бегущий огонек___ void setup() { void loop() { digitalWrite(10, HIGH); digitalWrite(8, HIGH); digitalWrite(6, HIGH); digitalWrite(4, HIGH);
// ___Приливная волна___ digitalWrite(10, HIGH); digitalWrite(8, HIGH); digitalWrite(6, HIGH); digitalWrite(4, HIGH); digitalWrite(4, LOW); delay(1000); |
Выбери лучшее! allbest |