Читайте также: |
|
1. Проект створюється з головного меню Mcstudio послідовним вибором пунктів Файл – Створити – Проект. Для вказівки місця розташування проекту, імені проекту й модулів, типу процесора заповнюється форма (рис. 1).
У результаті на екрані відкриваються вікна: «Проект», «Ресурси» і вікно редактори тексту програми із прописаним шляхом до вихідного модуля програми (рис. 2).
Рис. 1. Вікно створення проекту
Рис. 2. Екран Mcstudio після створення проекту
1. У текстовому редакторі набираємо текст програми, наведений у лабораторній роботі. При наборі тексту необхідно дотримуватись наступних правил:
– перші 8 позицій у рядку – це поле міток;
– за ними розташовується поле команд;
– за полем команд розташовується поле операндів;
– за полем операндів може розташовуватися поле коментарів, які відокремлюються від інших полів крапкою з комою.
2. За описом команд, наведених в «Робочому зошиті №1», вивчаємо їх роботу.
3. Компілюємо програму. Для цього натискаємо комбінацію клавіш Ctrl+F9 або кнопку на панелі інструментів . У результаті компіляції у вікні текстового редактора додається дві колонки ліворуч, рис. 3. Перша колонка містить адресу, за якою розташовуються машинні коди мікроконтролера. Друга колонка – це значення машинних кодів.
Рис. 3. Результат компіляції програми
Якщо в програмі були синтаксичні помилки, компілятор виявить і видасть повідомлення про характер помилки (рис. 4). Якщо у вікні повідомлень про помилку кликнути лівою кнопкою миші, то курсор буде поміщено у рядок програми, де була виявлена помилка.
Рис. 4. Вигляд вікна повідомлень про помилку
1. Виконуємо симуляцію відкомпільованої програми в покроковому режимі. Симуляція завжди починається з натискання кнопки або клавіші F9. Після натискання синя смуга в тексті програми вказує, яка команда буде виконуватися на наступному кроці. Черговий крок програми при покроковому налагодженні виконується натисканням клавіші F7. Покрокове налагодження необхідне, щоб переконатися, чи однаково розуміють виконання команди контролер і програміст.
2. Результати виконання команд переглядаємо у вікні відображення дерева ресурсів мікроконтролера (рис. 5).
Рис. 5. Дерево ресурсів контролера на 6 кроці виконання програми
3. Підставляємо в програму значення згідно з варіантом, за результатами симуляції підготовляємо звіт лабораторної роботи.
Примітка: після закінчення симуляції натисніть клавіші Ctrl+ F2, щоб вийти з режиму симуляції. Без цього ви не зможете закрити програму Mcstudio та зберегти свої дані
Теоретичні відомості. Нижче наведені фрагменти вікон робочого середовища Mcstudio і пояснення виконання команд пересилань із прямою адресацією.
Пересилання константи.
Рис. 6. Виконання команди mov A,# 20h
Команда MOV A,# d виконує пересилання константи, яке зберігається в другому байті команди, в акумулятор.
Пряма адресація
Рис. 7. Виконання команди mov A,20h
Команда MOV A,ad виконує пересилання даних із внутрішньої пам'яті в акумулятор. Адреса комірки пам'яті перебуває в другому байті команди.
Рис. 8. Виконання команди mov 20h,A
Команда MOV ad, A виконує пересилання даних з акумулятора у внутрішню пам'ять. Адреса комірки пам'яті перебуває в другому байті команди.
Пряма регістрова адресація.
Рис. 9. Виконання команди mov A,R5
Команда MOV A,Rn, виконує пересилання значення регістру поточного банку в акумулятор. Адреса регістру зазначена в молодших трьох бітах коду операції.
.
Рис. 10. Виконання команди mov R4, A
Команда MOV Rn,A виконує пересилання значення акумулятора в регістр поточного банку. Адреса регістру зазначена в молодших трьох бітах коду операції.
Задання лабораторної роботи. Написати програму роботи мікроконтролера МК51, яка виконує арифметичні й логічні дії над двома числами, поміщеними в регістри R2 і R3, і результати записує у внутрішню пам'ять даних з адреси 20Н.
Текст програми мовою Асемблера
Mov r2,#32h Mov r3,#25h
; занесення в регістри вихідних значень
mov a,r2; пересилаємо в акумулятор перше значення
add a,r3; складаємо його із другим
mov 20h, a; зберігаємо результат
mov a,r2; пересилаємо в акумулятор перше значення
clr c; скидаємо біт переносу
subb a,r3; віднімаємо від першого друге
mov 21h, a; зберігаємо результат
mov a,r2; пересилаємо в акумулятор перше значення
orl a,r3; логічно складаємо його із другим
mov 22h, a; зберігаємо результат
mov a,r2; пересилаємо в акумулятор перше значення
anl a,r3; логічно перемножуємо його із другим
mov 23h, a; зберігаємо результат
mov a,r2; пересилаємо в акумулятор перше значення xrl a,r3; складаємо його за модулем 2 із другим mov 24h, a; зберігаємо результат
end; кінець програми.
Вихідні дані для програми:
– перше значення дорівнює номеру за списком, помноженому на 5.
– друге значення дорівнює номеру за списком, помноженому на 7.
Звіт повинен містити текст програми й результати виконання кожної операції.
Дата добавления: 2015-07-08; просмотров: 127 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Система керування кроковим двигуном | | | Лабораторна робота №2 |