Professional Documents
Culture Documents
Фоменко М.М. - ДА-21 - АОС - РГР
Фоменко М.М. - ДА-21 - АОС - РГР
Керівник роботи
Доцент кафедри СП
Артюхов В.Г.
Виконала
Фоменко М.М
Київ – 2023
Зміст
Вступ 3
Опис завдання 6 3
Елементи проекту 4
3.1 Плата Arduino Nano 328P
4
3.2 LED-стрічка з адресацією
9
3.3 Резистор
10
Загальна схема проекту
11
Блок схема алгоритму
12
Приклад роботи пристрою
14
Висновок
15
Використана література
16
Додаток
17
Вступ
2
Темою проекту є використання Arduino як контроллера LED, адже зараз на
ринку багато пропозицій, пов’язаних з гарним освітленням для дому, тому
хочу зробити це освітлення автоматично керованим за допомогою
персонального комп’ютеру.
Цей проект включає у собі використання різноманітних пристроїв, а саме:
плату Arduino Nano, LED-стрічку з адресацією, блок живлення, резистор,
дроти, usb type-b кабель та трошки навичок використання паяльника.
Звісно, за допомогою Arduino IDE можна буде завантажити нашу программу
до мікроконтролера та дослідити роботу пристрою на практиці.
Опис завдання
Розробити пристрій для контролю адресної ленти з ПК на базі Arduino Nano
та стрічки з світлодіодами WS2812. Пристрій повинен змінювати яскравість
та колір на окремих світлодіодах та реагувати на зміни на екрани
комп’ютера, для чого ми використаємо програму AmbiBox.
3
Елементи проекту
1. Плата Arduino Nano 328P (без додаткових “пінів”).
2. LED-стрічка з адресацією на WS2812 світлодіодах.
3. Блок живлення 5V -- 2A
4. Резистор MF-25 (С2-23) 0.25 Вт, 300 Ом,
5. USB-Type B toMini-USB
4
Пам'ять: 32 кБ з яких 2кб використовується бутлоадер
SRAM: 2 кБ
EEPROM: 1 кБ
Частота: 16МГц
5
Рис. 2 Діаграма архітектури AVR
6
Рис. 3 Місцезнаходження сигналів вводу-виводу
7
Рис. 5 Схема плати
8
3.2 LED-стрічка з адресацією
Характеристики
9
3.3 Резистор
Характеристики
10
Загальна схема проекту
11
Блок схема алгоритму
12
Рис. 11 Блок схема алгоритму
13
Приклад роботи пристрою
Висновок
У роботі було розглянуто будову Arduino Nano 3.0 328p та спроектовано
пристрій для управлінням LED стрічкою з можливістю контролювати окремі
світлодіоди.
15
Використана література
1. Характеристики Arduino
https://arduino.ua/prod166-arduino-nano-v3-0-avr-atmega328p-s-raspaya
nnimi-razemami
2. Програмна модель та архітектура
https://pdf1.alldatasheet.com/datasheet-pdf/view/422609/ATMEL/ATME
GA328.html
3. Схеми Arduino
https://components101.com/microcontrollers/arduino-nano
4. Опис елементів плати
https://micro-pi.ru/arduino-nano-v3-0-%D0%BE%D0%B1%D0%B7%D
0%BE%D1%80-%D0%B4%D1%80%D0%B0%D0%B9%D0%B2%D0
%B5%D1%80%D0%B0/
5. WS2818 схема
https://pdf1.alldatasheet.com/datasheet-pdf/view/1134589/
WORLDSEMI /WS2818A.html
16
Код програми
/*
*/
//----------------------Settings-----------------------
#define OFF_TIME 10 // Time in seconds when LED goes off if signal is missing
#define BRIGHT_CONSTANT 500 // Const for making LED smoother when changing brightness
(less-faster) (0 - 1023)
#define COEF 0.9 // Filtering (0.0 - 1.0), bigger - slower changing brightness
//----------------------Settings-----------------------
uint8_t prefix[] = {'A', 'd', 'a'}, hi, lo, chk, i; // Code Word Ada For connection
void setup()
17
FastLED.addLeds(leds, NUM_LEDS); // Initilizin LEDs
if (START_FLASHES) {
LEDS.showColor(CRGB(255, 0, 0));
delay(500);
delay(500);
LEDS.showColor(CRGB(0, 0, 255));
Serial.begin(serialRate);
Serial.print("Ada\n"); // Connect to PC
void check_connection() {
if (led_state) {
led_state = false;
FastLED.clear();
FastLED.show();
void loop() {
off_timer = millis();
i = 0;
18
goto waitLoop;
chk = Serial.read();
i = 0;
goto waitLoop;
byte r, g, b;
r = Serial.read();
g = Serial.read();
b = Serial.read();
leds[i].r = r;
leds[i].g = g;
leds[i].b = b;
19