Кафедра прикладної радіоелектроніки

[RE-3] Вбудовані системи: мікроконтролери ARM архітектури

Робоча програма навчальної дисципліни (Силабус)

Реквізити навчальної дисципліни

Рівень вищої освітиПерший (бакалаврський)
Галузь знань17 - Електроніка, автоматизація та електронні комунікації
Спеціальність172 - Електронні комунікації та радіотехніка
Освітня програмаВсі ОП
Статус дисципліниВибіркова (Ф-каталог)
Форма здобуття вищої освітиОчна
Рік підготовки, семестрДоступно для вибору починаючи з 2-го курсу, весняний семестр
Обсяг дисципліни4 кред. (Лекц. 18 год, Практ. 0 год, Лаб. 36 год, СРС. 66 год )
Семестровий контроль/контрольні заходиЗалік
Розклад занятьhttps://rozklad.kpi.ua
Мова викладанняУкраїнська / Англійська
Інформація про керівника курсу / викладачів Лекц.: Мосійчук В. С.,
Лаб.: Мосійчук В. С.,
СРС.: Мосійчук В. С.
Розміщення курсуhttps://sylabus.online/course/3-vbudovani_systemy_mikrokontrolery_arm_arkhitektury

Програма навчальної дисципліни

1. Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання

Навчальний курс побудований на основі програми сертифікації інженерів розробників вбудованих систем "ARM Accreditated MCU Enngeineer"  (AAME). У навчальному курсі значну увагу приділено розумінню архітектури процесорів, зокрема ARM архітектури; реалізації алгоритмів керування та контролю у вбудовуваних системах; створеню програмного забезпечення вбудовуваних систем на асемблері та на мові С, початкові навички створення програмного забезпечення вбудовуваних систем з використанням операційних систем.

Окремо розглядаються питання режимів роботи мікроконтролера для зменшення енергоспоживання; концепції переривань та побудови ПЗ для роботи в реальному часі.

На лабораторних роботах освоюється особливості налаштування конфігурації мікроконтролерів, створення проектів в середовищі автоматичної розробки програмного забезпечення для мікроконтролерів; реалізація алгоритмів керування та контролю з використанням  периферійних пристроїв мікроконтролера; виконання оптимізації програмного забезпечення за різними критеріями.

Метою кредитного модуля є формування у студентів здатностей:

  • розуміти архітектуру процесорів;
  • проектувати вбудовуванні системи на основі мікроконтролерів ARM архітектури;
  • реалізовувати алгоритми керування та контролю у вбудовуваних системах;
  • створювати програмне забезпечення вбудовуваних систем на асемблері;
  • створювати програмне забезпечення вбудовуваних систем на мові С;
  • створювати програмне забезпечення вбудовуваних систем з використанням операційних систем.

знання :

  • узагальненої структури та архітектури мікроконтролерів на прикладі процесора ARM Cortex-M0
  • типового набору інструкцій асемблера та використання його для створення програмного забезпечення;
  • режимів роботи мікроконтролера для зменшення енергоспоживання;
  • концепції переривань та побудови ПЗ для роботи в реальному часі.

уміння:

  • налаштовувати конфігурацію мікроконтролера;
  • створювати проекти в середовищі автоматичної розробки програмного забезпечення для мікроконтролерів;
  • реалізовувати алгоритми керування та контролю з використанням  периферійних пристроїв мікроконтролера;
  • виконувати оптимізацію програмного забезпечення за різними критеріями;
  • здатність належно виконувати певні дії, заснована на доцільному використанні людиною набутих знань.

досвід:

  • проектування та реалізації вбудовуванних систем;
  • створення програмного забезпечення для вбудовуваних систем.

2. Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)

Перед початком вивчення курсу бажаним є проходження дисципліни "Цифрові пристрої" або "Цифрова схемотехніка".

3. Зміст навчальної дисципліни

Розділ 1.  Архітектурa 32-х розрядних мікроконтролерів

Тема 1.1: «Осоливості 32-х розрядних архітектур процесорів та переваги їх використання як вбудовуванних систем»

Визначення вбудовуваних систем та систем на кристалі;  переваги RISC архітектури;  особливості 32 розр. процесорів ARM архітектури та мікроконтролерів на  їх основі ;  технології процесорів ARM архітектури: JTAG Debug, Enhanced DSP, Vector Floating Point, EmbeddedICE, Jazelle, Long Multiply, Thrumb.

Тема 1.2: «Архітектура  ARM процесорів»

Регістри, стек, пам’ять програм та даних; допоміжні процесори та взаємодія з ними ;  арифметико-логічний пристрій;  конвеєр команд;  організація пам’яті та керування нею;  виключні стани процесора (переривання) та їх оброблення ; режими роботи процесора.

Тема 1.3: «Організація пам’яті процесора, виключення та переривання Cortex-M0»

Розподіл пам’яті ;  Internal Private Peripheral Bus, діапазони адрес;  формати слідування байтів у пам’яті;  виключення та переривання, таблиця векторів;  визначення пріоритетів переривань.

Тема 1.4: «Особливості створення програмного забезпечення для вбудовуваних систем»

Ініціалізація мікроконтролера; опитування периферійних пристроїв у циклі;  робота за перериваннями;  процес розробки програмного забезпечення;  порівняння програмування на мові асемблер та С;  типи даних та доступ до периферійних пристроїв на С;  стандарт CMSIS;

Тема 1.5: «Набір інструкцій асемблера ARM та Thumb »

Команди переміщення даних;  команди доступу до пам’яті;  команди роботи зі стеком;  команди арифметичних операцій;  команди логічних операцій;  команди зсуву та ротації;

Тема 1.6: «Набір інструкцій асемблера ARM та Thumb»

Команди безумовного та умовного переходу; команди порівняння;  команди групового  трансферу даних;  інші інструкції.

Тема 1.7: «Апаратна підтримка операційних систем»

Побудова ПЗ з підтримкою виконання великої кількості задач;  таймер SysTick, регістри налаштувань;  особливості використання стеку операційною системою;  обробка виключень SVC, PendSV; OC Keil RTX Kerner.

Тема 1.8: «Енергозберігаючі режими мікроконтролера Cortex-M0»

Енергозберігаючі режими;  інструкції WFE та WFI;  конфігурація регістрів ;  особливості розробки пристроїв з низьким рівнем енергоспоживання;

Тема 1.9: «Особливості створення оптимізованого ПЗ на мові С»

Правила яких слід дотримуватись у разі напимання оптимального коду;  варіанти застосування профайлингу (автоматичного визначення параметрів швидкодії та ефективності ПЗ) ;  частота оновлення даних у пам’яті, їх розміщення та швидкість доступу;  особливості визначення параметрів функцій, вказівників, лічильників у циклах та ресурсоємність різних арифметичних операцій.

 

Розділ 2.  Створення програмного забезпечення вбудовуваних систем для 32-розрядних мікроконтролерів

Тема 2.1 Створення програмного забезпечення на мові асемблер

Створення проекту, структура проекту, startup.s, директиви асемблера та лінкера; об’явлення констант та змінних, виклик підпрограм, ініціалізації тактового генератора та системного таймера.  

Тема 2.2 Ладнання програм та пошук помилок (Debugging)

Ладнання програми у режимі симуляції, ладнання програми у режимі відладки, перегляд вмісту регістрів кеш пам’яті процесора, перегляд вмісту основної пам’яті, покрокове виконання програми, точки зупинки, пошук причин, що призводять до появи виключення hard_fault_exception, користування технічною документацією до процесора.  

Тема 2.3 Створення програмного забезпечення на мові С

Створення проекту, структура проекту, startup.s, підключення бібліотек, стандарт CMSIS, використання готових драйверів периферійних пристроїв, створення власного драйверу.  

Тема 2.4 Периферійні пристрої та ефективна робота з ними

Створення власної програми ініціалізації периферійних пристроїв (драйверів) та робота з ними восновній програмі, ініціалізація та оброблення переривань від периферійних пристроїв.  

4. Навчальні матеріали та ресурси

Рекомендована базова література

  1. Yiu J. The Definitive Guide to the ARM Cortex-M0 / J. Yiu . – Newnes, 2011. – 518 p. – ISBN: 978-0-12-385477-3.
  2. Cortex-M0 r0p0 Technical Reference Manual [Електронний документ]. – Режим доступу : http://www.arm.com/downloads/Technical Reference Manual_cortex_m0_r0p0_trm.pdf – Назва з екрану.
  3. Cortex-M0 Devices Generic User Guide [Електронний документ]. – Режим доступу : http://www.arm.com/downloads/Devices Generic User Guide_cortex_m0_r0p0_generic_ug.pdf – Назва з екрану.
  4. ARMv6-M Architecture Reference Manual [Електронний документ]. – Режим доступу : http://www.arm.com/downloads/DDI0419C_arm_architecture_v6m_reference_manual.pdf – Назва з екрану.
  5. NUC140 Datasheet EN V3.02 [Електронний документ]. – Режим доступу : http://www.nuvoton.com/resource-files/DA00-NUC140ENF1.pdf– Назва з екрану.
  6. Technical Reference Manual for NUC140 [Електронний документ]. – Режим доступу : http://www.nuvoton.com/resource-files/TRM_NUC130_NUC140(CN)_Series_EN_Rev2.05.pdf. – Назва з екрану.

Допоміжна

  1. James A. Professional Embedded ARM Development / A. James 
  2. Уилмсхерст Т. Разаботка встроенных систем с помощью микроконтроллеров PIC / Т. Уилмсхерст ; пер. с англ. В.Н. Стаценко и др. – К. : «МК-Пресс», 2008. – 544 с.
  3. Болл С.Р. Аналоговые интерфейсы микроконтроллеров / С.Р. Болл. – М. : Додэка, 2007. – 362 с.
  4. Бэйкер Б. Что нужно знать цифровому инженеру об аналоговой электронике / Б. Бэйкер ; пер. с англ. Ю. С. Магды. – М. : Додэка XXI, 2010. – 360 c. – ISBN:  978-5-94120-170-9.
  5. Магда Ю. С. Программирование и отладка C/C++ приложений для микроконтроллеров ARM / Ю. С. Магда. – М. : ДМК Пресс, 2012. – 168 с. – ISBN: 978-5-94074-745-1.

Інформаційні ресурси

  1. Nuvoton Technology Corporation [Електронний ресурс]. – Режим доступу:  http://nuvoton.com. – Назва з екрану.
  2. ARM Corporation [Електронний ресурс]. – Режим доступу : http://www.arm.com. – Назва з екрану.

Навчальний контент

5. Методика опанування навчальної дисципліни (освітнього компонента)

Лекційні заняття

№ з/п

Назва теми лекції та перелік основних питань (перелік дидактичних засобів, посилання на літературу та завдання на СРС)

1

Тема: «Вбудовуванні системи»

  •  визначення вбудовуваних систем та систем на кристалі;
  •  переваги RISC архітектури;
  •  особливості 32 розр. процесорів ARM архітектури та мікроконтролерів на  їх основі ;
  •  технології процесорів ARM архітектури: JTAG Debug, Enhanced DSP, Vector Floating Point, EmbeddedICE, Jazelle, Long Multiply, Thrumb.

Література:

  • Cortex-M0 Technical Reference Manual, Chapter 1

Завдання на СРС:

  • Порівняти мікроконтролери ARM7TDMI та Cortex-M0
  • Оцінити продуктивність та енергоспоживання мікроконтролера Cortex-M0 з 8-ми розрядними мікроконтролерами

2

Тема: «Архітектура ARM процесорів»

  •  регістри, стек, пам’ять програм та даних;
  •  допоміжні процесори та взаємодія з ними ;
  •  арифметико-логічний пристрій;
  •  конвеєр команд;
  •  організація пам’яті та керування нею;
  •  виключні стани процесора (переривання) та їх оброблення
  •  режими роботи процесора.

Література:

  • James A. Professional Embedded ARM Development,  pp. 29 – 51
  • Yiu J. The Definitive Guide to the ARM Cortex-M0, pp. 34  - 51
  • Cortex-M0 Technical Reference Manual, Chapters: 2, 3, 4, 5, 6
  • Cortex-M0 Devices Generic User Guide, Chapter 2

Завдання на СРС:

  • Виконання арифметичних та логічних операцій над 32 розр. знаковими і без знаковими числами, та визначення активації бітів
    регістру статусу N, Z, C, V.

3

Тема: «Організація пам’яті процесора, виключення та переривання Cortex-M

  •  розподіл пам’яті ;
  •  Internal Private Peripheral Bus, діапазони адрес;
  •  формати слідування байтів у пам’яті;
  •  виключення та переривання, таблиця векторів;
  •  визначення пріоритетів переривань.

Література:

  • Cortex-M0 Technical Reference Manual, Chapter 3
  • Cortex-M0 Devices Generic User Guide, pp. 2-12 – 2-18
  • Yiu J. The Definitive Guide to the ARM Cortex-M0, pp. 130 – 144, 145 – 182

Завдання на СРС:

  • Визначення та конфігурація адреси стеку та програми ініціалізації мікроконтролера;  

4

Тема: «Особливості створення програмного забезпечення для вбудовуваних систем»

  •  ініціалізація мікроконтролера;
  •  опитування периферійних пристроїв у циклі;
  •  робота за перериваннями;
  •  процес розробки програмного забезпечення;
  •  порівняння програмування на мові асемблер та С;
  •  типи даних та доступ до периферійних пристроїв на С;
  •  стандарт CMSIS;

Література:

  • James A. Professional Embedded ARM Development, pp. 52  - 71
  • Yiu J. The Definitive Guide to the ARM Cortex-M0, pp. 51  - 79

Завдання на СРС:

  • Законспектувати положення стандарту CMSIS.

5

Тема: «Набір інструкцій асемблера ARM та Thumb »

  •  команди переміщення даних;
  •  команди доступу до пам’яті;
  •  команди роботи зі стеком;
  •  команди арифметичних операцій;
  •  команди логічних операцій;
  •  команди зсуву та ротації;

Література:

  • Cortex-M0 Devices Generic User Guide, Chapter 3
  • James A. Professional Embedded ARM Development, pp. 121 - 132
  • Yiu J. The Definitive Guide to the ARM Cortex-M0, pp. 80 - 129

Завдання на СРС:

  • Привести приклади програм до кожної інструкції.

6

Тема: «Набір інструкцій асемблера ARM та Thumb»

  •  команди безумовного та умовного переходу;
  •  команди порівняння;
  •  команди групового  трансферу даних;
  •  інші інструкції.

Література:

  • Cortex-M0 Devices Generic User Guide, Chapter 3
  • James A. Professional Embedded ARM Development, pp. 132 - 143
  • Yiu J. The Definitive Guide to the ARM Cortex-M0, pp. 80 - 129

Завдання на СРС:

  • Привести приклади програм до кожної інструкції.

7

Тема: «Апаратна підтримка операційних систем»

  •  побудова ПЗ з підтримкою виконання великої кількості задач
  •  таймер SysTick, регістри налаштувань;
  •  особливості використання стеку операційною системою; 
  •  обробка виключень SVC, PendSV;
  •  OC Keil RTX Kerner.

Література:

  • Yiu J. The Definitive Guide to the ARM Cortex-M0, pp. 183 – 197, 331 – 357

Завдання на СРС:

  • Привести приклади програм обробки виключень SVC, PendSV.

8

Тема: «Енергозберігаючі режими мікроконтролера Cortex-M0»

  •  енергозберігаючі режими;
  •  інструкції WFE та WFI;
  •  конфігурація регістрів ;
  •  особливості розробки пристроїв з низьким рівнем енергоспоживання;

Література:

  • Yiu J. The Definitive Guide to the ARM Cortex-M0, pp. 198 – 211, 310 – 329

Завдання на СРС:

  • Привести приклади програм налаштування енергозберігаючих режимів.

9

Тема: «Особливості створення оптимізованого ПЗ на мові С»

  •  правила яких слід дотримуватись у разі напимання оптимального коду;
  •  варіанти застосування профайлингу (автоматичного визначення параметрів швидкодії та ефективності ПЗ) ;
  •  частота оновлення даних у пам’яті, їх розміщення та швидкість доступу;
  •  особливості визначення параметрів функцій, вказівників, лічильників у циклах та ресурсоємність різних арифметичних операцій 

Література:

  • James A. Professional Embedded ARM Development, pp. 175  - 190.

 

Лабораторні роботи

Дисципліна «Вбудовані системи»  належить до дисциплін, в яких значна увага приділяється практичній складовій навчання. Тому на комп’ютерний практикум виділяється більша кількість аудиторних годин. Основною метою лабораторних занять є експериментальна перевірка теоретичних знань, набуття навиків проектування, реалізації алгоритмів за допомогою програмування на мові асемблер та С, лагодження та верифікація проектів радіотехнічних пристроїв за допомогою моделювання їх на макетах.

№ з/п

Назва лабораторної роботи

Кількість ауд. годин

1

Створення першого проекту в системі KEIL MDK. Формування сигналів заданої тривалості та періоду на виходах мікроконтролера.  Приєднання до  ПВВ світлодіодів. Індикація стану ПВВ.

4

2

Введення інформації з клавіатури. Опитування стану кнопок. Програмна реалізація «антидребезгу». Оброблення подій на коротке та довготривале натиснення кнопки.

4

3

Динамічна індикація. Способи багатофункціонального використання ПВВ. Часове розділення їх використання.  Перекодування даних з двійкового коду в двійково-десятковий.

4

4

Ініціація подій з заданою періодичністю за допомогою переривання по переповненню таймера. Оброблення переривань.

4

5

Використання модуля асинхронної передачі даних UART. Передача даних на ПК. Відображення даних у терміналі ПК. Перекодування даних з двійкового коду в коди таблиці ASCII. Потоковий вивід даних в термінал. Функція printf. Реалізація діалогового меню з користувачем в терміналі ПК та на графічному індикаторі.

4

6

Використання модуля АЦП. Оброблення переривання по завершенню АЦП. Формування частоти дискретизації. Аналогово-цифрове перетворення з використанням режимів зниженого енергоспоживання.

4

7

Формування та декодування ШІМ. Керування швидкістю обертання двигунів постійного струму. Керування кроковими двигунами.

4

8

Послідовні синхронні інтерфейси передачі даних:  SPI, I2C, CAN. Запис та зчитування даних на SD-карту пам’яті.   

4

9

Встановлення OC реального часу (RTOS). Реалізація ПЗ в ОС.

4

Усi лабораторні роботи виконуються в середовищі автоматизованого проектування KEIL на навчальних макетах Nu-LB-NUC140 фірми NUVOTON. Кожен студент отримує індивідуальне завдання, яке виконується ним самостійно на своєму робочому місці, обладнаному персональним комп’ютером та макетом вбудовуваної системи на основі МК. Завдання на лабораторні роботи студенти отримують заздалегідь. Перед початком заняття проводиться опитування для того, щоб оцінити готовність студента до проведення роботи. Після виконання роботи відбувається захист та обговорення отриманих результатів.

Проведення лабораторних робіт планується після вивчення основного матеріалу, оскільки лабораторні роботи комплексні.

6. Самостійна робота студента

№ з/п

Назва теми, що виноситься на самостійне опрацювання

Кількість годин СРС

1

Тема 5. Набір інструкцій асемблера ARM та Thumb

Інструкції ARM набору асемблера та приклади їх застосування

Література:

  • James A. Professional Embedded ARM Development

6

2

Тема 9. Схемотехніка вбудовуванних систем

Тактування МК. Організація живлення та заземлення для мікросхем МК. Рівні сигналів. Формування сигналів керування різного призначення, в тому числі для потужних приводів. Спряження та взаємодія  вбудовуваних систем з аналоговими блоками. Захист радіотехнічних пристроїв від імпульсних завад ядра МК. 

Література:

  • Бэйкер Б. Что нужно знать цифровому инженеру об аналоговой электронике

6

Індивідуальні завдання

Навчальним планом дисципліни «Вбудовані системи» передбачено виконання розрахункової роботи.

Основні цілі РР –  розвинути навички самостійного ведення власного проекту, зокрема розроблення вбудовуваної системи для певного радіотехнічного пристрою за індивідуальним завданням, який і  визначає функціональність котра має бути реалізована МК. 

Організувати взаємодію і роботу з одного з вказаних в індивідуальному завданні зовнішніх периферійним пристроїв з комп’ютером за допомогою мікроконтролеру (МК): АЦП; ЦАП; пам’ять ОЗП; flash пам’ять; LCD дисплей – знаково-графічний; LCD дисплей – графічний; сенсор температури; сенсор прискорення (акселерометр); синтезатор частоти (DDS); пристрій реального часу (RTC).

З комп’ютером зв’язок налаштовується для всіх варіантів однаково через послідовний порт МК за допомогою модуля UART. Мета обміну даних з комп’ютером – контроль правильності роботи мікроконтролерної системи, або ж збереження або відображення отриманих даних, як наприклад від сенсорів, АЦП.

Вся необхідна для виконання роботи інформація щодо організації інтерфейсу доступна в документації на пристрої, що використовуються в якості  периферійних для МК.  Документація (datasheet) доступна для завантаження з сайтів виробників в Інтернет.

У розрахунковій роботі обов’язковими повинні бути наступні розділи:

1.  Алгоритм програми згідно завдання.

  • Ініціалізація необхідних модулів МК;
  • Ініціалізація необхідних згідно з алгоритмом переривань МК;
  • Ініціалізація зовнішнього периферійного пристрою, згідно з варіантом завдання;
  • Обробка переривань;

2. Приведення необхідних розрахунків часу затримки, швидкості передавання для заданої частоти МК.

3.  Лістинги програми з обов’язковими коментарями до команд.

4. Схема електрична принципова вмикання МК з елементами тактового генератора та допоміжними зовнішніми периферійними пристроями.

Політика та контроль

7. Політика навчальної дисципліни (освітнього компонента)

Правила відвідування занять (як лекцій, так і практичних/лабораторних)

Обов'язковими до відвудування та виконання є лабораторні роботи. У разі пропуску цих занять, їх слід відпрацьовувати під час консультацій, або з іншими групами. у разі пропуску лекцій, слід проходити і здавати тести по матеріалам пропущеного заняття. Матеріали лекцій та відео розміщуються на LMS.  

Захист лабораторних робіт

Лабораторні роботи захищаються у день виконання лабораторної роботи. Студент отримує дві оцінки. Перша за активність та ініціативність під час виконання лабораторної роботи та індивідуального занняття. Друга за захист та відповідь на контрольні запитання.

Захист індивідуальних завдань

В межах самостійної роботи студенти виконують завдання по матеріалам лекцій. За результатами перевірки слухачі курсу отримують коментарі від викладача та оцінку. Індивідуальні завдання не перездаються.

Заохочувальні та штрафних балів та політика щодо академічної доброчесності

Найбільш активні студенти та студенти, які виконують окремі завдання зразково можуть отримати до 10 балів до семестрового рейтингу.

Штрафні бали застосовуються у разі видавання чужої роботи за свою з обов'язковим подапльшим її переопрацюванням.

Політика дедлайнів та перескладань

У разі пропуску кінцевих термінів здачі завдань для слухачів курсу зменшується максильний бал по завданням на 10 %.

8. Види контролю та рейтингова система оцінювання результатів навчання (РСО)

Контрольні роботи

Мета МКР – перевірка якості набутих знань на лекціях та контроль самостійної роботи студентів на яку винесено інформацію переважно довідкового характеру, але знання якої є вкрай важливим для досягнення мети дисципліни. Контрольна робота розбита на окремі частини і проводяться в формі самостійних робіт.

Основні задачі, які входять в контрольні роботи:

1. Ініціалізація портів вводу/виводу (ПВВ) МК. Алгоритми і програми для роботи з ними.

2. Ініціалізація та оброблення переривань від основних модулів МК: таймерів, ПВВ та ін.  Підпрограми оброблення переривань.

3. Способи та алгоритми формування точних заданих часових проміжків,  їх програмна реалізація.

4. Ініціалізація формування ШІМ послідовності. Алгоритми і програми формування та декодування ШІМ послідовності.

5. Ініціалізація модуля аналого-цифрового перетворення (АЦП). Алгоритми і програми реалізації дискретизації сигналів. Обробка переривання. Аналого-цифрового перетворення в режимі енергозбереження. Багатоканальне АЦП.

6. Ініціалізація модуля синхронного послідовного порта (SPI, I2C). Приймання та передавання даних за перериваннями.

7. Ініціалізація модуля універсального синхронного/асинхронного приймача/ передавача (USART). Приймання та передавання даних за перериваннями.

Рейтингова система оцінювання результатів навчання

  • Лекції / Вебінари - 18 год; (2 МКР х 15 балів)
  • СРС (6 завд х 5 балів)
  • Лабораторні роботи - 36 год; (8 лаб х 5 балів)
  • Розрахунково-рафічна робота (2 етапи х 15 балів)
Таблиця відповідності рейтингових балів оцінкам за університетською шкалою
Кількість балівОцінка
100-95Відмінно
94-85Дуже добре
84-75Добре
74-65Задовільно
64-60Достатньо
Менше 60Незадовільно
Не виконані умови допускуНе допущено

9. Додаткова інформація з дисципліни (освітнього компонента)

Перелік питань на залік

  1. Організація пам’яті процесора ARM-v6M
  2. Призначення регістрів LR, SP, PC.
  3. Поясніть призначення регістра SPSR.
  4. Команди логічних операцій.
  5. Команди арифметичних та логічних операцій.
  6. Команди BX, BLX. Їх призначення.
  7. Команди LSLS і LSRS, RORS. Приклади застосування.
  8. Команди виклику та повернення з підпрограм.
  9. Команди для роботи з кеш пам’ятю процесора.
  10. Команди умовного переходу. Різновиди суфіксів до команд.
  11. Команди зсуву.
  12. Приклади застосування команд прясого доступу до пам’яті LDR, STR
  13. Робота з бітами на асемблері
  14. Особливості роботи з константами.
  15. Поясніть як виконується команда CMP. Які команди подібні до приведеної?
  16. Яка різниця між командами пересилання даних ADDS R0, R1, #1 та ADDS R0, #7.
  17. Що означають директиви #include, EQU, IMPORT, EXPORT.
  18. Способи формування часової затримки. Приклади з розрахунками.
  19. Призначення стеку.
  20. Команда PUSH та POP, приклади її застосувння.
  21. Приклади застосування команди DTD. Пошукові таблиці.
  22. Порядок розблокування та блокування запису в системні регістри керування.
  23. Приведіть на асемблері аналоги циклів while та for.
  24. Структура портів вводу/виводу. Режими роботи.
  25. Ініціалізація портів вводу/виводу.
  26. Налаштування тактового генератора.
  27. Виконати ініціалізацію тактового генератора з використання помножувача частоти PLL.
  28. Структура модуля USART.
  29. Виконати ініціалізацію модуля UART
  30. Виконати ініціалізацію переривання у разі переповнення таймера TMR0.
  31. Виконати ініціалізацію системного таймера для отримання частоти переривань 1кГц.
  32. Призначення сторожового таймера (WDT) та робота з ним.
  33. Ініціалізація енергозберігаючих режимів.
  34. Система виключень та переривань ARM-v6M.
  35. Контекстне збереження робочих регістрів у разі обробки переривань.
  36. Привести приклад ініціалізації та обробки переривання.
  37. Переривання від системного таймера.
  38. Виконати ініціалізацію переривання на портах вводу/виводу.
     
Опис матеріально-технічного та інформаційного забезпечення дисципліни

Для даного курсу на кафедрі прикладної радіоелектроніки створено спеціалізовану лабораторію мікроконтролерів. За академічною програмою NUVOTON в лабораторії обладнано 20 робочих місць з макетами NUC140 Learning Board з розвинутою переферією та з мікроконтролером ARM Cortex-M0 NUC140VE3CN. На лабораторних роботах використовується програграмне забезпечення IDE KEIL uVision 5 . Для окремих лабортоарних робіт використовується додаткове обладнання  - цифрові оцилографи та генератори.




Робочу програму навчальної дисципліни (силабус):
Складено Мосійчук В. С.;
Ухвалено кафедрою ПРЕ (протокол № 06/2023 від 2023-06-29 )
Погоджено методичною комісією факультету/ННІ (протокол № 06-2023 від 2023-06-29 )