- •Практична робота №1 Система переривань. Опитування дискретних датчиків. Організація клавіатури
- •Теоретичні відомості [1-5]
- •Регістр статусу – sreg [1-3].
- •Регістр керування mcu - mcu Control Register – mcucr.
- •Режим Power Down
- •Практична робота №3 Організація динамічної індикації. Робота із світлодіодними матрицями. ПРограмування бігучої стрічки
- •Теоретичні відомості [3, 7]
- •Практична робота №4 Робота з таймерами-лічильниками
- •Теоретичні відомості [1-3, 6, 7]
- •Таймери-лічильники загального призначення
- •Практична робота №5 Перетворення коду в ширину імпульсів
- •Теоретичні відомості [2, 3, 7]
- •Практична робота №6 розробка апаратної частини
- •Теоретичні відомості
- •Призначення
- •Процес вибору
- •Критерії вибору
- •Системні вимоги
- •Основні особливості микроконтролера
- •Можливості микроконтролера
- •Набір команд микроконтролера
- •Переривання микроконтролера
- •Характеристика виробника
- •Підтримка виробника
- •Літературна підтримка
- •Закінчуючи вибір
- •Висновок
- •Види схем Схеми залежно від видів елементів і зв'язків, що входять до складу виробу (установки), поділяють на такі види:
- •Типи схем
- •Правила виконання схем
- •Коди схем
- •Призначення і зміст схеми
- •Правила виконання Загальні вказівки
- •Літерно–цифрові умовні познаки
- •Літерні познаки елементів в електричних принципових схемах за гост 2.710–81[12].
- •Перелік елементів
- •Створення нового проекту
- •Введення тексту програми
- •Збірка проекту
- •Відладка
- •Програмування микроконтролера
- •Практична робота №8 Моделювання роботи
- •Теоретичні відомості
- •Викреслювання схеми Розміщення елементів
- •Масштаб і захоплення
- •Трасування з'єднань
- •Моделювання схеми
- •Практична робота №9
- •Розробка друкованої плати
- •Мета роботи: Отримання навиків роботи з програмою proteus ares створення друкованих плат.
- •Теоретичні відомості
- •Практична робота №10 здІйснення монтажних робіт
- •Теоретичні відомості
- •1. Загальні положення
- •2. Вимоги безпеки перед початком роботи
- •3. Вимоги безпеки під час роботи
- •4. Вимоги безпеки після закінчення роботи
- •5. Вимоги безпеки в аварійних ситуаціях
- •Література Основна
- •Додаткова
Відладка
На написання тексту програми йде 20% часу, а інші 80% – займає процес налагодження проекту (Debug) і доведення його до стану випуску (Release).
Налагодження – етап комп'ютерного розв'язання задачі, при якому відбувається усунення явних помилок у програмі. Часто проводиться з використанням спеціальних програмних засобів – відладчиків.
Виправлення синтаксичних помилок
Якщо при написанні ПО були допущені синтаксичні помилки, то компілятор не зможе відкомпілювати вихідний текст програми і видасть список знайдених помилок (Error List) (рис. 7.6).
Рисунок
7.6 – Помилки та попередження
компілятора
У списку помилок (Errors) показується їх опис та гадане місце розташування.
Також можуть бути присутніми попередження (Warnings) – місця в коді на які слід звернути увагу. Вони можуть викликати помилку під час виконання програми. І повідомлення (Messages).
Після вдалої збірки проекту можна приступити до перевірки логіки роботи програми за допомогою симулятора або на реальному пристрої.
Симуляція роботи програми на ПК
Симуляція – моделювання процесу виконання програми мікроконтролером на персональному комп'ютері. Один з найпотужніших методів налагодження програм.
Для управління процесом симуляції існує панель налагодження (Debug Toolbar), див. рис. 7.7.
Рисунок 7.7 – Панель налагодження проекту
Для зупинки програми в певній точці коду використовуються, так звані, контрольні точки.
Контрольна точка – інструкція, в програмі дійшовши до якої програма переривається. Встановлена контрольна точка відзначена червоним кружком.
Список встановлених контрольних точок (Breakpoints) можна отримати в додаткових функціях.
Для контролю значення змінних оголошених у програмі використовується вікно Locals, див. Рис. 7.8. Контролюючи значення змінних можна зрозуміти логіку роботи ПЗ. (Кнопка знаходиться в додаткових функціях).
Рисунок 7.8 – Вікно контролю локальних змінних
У ході покрокового виконання програми (трасування) розробник контролює стан МК, його периферії і модулів і т. д. в ході роботи програми. Для цього призначена панель налагодження AVR (AVR Debug Toolbar), див. Рис. 7.9.
Рисунок 7.9 – Панель налагодження AVR
У вікні стану процесора можна побачити наступне (рис. 7.10):
Програмний лічильник (Program Counter) – адреса машинної інструкції, яка буде виконана в наступний такт (цикл) роботи МК.
Покажчик стека (Stack Pointer) – адреса вершини стека в пам'яті МК.
Регістр статусу (Status Register) – спеціальний регістр містить статус результату виконання попередньої машинної інструкції. Інакше називається– регістр прапорів.
Лічильник циклів (Cycle Counter) – лічильник циклів пройшли з моменту запуску програми.
Час зупинки (Stop Watch) – час на протязі якого програма виконувалася.
Частота (Frequency) – тактова частота МК. Чим вище тактова частота, тим більше інструкцій МК може виконати за одиницю часу.
Рисунок 7.10 – Вікно стану процесора
Архітектура МК AVR припускає наявність 32 – х 8 – бітних регістрів загального призначення. Останні 6 регістрів формують, так звані, 16 – бітові регістри непрямої адресації (X, Y, Z Registers) – вони використовуються для доступу до пам'яті МК.
Вікно перегляду пам'яті дозволяє переглянути, а при необхідності і модифікувати, будь–яку пам'ять МК (пам'ять програм, пам'ять даних, EEPROM).
Вікно дизасемблювання показує, як програма на мові високого рівня була переведена в машинні коди компілятором.
Вікно перегляду периферії МК представлено на рис. 7.11. У даному вікні показані регістри, що відповідають за роботу вбудованої в МК периферії: порти введення/виведення, таймери, компаратори, комунікаційні інтерфейси та ін.
Рисунок 7.11 – Вікно перегляду периферії МК
