Проход по ссылкам навигацииГлавная : Статьи :

Arduino UNO урок 4 (Бегущий огонь)

Arduino UNO урок 4 (Бегущий огонь)



В Схема псевдо квадро эффекту этом уроке Вход сабвуфера на к157уд2 мы продолжим работу Гирлянда со светодиодами на 220 и pic shema со светодиодами, Хсамодельный осцилограф на ардуино но количество Вход сабвуфера на к157уд2 светодиодов увеличим Счетчик витков на базе андроид до 5. И Схема псевдо квадро эффекту сделаем эффект бегущего огня. Вход сабвуфера на к157уд2 Для управления светодиодами будем Гирлянда со светодиодами на 220 и pic shema использовать манипуляции с Вход сабвуфера на к157уд2 портами Хсамодельный осцилограф на ардуино Arduino. Мы будем напрямую записывать Вход сабвуфера на к157уд2 данные Вход сабвуфера на к157уд2 в порты Счетчик витков на базе андроид Arduino. Это лучше, чем Схема псевдо квадро эффекту работать с Вход сабвуфера на к157уд2 конкретными входами/выходами контроллера. Гирлянда со светодиодами на 220 и pic shema Это позволит Хсамодельный осцилограф на ардуино установить значения Вход сабвуфера на к157уд2 для светодиодов Счетчик витков на базе андроид при помощи одной Схема псевдо квадро эффекту лишь операции.

У Arduino Вход сабвуфера на к157уд2 UNO имеется 3 порта:Гирлянда со светодиодами на 220 и pic shema B>
B (цифровые входа/выхода Вход сабвуфера на к157уд2 с Хсамодельный осцилограф на ардуино 8 по 13)
C (аналоговые Вход сабвуфера на к157уд2 входа)
Вход сабвуфера на к157уд2 D (цифровые Счетчик витков на базе андроид входа/выхода с 0 по Схема псевдо квадро эффекту 7)

Каждый Вход сабвуфера на к157уд2 порт управляется 3 Гирлянда со светодиодами на 220 и pic shema регистрами. Регистр Хсамодельный осцилограф на ардуино DDR определяет Вход сабвуфера на к157уд2 чем будет Счетчик витков на базе андроид являться нога (pin) Схема псевдо квадро эффекту входом или выходом. При Вход сабвуфера на к157уд2 помощи регистра PORT можно Гирлянда со светодиодами на 220 и pic shema установить pin в Вход сабвуфера на к157уд2 состояние Хсамодельный осцилограф на ардуино HIGH или LOW. При помощи Вход сабвуфера на к157уд2 регистра Вход сабвуфера на к157уд2 PIN можно Счетчик витков на базе андроид считать состояние ножек Arduino, Схема псевдо квадро эффекту когда они Вход сабвуфера на к157уд2 работает на вход.

Гирлянда со светодиодами на 220 и pic shema Мы будем Хсамодельный осцилограф на ардуино использовать порт Вход сабвуфера на к157уд2 B. Сначала, Счетчик витков на базе андроид мы должны установить Схема псевдо квадро эффекту все ножки порта B Вход сабвуфера на к157уд2 как цифровые выхода. У Гирлянда со светодиодами на 220 и pic shema порта B имеется Вход сабвуфера на к157уд2 только Хсамодельный осцилограф на ардуино 6 ножек. Биты регистра для Вход сабвуфера на к157уд2 В-порта Вход сабвуфера на к157уд2 DDRB должны Счетчик витков на базе андроид быть установлены в 1, Схема псевдо квадро эффекту если нога Вход сабвуфера на к157уд2 будет использоваться как Гирлянда со светодиодами на 220 и pic shema выход (OUTPUT), Хсамодельный осцилограф на ардуино и в Вход сабвуфера на к157уд2 0, если Счетчик витков на базе андроид нога будет использовать Схема псевдо квадро эффекту как вход (INPUT). Биты Вход сабвуфера на к157уд2 портов нумеруются с 0 Гирлянда со светодиодами на 220 и pic shema по 7, но Вход сабвуфера на к157уд2 не Хсамодельный осцилограф на ардуино всегда содержат все 8 ног.
Вход сабвуфера на к157уд2 Пример:
Вход сабвуфера на к157уд2 DDRB = Счетчик витков на базе андроид B00111110; // установить ножки Схема псевдо квадро эффекту порта В Вход сабвуфера на к157уд2 с 1 по Гирлянда со светодиодами на 220 и pic shema 5 как Хсамодельный осцилограф на ардуино выхода, а Вход сабвуфера на к157уд2 0 как Счетчик витков на базе андроид вход.

Обратите внимание, Схема псевдо квадро эффекту что в микроконтроллерах фирмы Вход сабвуфера на к157уд2 Microchip все наоборот. 0 Гирлянда со светодиодами на 220 и pic shema бит - нога Вход сабвуфера на к157уд2 работает Хсамодельный осцилограф на ардуино как выход, а 1 - Вход сабвуфера на к157уд2 как Вход сабвуфера на к157уд2 вход.

В Счетчик витков на базе андроид нашем проекте бегущего огня Схема псевдо квадро эффекту мы будем Вход сабвуфера на к157уд2 использовать 5 выходов:
Гирлянда со светодиодами на 220 и pic shema DDRB = Хсамодельный осцилограф на ардуино B00011111; // Вход сабвуфера на к157уд2 установить ноги Счетчик витков на базе андроид порта В с Схема псевдо квадро эффекту 0 по 4 как Вход сабвуфера на к157уд2 выхода

Для записи значений Гирлянда со светодиодами на 220 и pic shema в порт В Вход сабвуфера на к157уд2 необходимо Хсамодельный осцилограф на ардуино использовать регистр PORTB.
Зажечь первый Вход сабвуфера на к157уд2 светодиод Вход сабвуфера на к157уд2 можно командой:
Счетчик витков на базе андроид PORTB = B00000001;
первый Схема псевдо квадро эффекту и четвертый:
Вход сабвуфера на к157уд2 PORTB = B00001001;

Гирлянда со светодиодами на 220 и pic shema Теперь вы Хсамодельный осцилограф на ардуино видите, как Вход сабвуфера на к157уд2 легко мы Счетчик витков на базе андроид можем включать и Схема псевдо квадро эффекту выключать светодиоды. Теперь расскажем Вход сабвуфера на к157уд2 вам об операторах сдвига

Гирлянда со светодиодами на 220 и pic shema Есть 2 оператора Вход сабвуфера на к157уд2 двоичного Хсамодельный осцилограф на ардуино сдвига: оператор сдвига влево << Вход сабвуфера на к157уд2 и Вход сабвуфера на к157уд2 оператор сдвига Счетчик витков на базе андроид вправо >>. Оператор сдвига Схема псевдо квадро эффекту влево << Вход сабвуфера на к157уд2 заставляет все биты Гирлянда со светодиодами на 220 и pic shema сдвигаться влево, Хсамодельный осцилограф на ардуино соответственно оператор Вход сабвуфера на к157уд2 сдвига вправо >> сдвигает биты Схема псевдо квадро эффекту вправо.

Пример:
varA = Вход сабвуфера на к157уд2 1; // 00000001
varA Гирлянда со светодиодами на 220 и pic shema = 1 << Вход сабвуфера на к157уд2 0; Хсамодельный осцилограф на ардуино // 00000001
varA = Вход сабвуфера на к157уд2 1 << 1; // Счетчик витков на базе андроид 00000010
varA = 1 << 2; Вход сабвуфера на к157уд2 // 00000100

Вход сабвуфера на к157уд2


Теперь Гирлянда со светодиодами на 220 и pic shema вернемся к Хсамодельный осцилограф на ардуино нашей программе, Вход сабвуфера на к157уд2 которая показана Счетчик витков на базе андроид ниже.
Нам нужно Схема псевдо квадро эффекту ввести 2 переменные: первая Вход сабвуфера на к157уд2 upDown будет содержать значение Гирлянда со светодиодами на 220 и pic shema куда двигаться - Вход сабвуфера на к157уд2 вверх Хсамодельный осцилограф на ардуино или вниз, а вторая cylon Вход сабвуфера на к157уд2 какие Вход сабвуфера на к157уд2 светодиоды зажигать.

Счетчик витков на базе андроид В функции setup() мы Схема псевдо квадро эффекту определяем какие Вход сабвуфера на к157уд2 ножки должны работать Гирлянда со светодиодами на 220 и pic shema как Хсамодельный осцилограф на ардуино выхода.

В главном Вход сабвуфера на к157уд2 цикле программы Счетчик витков на базе андроид loop(), светодиоды по Схема псевдо квадро эффекту очереди загораются вверх путем Вход сабвуфера на к157уд2 увеличения переменной cylon, а Гирлянда со светодиодами на 220 и pic shema когда доходит до Вход сабвуфера на к157уд2 самого Хсамодельный осцилограф на ардуино верхнего, то переменной upDown присваивается Вход сабвуфера на к157уд2 0 Вход сабвуфера на к157уд2 и светодиоды Счетчик витков на базе андроид загораются вниз по очереди.

Схема псевдо квадро эффекту /*
  Бегущий Вход сабвуфера на к157уд2 огонь. 5 светодиодов
 Гирлянда со светодиодами на 220 и pic shema */
 
unsigned Хсамодельный осцилограф на ардуино char upDown=1;     Вход сабвуфера на к157уд2 // начинаем Счетчик  витков на базе андроид с движения вверх   
Схема псевдо квадро эффекту unsigned char cylon=0;      // Вход сабвуфера на к157уд2 определяет очередность LED
 
void Гирлянда со светодиодами на 220 и pic shema setup() {               
  DDRB Вход сабвуфера на к157уд2 = Хсамодельный осцилограф на ардуино B00011111;         // устанавливаем порт B Вход сабвуфера на к157уд2 с Вход сабвуфера на к157уд2 0 по Счетчик  витков на базе андроид 4 как выхода  
}
 
Схема псевдо квадро эффекту void loop() Вход сабвуфера на к157уд2 {
  if(upDown==1){                // Гирлянда со светодиодами на 220 и pic shema если идем Хсамодельный осцилограф на ардуино вверх, то
    Вход сабвуфера на к157уд2 cylon++;
    if(cylon>=4) Счетчик  витков на базе андроид upDown=0;      // когда Схема псевдо квадро эффекту достигнут наибольший номер LED, Вход сабвуфера на к157уд2 то в след. цикле Гирлянда со светодиодами на 220 и pic shema идем вниз
  }
  Вход сабвуфера на к157уд2 else Хсамодельный осцилограф на ардуино {
    cylon--;
    if(cylon==0) upDown=1;      // Вход сабвуфера на к157уд2 когда Вход сабвуфера на к157уд2 достигнут наименьший Счетчик  витков на базе андроид номер LED, то в Схема псевдо квадро эффекту след. цикле Вход сабвуфера на к157уд2 идем вверх
  }
  Гирлянда со светодиодами на 220 и pic shema PORTB = Хсамодельный осцилограф на ардуино 1 << Вход сабвуфера на к157уд2 cylon;         //сдвиг
  Счетчик  витков на базе андроид delay(200);                   // пауза Схема псевдо квадро эффекту 200 мс
}