Міністерство освіти і науки, молоді та спорту України
Національний університет „Львівська політехніка”
ЗВІТ
ДО ЛАБОРАТОРНОЇ РОБОТИ № 1
з дисципліни “ Мікропроцесорні пристрої ”
ЗАСАДИ ПРОГРАМУВАННЯ МІКРОПРОЦЕСОРІВ. ОЗНАЙОМЛЕННЯ З ЛАБОРАТОРНИМ СТЕНДОМ EV8031/AVR
Мета роботи: Вивчення основних понять, методів програмування мікропроцесорів, ознайомлення з структурою лабораторного стенда AV8031/AVR, схемою під’єднання його до системного блока комп’ютера та порядком роботи, навчитися створювати і виконувати найпростіші програми.
ТЕОРЕТИЧНІ ВІДОМОСТІ
Класифікація мікропроцесорів за призначенням
Мікропроцесор (МП) — це пристрій, призначений для оброблення цифрової інформації та керування процесом цього оброблення, виконаний у вигляді однієї або кількох мікросхем.
За призначенням сучасні МП можна поділити на три групи:
мікропроцесори універсальні;
сигнальні мікропроцесори;
мікроконтролери.
Універсальні мікропроцесори (УМ) - це МП, що застосовуються у обчислювальних системах (ОС): персональних комп'ютерах, потужних серверах, робочих станціях та інших ОС. Переважно вони призначені для проведення науково-технічних розрахунків з використанням операцій з плаваючою комою над 64-розрядними та більшої довжини операндами.
Сигнальні мікропроцесори (СМП)(англ. DSP-digital signal processor) розраховані на оброблення в реальному часі цифрових потоків, утворених шляхом оцифровування відліків аналогових сигналів. Це обумовлює їх порівняно невелику розрядність (16-24 біти) і переважно цілочислове оброблення. Але сучасні СМП здатні також обчислювати у форматі з плаваючою комою над 32-40-розрядними операндами. Серед них з’явився окремий клас так званих медійних мікропроцесорів (ММП), що являють собою закінчені системи для оброблення аудіо- та відеосигналів. A недавно з’явився ще один різновид СМП - це сигнальні мікроконтролери (CMK) (англ. DSC-digital signal controler).
Мікроконтролери, призначені для широкого застосування у вбудованих системах керування, наприклад, від сучасної побутової техніки (холодильники, пральні машини, кухонні комбайни тощо) до найскладніших систем керування технологічними процесами, робототехнічними комплексами, зброєю, зокрема ракетами. Про важливість цього класу мікропроцесорів свідчить, наприклад, те, що світовий випуск MK приблизно на порядок перевищує випуск всіх інших видів МП.
2. Блок-схема побудови виконувального файла компілятором С і асемблером та блок-схема лабораторного стенда.
Рис. 1. Творення виконувального файла компілятором та консолідатором
Рис. 2. Побудова програми системного виконання
Рис. 3. Блок-схема лабораторного стенда
3. Схема розташування елементів на друкованій платі.
Рис. 4. Розташування елементів на платі стенда
4. Приклади окремих команд мікроконтролера з різних функціональних груп.
Команди передачі даних
Назва команди
Мнемокод
КОП
Т
Б
Ц
Операція
Завантаження в аккумулятор константи
MOV A, #d
01110100
2
2
1
(A) ( #d
Переміщення в розширену ВПД із аккумулятора
MOVX @DPTR, A
11110000
1
1
2
((DPTR)) ( (A)
Завантаження в стек
PUSH ad
11000000
3
2
2
(SP) ( (SP) + 1, ((SP)) ( (ad)
Добування із стеку
POP ad
11010000
3
2
2
(ad) ( (SP), (SP) ( (SP) - 1
Арифметичні операції
Назва команди
Мнемокод
КОП
Т
Б
Ц
Операція
Додавання до аккумулятора константи
ADD A, #d
00100100
2
2
1
(A) ( (A) + #d
Інкремент аккумулятора
INC А
00000100
1
1
1
(A) ( (A) + 1
Декремент аккумулятора
DEC A
00010100
1
1
1
(A) ( (A) – 1
Ділення аккумулятора на регістр В
DIV AB
10000100
1
1
4
(B).(A) ( (A)/(В)
Команди передачі керування
Назва команди
Мнемокод
КОП
Т
Б
Ц
Операція
Абсолютний виклик підпрограми в межах сторінки в 2 Кб
ACALL ad11
a10a9a810001
6
2
2
(PC) ( (PC) + 2, (SP) ( (SP) + 1,
((SP)) ( (PC0…7), (SP) ( (SP) + 1,
((SP)) ( (PC8…15), (PC0-10) ( ad11
5. Програми мовою С і на Асемблері, виконані в лабораторії та коментарі до них.
Програма 1:
ORG 0
S t a r t :
mov DPTR, # 0A000h ;занести в реєстр DPTR адресу індикації
mov A, # 28h ;занести в реєстр А дані для відображення
movx @DPTR, A ;винести на індикацію число 28, адреса якого
є вмістом реєстра DPTR
jmp S t a r t ;перехід на початок
END
Програма 2:
ORG 0
Start:
mov DPTR, #0A000h ;занести в реєстр DPTR адресу індикації
mov A, #28 ;занести в реєстр А число 28
add A,#3Eh ;додати до А число 3Е
movx @DPTR, A ;винести на індикацію значення реєстру А,
адреса якого є вмістом реєстра DPTR
jmp Start ;перехід на початок
END
Програма 3, виконана за власною ініціативою:
ORG 0
Start:
mov DPTR,#0A000h ;занести в реєстр DPTR адресу індикації
mov A, # 28h ;занести в реєстр А число 28
add A,#3Eh ;додати до А число 3Е
DEC A ;інкремент акумулятора
subb A , #13h ;відняти від числа, яке занесено в реєстр А число 13
movx @DPTR,A ;винести на індикацію значення реєстру А, адреса якого є вмістом реєстра DPTR
jmp Start ;перехід на початок
END
6. Висновки роботи.
При виконанні даної лабораторної роботи я навчився писати найпростіші програми для мікроконтролера EV 8031, а також частково ознайомився з його системою команд.