Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторні роботи.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
6.67 Mб
Скачать

6 Відладка програми

Під відладкою мається на увазі послідовне виконання програми з контролем вмісту регістрів мікроконтролера (перевірка на низькому рівні) і змінних (перевірка на програмному рівні). Для налагодження програм в AVR Studio використовують команди меню Debug і кнопки однойменної панелі інструментів.

Перш, ніж розглянути ці команди має сенс роз'яснити таке поняття як "точка переривання". Точка переривання (breakpoint) - це рядок вихідного коду, на якій робота програми припиняється. Таких точок (позначаються коричневим кружком ліворуч від рядка) може бути встановлено стільки ж, скільки ефективних рядків у програмі. Для установки/видалення точки переривання в поточному рядку служить команда меню Debug ► Toggle Breakpoint (клавіша <F9>) або відповідна кнопка панелі інструментів Debug. Для видалення всіх розставлених в програмі точок переривання служить команда меню Debug ► Remove Breakpoints або кнопка Clear all breakpoints панелі інструментів Debug. Для послідовного переходу від однієї точки переривання до іншої використовується команда меню Debug ► Next Breakpoint або комбінація клавіш <Ctrl+F9>.

Для переходу в режим відладки використовуються наступні команди меню

Debug (малюнок 13):

Малюнок 13 - Програми для переходу в режим відладки

1 Run, Auto Step - перехід в режим відладки відбувається, якщо зустрічається точка переривання;

2 Step Into (клавіша <F 11>) - виконує поточну команду із заходом в підпрограми (всі вікна оновлюються);

3 Step Over (клавіша <F10>) - виконує поточну команду без заходу в підпрограми (всі вікна оновлюються);

4 Step Out (комбінація клавіш <Shift+Fl 1>) - запускає програму і виконує її до тих пір, поки не зустрінеться закінчення поточної підпрограми; якщо хід виконання перебуває в області основної програми, то програма буде виконуватися до тих пір, поки не буде зупинена користувачем командою Break або не зустріне точку переривання;

5 Run To Cursor (комбінація клавіш <Ctrl+F10>) - запускає програму, що виконується до тих пір, поки не буде досягнута позиція курсору у вікні вихідного коду; якщо зустрічається точка зупинки, то виконання програми не зупиняється; якщо позиція курсору не досягається ніколи, то програма виконується до тих пір, поки не буде зупинена командою Break. Після виконання команди всі вікна оновлюються.

7 Налаштування параметрів імітатора

Для того щоб вибрати імітацію роботи конкретного мікроконтролера, а також його робочу частоту, служить діалогове вікно Simulator Options (малюнок 14), яке відкривається по команді меню Debug ► AVR Simulator Options (комбінація клавіш <Alt+O>).

Малюнок 14 - Діалогове вікно Simulator Options

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

ATmega128, aTmega128l 8-розрядний avr-мікроконтролер з внутрішньосистемною програмованою флеш-пам'яттю ємністю 128 кбайт Особливості:

  • Високопродуктивний, малопотужний 8-розрядний AVR-мікроконтролер

  • Розвинена RISC-архітектура

  • 133 потужних інструкцій, більшість з яких виконуються за один машинний цикл

  • 32 8-розр. регістрів загального призначення + регістри управління вбудованою периферією

  • Повністю статична робота

  • Продуктивність до 16 млн. операцій в секунду при тактовій частоті 16 МГц

  • Вбудоване помножувач виконує множення за 2 машинних цикли

  • Енергонезалежна пам'ять програм і даних

  • Вбудоване статичне ОЗУ ємністю 4 кбайт

  • Інтерфейс JTAG (сумісність зі стандартом IEEE 1149.1)

  • Граничне сканування відповідно до стандарту JTAG

  • Велика підтримка функцій вбудованої відладки

  • Відмінні риси периферійних пристроїв

  • Два 8-розр. таймера-лічильника з роздільними предделителя і режимами порівняння

  • Два розширений 16-розр таймера-лічильника з окремими предделителя, режимами порівняння і режимами захоплення

  • Лічильник реального часу з окремим генератором

  • Шість режимів зниження енергоспоживання: холостий хід (Idle), зменшення шумів АЦП, економічний (Power-save), виключення (Power-down), черговий (Standby) і розширений черговий (Extended Standby)

  • Програмний вибір тактовою частоти

  • Загальне вимкнення підтягаючих резисторів на всіх лініях портів вводу-виводу