Similar presentations:
Презентація без назви
1.
міністерство освіти і науки українинаціональний університет «Львівська політехніка»
інститут інформаційно-комунікаційних технологій та електронної інженерії
кафедра радіоелектронних технологій інформаційних систем
ЗВІТ ПРО КУРСОВУ РОБОТУ
з дисципліни «Проєктування пристроїв на мікроконтролерах та
ПЛІС»
ПРОЄКТУВАННЯ ОДНОКАНАЛЬНОГО ГЕНЕРАТОРА ІМПУЛЬСІВ
З ПРОГРАМОВАНИМИ ПАРАМЕТРАМИ НА ОСНОВІ PSOC4
Підготував:
ст. групи АП-31
Чижевський Михайло
Прийняла:
к.т.н., зав. каф. РЕТС
Дарія Бачик
2.
ВступУ даній курсовій роботі розроблено одноканальний генератор імпульсів на
базі мікроконтролера PSoC4 з програмованими часовими параметрами.
Керування генератором здійснюється через інтерфейс UART за допомогою
АТ-команд формату AT+10.16=D+H+L. Формування імпульсів реалізовано з
використанням таймера та системи переривань з періодом 500 мс, що
забезпечує точність і стабільність роботи пристрою.
3.
Технічне завданняНеобхідно розробити одноканальний цифровий генератор імпульсів на базі
мікроконтролера PSoC4. Генератор повинен формувати імпульсний сигнал з
програмно заданими параметрами: початкова затримка D, тривалість
імпульсу H та пауза між імпульсами L. Налаштування параметрів
здійснюється через інтерфейс UART за допомогою АТ-команд, де одна
умовна одиниця часу відповідає 500 мс. Після приймання коректної команди
генерація імпульсів перезапускається.
4.
Індивідуальний варіантВаріант №10.
Формат команди:
AT+<N>.<K>=<D>+<H>+<L>, де N = 10, K = 16.
Параметри D, H, L задаються цифрами від 0 до 9.
Колір світлодіода: R = 1, G = 0, B = 0.
5.
Концепція реалізації пристроюДля реалізації одноканального генератора імпульсів була обрана платформа PSoC4,
оскільки вона дозволяє поєднати апаратні компоненти та програмну логіку в одному пристрої
без використання зовнішніх модулів.
У проєкті використовується таймер, який формує базову одиницю часу 500 мс, та
UART, через який користувач передає команди для задання параметрів генератора. Завдяки
цьому параметри імпульсів можна змінювати програмно без зміни апаратної частини.
Робота пристрою побудована на використанні переривань таймера, які забезпечують
послідовну зміну станів вихідного сигналу відповідно до заданих параметрів. Програмна
частина відповідає за обробку команд і оновлення налаштувань генератора, а апаратна за
точне відлічування часу.
6.
Конфігурація програмно-апаратних компонентів PSoC4Timer — формує базовий часовий інтервал
500 мс, який використовується для відліку
затримки, імпульсу та паузи.
Interrupt (ISR) — обробляє переривання від
таймера та керує зміною станів генератора.
Digital Output Pin — формує вихідний
імпульсний сигнал та керує світлодіодом.
LFClk 32 kHz — забезпечує стабільне
тактування таймера для точного формування
часових інтервалів.
UART (SCB) — використовується для
приймання АТ-команд з комп’ютера через
термінал RealTerm.
7.
Алгоритм ChannelController()Викликається таймерним перериванням кожні
500 мс
Послідовно обробляє фази D (затримка), H
(імпульс), L (пауза)
Зменшує відповідний лічильник на кожному
виклику
Керує станом вихідного піна (ON / OFF)
Після завершення циклу перезапускає
лічильники
8.
Алгоритм UpdateChannelDescriptor()Тимчасово вимикає глобальні
переривання
Оновлює параметри D, H, L для вибраного
каналу
Синхронізує поточні та максимальні
значення лічильників
Примусово вимикає вихідний сигнал
Вмикає переривання та завершує роботу
9.
UartBufferParserПеревіряє формат АТ-команди:
(A, T, +, 10, 16, = 0 + 0 + 0)
Контролює, що параметри D, H, L є цифрами
Перетворює ASCII-символи у числові значення
Перевіряє допустимий діапазон параметрів
Оновлює параметри генератора або виводить
помилку
10.
UartDataReader()Опитує UART на наявність нового символу
Ігнорує відсутність даних
Відображає прийнятий символ у терміналі
Формує буфер АТ-команди
Запускає аналіз команди після заповнення
буфера
11.
Експериментальна перевірка1. Перевірка коректної роботи пристрою
2. Перевірка помилок фіксованих символів
3. Перевірка значень параметрів N та K.
4. Перевірка типу параметрів D, H та L
12.
Відео перевірки на стійкість до помилок13.
ВИСНОВОКРозроблено одноканальний генератор імпульсів на базі PSoC4
Реалізовано керування параметрами через UART за допомогою АТ-команд
Формування часових інтервалів здійснюється апаратним таймером з
періодом 500 мс
Забезпечено стабільну та точну роботу генератора
Закріплено навички роботи з PSoC Creator, таймерами, UART та
перериваннями