
- •2. Програмне забезпечення
- •2.1. Мови програмування
- •2. 2 Компоненти мови Асемблер
- •3. Створення програми мовою Асемблер
- •3.1. Постановка задачі
- •3.2. Директиви
- •3.4. Алгоритм
- •3.5. Програма обчислення в одній точці
- •3.6. Застосування зсувів і масок
- •3.7. Запис масиву даних до озп і організація циклу
- •3.8. Завантаження масиву даних з озп до рзп
- •3.9. Зупин програми
- •4. Команди нашої програми
- •1) Арифметичні і логічні команди
- •2) Команди переходів (branch instructions)
- •3) Команди передачі даних (data transfer instructions)
- •4) Команди з бітами (bit and bit-test instructions)
- •5) Команди керування мк (mcu control instructions)
- •Лабораторна робота №1 Основи програмного пакету розробника avr Studio
- •3 Підготовка до налагодження проекту.
- •5 Виправлення помилок алгоритму.
- •5 Оформити звіт.
- •6 Завдання на самостійну роботу.
- •Лабораторна робота №2
- •3 Компіляція проекту.
- •4 Налагодження проекту.
- •Лабораторна робота №3
- •Лабораторна робота №4
- •Лабораторна робота №4
- •1 Підготовка проекту в avr Studio 4 для запису програми до пам'яті мікроконтролера.
- •2 Підготовка апаратних засобів стартового набору stk500.
- •3 Підготовка програмного інтерфейсу stk500.
- •4 Програмування мк та дослідження спроектованого виробу на платі стартового набору stk500.
- •5 Завдання на самостійну роботу
- •1 Налаштування основних модулів мікроконтролера.
- •2 Дослідження основних режимів функціонування мікроконтролера.
- •3 Програмування мк та дослідження цпп на платі стартового набору stk500.
- •4 Завдання на самостійну роботу.
Лабораторна робота №1 Основи програмного пакету розробника avr Studio
Частина 1 (Зразок D:\CPlabII\1_1AVSas\1_1AVSas.asm)
1 Створення нового проекту на основі програми мовою асемблера в інтегрованому пакеті розробника AVR Studio 4.
1
.1
Запустити
програму
AVR
Studio 4
ярликом
на робочому столі (або з меню Windows: Пуск
> Всі програми > Atmel AVR Tools
> AVR
Studio
4)
– після фірмової заставки програми
з'явиться діалогове вікно Welcome
to
AVR Studio
4 з переліком проектів, які відкривалися
останніми.
F Примітка. Показ зазначеного діалогового вікна після кожного запуску програми можна скасувати зняттям у ньому прапорця Show dialog at startup, а поновити показ – вимкненням опції з меню Tools (Інструменти) > Options > General (загальні) > Hide Startup Wizard (скривати майстра після старту). Для одноразового зачинення цього вікна після даного запуску програми достатньо клацнути в ньому кнопку Cancel (відміна), а для відчинення – вибрати в меню Project команду Project Wizard.
1.2 Запустити майстра створення нового проекту натисненням розділу New Project у діалоговому вікні Welcome to AVR Studio 4 (або за відсутності цього вікна вибором в меню Project команди New Project або Project Wizard – майстер створення проекту) та виконати такі дії.
а) На першій сторінці, що відкриється, вибрати тип проекту на основі програми з різновидом мови асемблера для МК AVR (цифра 1), ввімкнути прапорці створення головного програмного файлу (2) і окремої теки для цього проекту (3), ввести ім'я проекту (4), наприклад, 1_1AVSas3 (тут 1_1 – лабораторна робота номер 1, частина 1, AVS – у пакеті AVR Studio 4, as – мовою асемблера, 3 – варіант індивідуального завдання), яке автоматично продублюється у віконці (5) імені головного програмного файлу мовою асемблера 1_1AVSas3.asm, вибрати директорію для теки проекту (6), створивши власну теку, наприклад, CPlabII(3), в якій зберігатимуться всі Ваші проекти, та натиснути кнопку Next (7).
F Примітка. У директорії теки проекту припустимі літери лише латиниці.
б) На другій сторінці майстра вибрати налагоджувальну платформу: програмний імітатор AVR Simulator (1) і тип мікросхеми: ATmega8515 (2) та натиснути кнопку Finish (3) – автоматично розгорнеться порожнє вікно програмного файлу, а в нижньому рядку стану головного вікна позначаться вибрані типи МК і імітатора, а також номери рядка і позиції в ньому розташування курсору.
F Примітка. Імітатор AVR Simulator 2 застосовують для типів МК, назви яких при його виділенні активізуються у вікні Device (мікросхема).
1
.3
Увести
свій варіант
тексту програми мовою асемблера
в порожньому файлі, що відчиниться
по закритті майстра, користуючись
зразком (для цього відкрити зразковий
файл – він стане вкладкою внизу текстового
вікна, а після його збереження залишиться
коротка назва без зазначення директорії).
Текст набирають звичайним чином за
допомогою текстового редактора
AVR Studio,
який підтримує основні функції
стандартного інтерфейсу (виділення,
копіювання, вставленя, заміну, видалення
тощо). Крім того,
редактор забезпечує підсвічення
синтаксису: директиви, операнди і дані
– чорним кольором, команди – синім та
коментарі – зеленим (це полегшує введення
тексту, бо допоки, наприклад, команду
набрано невірно, вона не набуде синього
кольору, а за відсутності крапки з комою
на початку кожного рядка коментарю він
не набуде зеленого кольору). Звернути
увагу на ініціалізацію ОЗП. По введенні
тексту програми зберегти файл – зникне
зірочка в його імені у верхньому рядку
головного вікна програми і в нижньому
рядку вкладки відкритого файлу.
F Примітки. 1. Замість набирати текст програми можна до порожнього файлу вставити копію зразка з розширенням .asm і внести необхідні корективи щодо Вашого варіанту та задля тренування самостійно набрати кілька рядків тексту. (Копіюється текст звичайним чином піктограмами інструментальної панелі або командами з меню Edit чи з контекстного меню. Таким самим чином можна вставити текст програми, заготовлений у редакторі Word, або, навпаки, перенести текст з файлів .asm та .lst до свого звіту у Word).
2. Під час написання програми і введення її тексту зручно користуватися довідкою про команди з меню Help > AVR Tools User Guide, далі у змісті вікна AVR Tools вибрати AVR Assembler > Parts > ATmega8/…/ATmega8515/… та у відповідній групі клацнути потрібну команду – розгорнеться довідка з її докладним описом і прикладами.
3. Клавішею F1 у будь-який час можна викликати довідку про команду, біля якої встановлено курсор у програмному файлі або файлі лістингу, проте за положення курсору в інших місцях (як і взагалі за відкритого файлу) розгортається вікно AVR Assembler Help, з якого потрібну інформацію доводиться відшукувати самостійно.
4. Шрифт, його розмір і колір підсвічення синтаксису в разі необхідності можна змінити командами з меню Edit > Font and Color.
2 Транслювання програми в машинні коди.
2.1 Якщо це не зроблено, відкрити проект з програмою, що підлягає транслюванню, командою Open Project з меню Project (або після запуску AVR Studio натисненням розділу Open Project у діалоговому вікні Welcome to AVR Studio 4) – у вікні з'явиться головний файл проекту, наприклад, 1_1AVSas.asm, зліва розгорнеться навігаційне вікно Project з назвою цього проекту, а внизу – порожнє інформаційне вікно Build, яке доцільно зачинити для зручного перегляду головного файлу.
F УВАГА! У рядку заголовку головного вікна AVR Studio, на відміну від системи Quartus II, відображається не ім'я активного проекту, а лише назва відкритого файлу, яка дублюється на одній із вкладок внизу вікна. Отже, у заголовку вікна може бути назва відкритого файлу з буд-якого іншого проекту, але оброблятиметься лише проект, зазаначений у навігаційному вікні Project.
F Примітка. Навігаційне вікно Project можна зачинити звичайним чином, а відчинити з меню View (Вигляд) > Toolbars (Панелі інструментів) > Project.
2.2 Включити опцію створення вихідного файлу лістингу програми з меню Project > Assembler Options > Create List File.
2
.3
Запустити
процес транслювання піктограмою
Assemble
на інструментальній панелі (або
командою Build
з меню Build,
або гарячою клавішею F7)
– на передньому плані з'явиться
інформаційне вікно Build
зі службовою інформацією і (в разі
відсутності помилок) з повідомленням
про успішне транслювання
–
зелена плямка (Assembly
complete,
0 errors,
0 warnings).
F Примітка. Якщо Ви створили свою програму з копії зразка, у файлі можуть бути помилки, уведені з навчальною метою (насправді вони бувають практично в кожній програмі).
2
.4
Виправити
помилки синтаксису, проаналізувати
застереження та повторити
транслювання.
За наявності помилок процес транслювання
зупиняється
і
у вікні Build
повідомляється, що він є невдалий
(Assembly
failed).
Для швидкої локалізації помилки
(позначається червоною плямкою) достатньо
двічі клацнути рядок у повідомленні
про неї – ділянка потрібного тексту
програми вийде на передній план і на
лівому полі біля рядка, що містить
помилку, з'явиться покажчик у вигляді
синьої стрілочки. Якщо з повідомлення
про помилку не зрозуміло, як її усунути,
слід натиснути клавішу F1
– з'явиться довідка з інформацією про
команду (на ілюстрації наведено фрагмент),
де слід звернути увагу на синтаксис,
припустимі операнди та на приклад
(Example).
Так само усунути застереження (позначаються
жовтими плямками), якщо їх зміст спеціально
не передбачений у програмі. По виправленні
помилок зберегти зміни у файлі та
повторити п. 2.3.
F Примітки. 1. Якщо покажчик помилки не виявиться в полі зору (наприклад, потрібний фрагмент може бути затулений інформаційним вікном Build), його легко відшукати: поставити курсор у будь-який рядок програмного файлу, зчитати його номер у рядку стану (наприклад, Ln 31) та порівняти з номером (у дужках) рядка помилки в повідомленні про неї.
2. Після коригування навіть лише коментарів слід не тільки зберегти файл, але й повторити транслювання проекту, щоб зміни було відображено у файлі лістингу.
2.5 Переглянути основні складники проекту, утворені під час транслювання, шляхом розгортання тек у навігаційному вікні Project ліворуч (натисканням на значки вузлів графа та подвійним клацанням по назвах), де крім основного програмного файлу з розширенням .asm містяться автоматично згенеровані файли, зокрема, файл включення m8515def.inc, позначки Labels, вихідний hex-файл з розширенням .hex, вихідний файл лістингу з розширенням .lst, що дублює програму мовою Асемблера з додаванням двох колонок номерів і кодів команд у шістнадцятковій системі та наприкінці подає інформацію про використані ресурси МК. З цього файлу скопіювати таблицю використаних мнемокодів (ATmega8515 instruction use summary) для звіту, навести приклади команд з ними та зазначити припустимі операнди, які можна в них застосовувати.
F Примітка. Аби складники проекту у навігаційному вікні Project стали приступними, після відкриття проекту слід заново повторити його транслювання. Проте головний програмний файл .asm і файл лістингу .lst можна відкрити будь-коли звичайною піктограмою відкриття файлу (або з меню File > Open File).
2.6
Налаштувати
інструментальну панель,
що складається з низки локальних
панелей, відокремлених розділювачами
(три вертикальні крапки): клацнути
по ній правою кнопкою миші (або з меню
View
– вигляд вибрати Toolbars
– панелі
інструментів).
У першому розділі (відокремлений
горизонтальною лінією) вимкнути лише
панель TraceBar
інструментального наладчика (застосовується
для налагодження МК перед впровадженням
у серійне виробництво), а всі інші
залишити, включаючи панель MDI
Tabs
відкритих у вигляді вкладок файлів,
розташовану в нижньому рядку вікна
програмного файлу (аналогічний рядок
у пакеті Quartus
2 розташовано вгорі). У другому розділі
(вікон) цього меню (під горизонтальною
лінією) залишити лише Processor
і Project.
Відтак клацнути третій розділ Customize
(налаштування) та впорядкувати панелі
і видалити зайві (підвести курсор до
розділювача і, коли він набуде форми
перехрещених стрілок, перетягнути
панель на нове місце, або до робочого
поля та зачинити її) і впорядкувати
інструменти (клацнути інструмент і,
коли він виділиться чорною облямівкою,
так само перетягнути його до нової
позиції, а для видалення – до робочого
поля). Усі потрібні інструменти, наведені
на ілюстрації, розташовано в головному
вікні в один рядок у порядку їх
застосування: 1) загальні, 2) транслятор,
3) редагування, 4) наладчик, 5) вікна
наладчика, 6) програмний модуль STK
500. Так
само з вікна Customize
можна відновити вилучені (або вилучити
зайві) локальні панелі та інструменти.