- Кількість кредитів 3
- Тип Обов'язковий
- Семестри 5, 11
- Рівень вищої освіти Бакалавр, Магістр
- Підсумковий контроль Залік
⚡Квест: Взаємодія софту й заліза на Edge Computing!
Втомився від високорівневих абстракцій? Час підкорити кристал! Спустись на рівень заліза та пиши ефективний C/C++ код для AVR, STM32 та ESP32. Конфігуруй регістри GPIO, приручай асинхронні переривання ISR, зчитуй датчики через ADC, керуй двигунами по PWM та налаштовуй шини UART, I2C, SPI. Ліквідуй фризи за допомогою неблокуючого коду на кінцевих автоматах, логуй дані у LittleFS та деплой телеметрію по Wi-Fi у хмару MQTT.
🚀Вдихни життя в залізо своїм кодом!
🛠Стек: C/C++, PlatformIO, Wokwi, AVR/Arduino, ESP32, STM32, I2C/SPI, MQTT, LittleFS.
🎒В рюкзак: Працездатний розумний IoT-пристрій з повною схемотехнікою у Wokwi.
⚡Квест: Підкори регістри GPIO, опануй асинхронні переривання ISR та розгорни автономний IoT-вузол на базі ESP32 та STM32!
🌐Опис місії
Писати софт під потужні сервери вміє кожен, але вміти оптимізувати алгоритми під жорсткі обмеження кілобайтів пам'яті, писати драйвери під залізо на рівні бітових масок та створювати автономні гаджети — це ознака елітного інженера. Сучасний IT-ринок відчуває колосальний дефіцит розробників вбудованих систем (Embedded) та архітекторів Інтернету речей (IoT). Цей квест — твій інструментальний місток між комп'ютерною архітектурою та реальним фізичним світом. Ми навчимо тебе читати даташіт, конфігурувати регістри спеціальних функцій, керувати вбудованими аналогово-цифровими перетворювачами (ADC) та проєктувати швидкісні шини зв'язку. Ти дізнаєшся все про анатомію кристалів AVR та ARM Cortex-M, повну відмову від блокуючого коду на користь неблокуючих кінцевих автоматів (State Machine), логування у LittleFS, безпеку OTA-оновлень та хмарну інтеграцію за протоколом MQTT. Створи свій перший розумний пристрій, підтверди на логічному аналізаторі точність передачі сигналів та стань архітектором периферійних обчислень (Edge Computing)!
🛠Твій інструментарій
Development Environments & Simulators (AI-driven Development): PlatformIO / VS Code (професійне вбудоване ПЗ), Arduino IDE 2.x, Wokwi / Autodesk Tinkercad (хмарні онлайн-емулятори мікроконтролерів, датчиків та шин зв'язку без наявності фізичного заліза).
Hardware Platforms & Architectures: AVR (Arduino Uno/Nano), ESP32 (Espressif Systems — індустріальний стандарт IoT та Edge Computing), STM32 (STMicroelectronics — 32-бітні чіпи на базі ARM Cortex-M, вивчення HAL).
Communication Protocols & Peripheral Interfaces: UART/USART, шина I2C (TWI, архітектура Master-Slave), шина SPI (високошвидкісний чотирипровідний інтерфейс), порти цифрового введення/виведення GPIO.
Embedded Libraries & Protocol Stacks (Open-Source): Wire.h, SPI.h, WiFi.h, PubSubClient (MQTT-клієнт), Mosquitto / HiveMQ (брокери повідомлень), SD.h, FS.h, LittleFS (файлові системи вбудованих сховищ).
Electronic Hardware Components: Безпайкові макетні плати (Breadboards), датчики DHT11/BMP280, символьні дисплеї HD44780, OLED-екрани SSD1306, матричні клавіатури, реле, сервоприводи.
AI-Driven Core Orchestration: GitHub Copilot, Cursor AI (автогенерація коду ініціалізації периферії, розрахунок бітових масок регістрів, пошук апаратних конфліктів).
🚀Що прокачаєш (Суперсили)
Low-Level Hardware Interoperability: Навчишся управляти пам'яттю (SRAM/Flash) та конфігурувати GPIO-регістри напрямку даних (DDR, PORT, PIN), повністю ліквідуючи програмне й апаратне деренчання контактів (Debouncing).
Asynchronous Interrupts & State Machines: Опануєш написання надшвидких обробників переривань (ISR) з використанням модифікатора volatile та проєктування архітектур коду на базі неблокуючих лічильників (millis()) та кінцевих автоматів.
Advanced Signaling & Display Systems: Навчишся програмувати апаратні таймери для широтно-імпульсної модуляції (PWM), налаштовувати опорну напругу ADC та створювати кастомні гліфи й меню для OLED/LCD дисплеїв.
Cloud IoT Integration & Storage: Прокачаєш навички побудови клієнт-серверних архітектур, логування даних із технологією вирівнювання зносу флеш-пам'яті (Wear Leveling) та передачі телеметрії за протоколом MQTT під захистом TLS/SSL.
🎒Що покладеш у рюкзак (Портфоліо)
На фінальному захисті у формі Pitch-доповіді з демонстрацією стабільності головного циклу loop() та аналізу схемотехніки «під капотом» ти презентуєш свій Розумний мікроконтролерний пристрій моніторингу, керування та аналізу даних (IoT Microcontroller Node), завантажений на GitHub:
Schematic Blueprint & Topology: Принципова електрична схема пристрою, експортована з EDA-систем чи Wokwi, з обґрунтуванням номіналів підтягуючих та обмежувальних резисторів.
Non-Blocking Firmware Engine: Вихідний C/C++ код прошивки, повністю побудований на неблокуючій логіці часових міток без використання delay(), де робота з периферією виділена у класи.
Multi-Sensor Processing Node: Програмний модуль зчитування даних з двох різнотипних датчиків (аналогового через ADC та цифрового через шини I2C/SPI).
Interrupt-Driven UI Module: Інтерактивна система локального керування (багаторівневе меню на дисплеї) з обробкою навігації через апаратні переривання кнопок чи клавіатури.
Telemetry Cloud & Storage Gateway: Працюючі модулі автономного логування метрик у файлову систему LittleFS/SD та бездротової передачі даних по Wi-Fi у хмарну IoT-панель за допомогою MQTT/HTTP.
💼Твій майбутній тайтл
Ці солідні інженерні навички взаємодії софту й заліза миттєво відкривають шлях у високотехнологічні R&D сектори:
Embedded Software Engineer / Firmware Developer.
IoT Systems Architect / Hardware-Software Integrator.
Systems Programmer (with Edge Computing/Automation focus).
Robotics Software Engineer / QA Embedded Performance Analyst.