Порядок виконання роботи. 1. В текстовому редакторі у файлі Lab1.asm замінити фрагмент програми від мітки Beg1 до мітки End1 на заданий варіант1. В текстовому редакторі у файлі Lab1.asm замінити фрагмент програми від мітки Beg1 до мітки End1 на заданий варіант, вказавши у полі коментаря динаміку зміни вмісту акумулятора W і осередків 20, 21, 22, 23 в процесі виконання програми. 2. Запустити трансляцію програми Lab1.asm командним файлом Asm.bat виду mрasm lab1.asm В результаті трансляції створюються файли Lab1.lst і Lab1.hex. 3. У файлі Param.txt виду 1 р Lab1.hex перевірити і відредагувати (якщо необхідно) параметри завантаження - номер Com-порту і ім'я hex-файла. Запустити програму завантаження gruzim.exe. При появі запиту «Рress reset» натиснути на тренажері кнопку скидання. Після закінчення завантаження натиснути клавішу Esc. 4. Запустити програму Lab1.exe. При натисканні будь-якої клавіші (крім пробілу) в тренажер передається по послідовному каналу код натиснутої символу і приймається з тренажера вміст комірок ОЗУ 20, 21, 22, 23, 24. Якщо отримані дані не збігаються з даними в поле коментаря - визначити причину розбіжності. Вихід з програми Lab1.exe - при натисканні клавіші Esc. Індивідуальні завдання
Звіт Звіт по лабораторній роботі повинен містити: 1) формулювання завдання на лабораторну роботу. Завдання включає дві позиції, які відображаються цифрами, наприклад, 10-6. Перша позиція показує номер варіанта з таблиця завдань, друга - номер натиснутій клавіші N; 2) графічну схему алгоритму; 3) лістинг програми; 4) результати виконання вручну операцій з 8-розрядними двійковими числами відповідно до тексту програми. У визначенні операндів для перших операцій необхідно використовувати скан-код натиснутої клавіші, що визначається за формулою: N 30h, де N береться із завдання; 5) зведену таблицю результатів:
Таблиця П11.1. Система команд PIC16C74
Ім'я Операнди Операція Кодування Ознаки ADDWF f,d f=W+f 00 0111 dfff ffff C,DC,Z ANDWF f,d f=W&f 00 0101 dfff ffff Z CLRF f f=0 00 0001 1fff ffff Z CLRW W=0 00 0001 0000 0011 Z COMF f,d f=!f 00 1001 dfff ffff Z DECF f,d f=f-1 00 0011 dfff ffff Z DECFSZ f,d f=f-1, skip if 0 00 1011 dfff ffff INCF f,d f=f+1 00 1010 dfff ffff Z INCFZ f,d f=f+1, skip if 0 00 1111 dfff ffff IORWF f,d f=W|f 00 0100 dfff ffff Z MOVF f,d f=f 00 1000 dfff ffff Z MOVWF f f=W 00 0000 1fff ffff NOP немає операції 00 0000 0xx0 0000 RLF f,d С <- f <- C 00 1101 dfff ffff C RRF f,d C -> f -> C 00 1100 dfff ffff C SUBWF f,d f=f-W 00 0010 dfff ffff C,DC,Z SWAPF f,d обмін тетрад f 00 1110 dfff ffff XORWF f,d f=f^W 00 0110 dfff ffff Z
Таблица П11.2. Формат регистров Регистр STATUS (адреса 03h, 83h) Біти Ім'я Скидання Призначення 7 IRP 0 резерв (для косв.адресов 100h 1FFh) 6-5 RP10 00 00..банк 0 01..банк 1 4 TO# 1 1..сброс, SLEEP, CLRWDT 0..сработал WDT 3 PD# 1 1..сброс, CLRWDT 0..SLEEP 2 Z 0 признак нуля 1 DC 0 десятичный перенос 0 С 0 перенос
|