- •Завдання 1
- •5. Завдання 2
- •1. Структура еом
- •2. Подання даних у моделі
- •3. Система команд
- •Формати команд
- •Способи адресації
- •3.3. Система операцій
- •4. Стани і режими роботи еом
- •5. Інтерфейс користувача
- •5.1. Вікна основних оглядачів системи Вікно Процессор
- •010 Nop ооадоо
- •6. Зовнішні пристрої
- •Інструктаж з техніки безпеки при роботі з пк
- •Інструктаж з техніки безпеки при роботі з пк
- •Інструктаж з техніки безпеки при роботі з пк
- •Робота з індикатором hg1.
- •5. Робота з індикатором ны0.
- •6. Індикатор нс7.
5. Робота з індикатором ны0.
Адресація:
0 12 3
ООООООООЬ
7 6 5 4 3 2 1 0
Приклад
ооюоюоь
7 6 5 4 3 2 1 0
5.1. Ввести програму виводана індикатор числа 2007
Огд 0 start:
ШОУ dptr,#80031і mov а,#10000000Ь movx
mov гіріг, #800211 шоу а,#00]п шоух @dptr,a шоу dptr,#8001h
шоу г0,#0£:£ь.
шоу а,#10100100Ь с4: шоух (Мр1:г,а djnz г0,с4 шоу dptr,#8002h шоу а,#01ь шоу г0,#0££ъ шоух @dptr,a шоу гіріг,#8001Ь шоу а,#11000000Ь шоу г0,#0££1і сб: шоух @dptr/a djnz г0,сб шоу #8002ьі
шоу а,#02Ьі шоух @dptr,a шоу г0,#0£:£ь шоу dptr,#8001Ь шоу а,#11000000Ь шоух @гірі:г,а шоу го,^^ сЗ: djnz гО,сЗ
end
5.2. Змінити програму на 1394.
шоу dptr,#8002h шоу а,#03Ь шоух @гір1:г,а шоу г0,#0£ :£1"і шоу dptr,#8001h шоу а,#11111000Ь шоух (Мр1:г,а шоу г0, сі: djnz г0,с1 :Ітр Біагі
6. Індикатор нс7.
По столбцам
Адресація:
По строкам
0 о
Сі
111 0 0
А4 АЗ А2 А1 АО
С:11011011Ь
А: 111001ООЬ
6.1. Ввести програму МАКС:
ІіїЕ: М:
А55 ЕОи 8000Н В55 Е(2и 8001Н С55 ЕОи 8002Н Ии355 ЕОи 8003Н (Ж ЕОи 80Н ОИЄ 0000 МОУ ОРТИ,#ЇШ355 МОУ А,#ІШ МОУХ @ЭРТИ,А МОУ Р.2, #0ЕГН
МОУ РРТИ,#С55
ЮОО#
•о#о#
фоооф
фоооф фоооф
фоооф
МОУ А,#10000000В МОУХ ЙБРТІЯ,А МОУ ЮРТИ,#А55 МОУ А,#11110001В МОУХ @ОРТИ,А МОУ 13.1, #0ЕЕН С8 : DJNZ 1*1,08
МОУ ОРТИ., #С55 МОУ А,#11011111В МОУХ @ОРТИ,А
С9 :
MOV DPTR,#A55 MOV A,#11101010B MOVX @DPTR,A MOV Rl,#0FFH DJNZ Rl,C9
MOV DPTR,#C55 MOV A,#11101111B MOVX ©DPTR, A MOV DPTR,#A55 MOV A,#11100100B MOVX @DPTR,A MOV Rl,#0FFH
CIO: DJNZ Rl,CIO DJNZ R2,M
0: MOV DPTR,#C55
MOV A,#11100000B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11110001B MOVX 0DPTR,A MOV Rl,#OFFH DJNZ Rl,C15
C15 :
MOV DPTR,#C55 MOV A,#11010111B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11101010B MOVX @DPTR,A MOV Rl,#0FFH C16: DJNZ Rl,CIб
MOV DPTR,#C55 MOV A,#10110111B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11100100B MOVX @DPTR,A MOV Rl,#OFFH C17: DJNZ Rl,C17
DJNZ R2,0
ОООІ ІООІО
totoo
•ООО ІОІОО ІООІО ІОООІ
K: MOV DPTR,#C55
MOV A,#10000000B MOVX 0DPTR,A MOV DPTR,#A55 MOV A,#11110000B MOVX @DPTR,A MOV Rl,#OFFH C22: DJNZ R1,C22
MOV DPTR,#C55 MOV A,#10111110B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11000001B MOVX @DPTR,A MOV R1,#0FFH C23: DJNZ Rl,C23
MOV DPTR,#C55 MOV A,#11011101B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11100010B MOVX @DPTR,A MOV R1,#0FFH C24: DJNZ R1,C2
MOV DPTR,#C55 Mov a;#iiioioiib
MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11100100B MOVX 0DPTR,A MOV R1,#0FFH C25: DJNZ Rl,C25
MOV DPTR,#C55 MOV A,#11110111B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11101000B MOVX @DPTR,A MOV R1,#0FFH C26: DJNZ RI,C26
ommmo
0 3
ООООООООЬ 4
ооюоюоь 4
DJNZ R2,K
S: MOV DPTR,#C55
MOV A,#11000001B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11110000B MOVX @DPTR,A MOV R1,#0FFH C2 9: DJNZ R1,C2 9
MOV DPTR,#C55 MOV A,#10111110B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11101010B MOVX @DPTR,A MOV R1,#0FFH C30: DJNZ Rl,C30
MOV DPTR,#C55 MOV A,#10111110B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11100100B MOVX @DPTR,A MOV R1,#0FFH C31: DJNZ Rl,C31
MOV DPTR,#C55 MOV A,#11011101B MOVX @DPTR,A MOV DPTR,#A55 MOV A,#11100001B MOVX @DPTR,A MOV Rl,#0FFH C32: DJNZ Rl,C32
DJNZ R2,S JMP WE END
6.2. Переробити програму на своє ім'я. 7. Підготувати звіт про виконання роботи
Зміст звіту
Тема роботи і її ціль.
Формулювання завдань.
Тексти програм, створених самостійно для кожного завдання.
ДОДАТОК 1
Теоретичні відомості
Стенд являє собою мікропроцесорний контролер, оснащений пам'яттю програм і пам'яттю даних. Він дозволяє відлагоджувати програми, написані на мовах Сі та Асемблер. Завантаження програми здійснюється з персонального комп'ютера по послідовному порту RS-232C.
Рисунок 1 - Структурна схема стенду
Структурна схема представлена на рисунку 1.
ОЭВМ - однокристальна ЕОМ; BIOS- базова система введення- виведення;
ПП - памПять програм; ПД-памяПть даних;
ППП - паралельний приймач-передавач; j ИПУ - інтерфейс периферійних пристроїв (ПУ);
СВПИ - схема вибору послідовного інтерфейсу.
Технічні характеристики
Використовувані однокристальні процесори КР1830ВЕ31, Intel 80С31, 80С51, Philips Р80С31 , Atmel АТ89С51, AT90S8515 (4414) (DIP корпус);
Пам'ять програм - 8 КБайт (6264) в стандартній поставці, 32 Кбайт у розширеній (62256);
Пам'ять даних - 8 КБайт (6264) в стандартній поставці, 32 Кбайт у розширеній поставці (62256); |
Послідовна EEPROM пам'ять, 256 байт (АТ93С46) в стандартній поставці;
Два послідовних каналу передачі даних RS232 (перемикання програмно- апаратне);
Системний інтерфейс з роз'ємом IDC-40 (див. додаток № 3);
Інтерфейс розширення (вх / вих КР580ВВ55, порт PI ОЕВМ), дивіться додаток № 3;
Клавіатура 4x3,
Статична 4-розрядна двійково-десяткова індикація;
Цифроаналоговий і аналого-цифровий перетворювач (плата розширення);
Генератор з фіксованою частотою - 50 Кгц, генератор із змінною частотою від 2 Кгц до 10 Кгц (плата розширення);
Динамічна 4-х розрядна індикація (плата розширення);
Пристрій дискретного вводу інформації: 2 кнопки (плата розширення); І
Пристрій дискретного виводу інформації, 8 шт. (плата розширення);
Знакосінтезірующий індикатор 1 шт. (плата розширення).
Разъем подключения к nKIRS-232+питание)
Системный интерфейс Интерфейс LCD
Ч
OAOOOh HG1 OBOOOh
ZQ1
J8
ihz0'
RS-232
h О і_/-і_і і_/ J |_/1_||_/|_|
Х2
PC
X3
Х1
DD17
X4
Разъём для программирования ДУЙ
Перемычки выбора типа процессора: иб -МС5-51; Л -АУК
|
|
|
DD18 |
|
DD4 |
. 2 |
|
|
її |
|
0) |
І 3. |
|
О |
S ~ £8. |
|
m |
с |
|
|
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
* |
0 |
# |
Индикатор запуска программы пользователя
Индикатор +5V /
/Интерфейс периферийных устройств \ \ Работа с BIOS \Работа с программой пользователя
Х1 - системний інтерфейс з повним адресним простором
Х4 - Інтерфейс розширення для підключення зовнішніх пристроїв з використанням паралельного приймача-передавача
Х2 - Інтерфейс послідовного порта СОМ1 для свПязку стенду с ПК
ХЗ - Інтерфейс послідівного порта COM2 для свПязку стенда з іншими пристроями, що мають
стандартний порт RS232C
Х6 - Інтерфейс програмування AVR
J4 - Перемичка підключення сигналу синхронізації послідовної пам'яті J2, J3 - Перемичка підключення лінії передачі даних послідовної пам'яті J1 - Перемичка дозволу автоматичного запуску завантаженої програми J5 - Перемичка підключення сигналу вибірки послідовної пам'яті
Рисунок 2 - Схема розташування елементів стенду
Рисунок 3 - Структурна схема плати розширення
|
|
|
||||
HG7 |
HL10 |
|
||||
pa - f HL? К ІМ HL5 ЯН те? щ ш |
ЇЇ @ J60QJ5 jsiij |siii| © |
|||||
|
J2 |
|||||
|
|
л 0 J3Q J40 1 jn 1 j&C CJ8 |
в — Q % 4 oJ |
J7 |
|
|
і |
R27 | |
|||||
Ш |
||||||
|
R7 | |
|||||
|
|
|
||||
Рисунок 4 - Схема розташування елементів плати розширення
Програма завантажувач знаходиться в мікросхемі пам'яті (DD4), вона проводить ініціалізацію послідовного прийомо-передатчика ОБОМ (DD2), перевіряє наявність і розмір пам'яті даних, при цьому програма завантажувач не порушує цілісність даних в пам'яті програм. Програма завантажувач формує на індикації HG1 число - ємність пам'яті даних в кілобітах. (Надалі пам'ять даних буде використовуватися як пам'ять програм ОБОМ).
При надходженні даних з послідовного порту персонального комп'ютера в послідовний порт (роз'єм Х2) стенда, ОБОМ записує їх у пам'ять даних (DDI9). Одночасно із запуском програми загоряється світлодіод HL1. При цьому мікросхема (DD4), в якій знаходиться програма завантажувач - відключена.
Кнопка S14, необхідна для формування сигналу скидання на вході RST процесора, тобто перекладу стенду в режим роботи ОБОМ від програми завантажувача, тобто очікування прийому даних з послідовного порту. Процесор готовий приймати дані в пам'ять даних.
Кнопка S13, необхідна для перезапуску завантаженої з ПК програми знаходиться в пам'яті програм (DDI9). При натисканні кнопки S14, загоряється світлодіод HL1. При цьому можлива нова запис програми в стенд з персонального комп'ютера. При передачі даних з персонального комп'ютера в стенд, комп'ютер і на лінії RI послідовного порту формується сигнал, який по ланцюгу: транзистор VT1 скидає, процесор, також як і кнопка S14.
Адресація (звернення) процесора до периферійних пристроїв стенду реалізовано як адресація до комірок пам'яті в адресному просторі від 8000Н до FFFFH.
Пам'ять даних (мікросхеми DDI8, DDI9) мають адресацію з 0000Н до 7FFFH, в залежності від ємності використовуваної в стенді мікросхеми пам'яті.
Мікросхема програмованого паралельного інтерфейсу КР580ВВ55 DD10 включена як блок комірок пам'яті: адреса Порта А-8000Н; адресу Порта В-8001Н;
адресу Порта С-8002Н; адресу Порта регістру управляючого слова RUS-8003H. Сигнал вибірки CS0 формується мікросхемою дешифратора адреси DD8.
Пристрій відображення виконано на чотирьох статичних семи сегментних двійково-десяткових індикаторах (DDI5 - DDI8). Звернення до них, як до комірок пам'яті з адресами А000Н, В000Н. Передача даних на індикатори здійснюється з ОЕВМ по шині даних AD (0-7). Сигналами вибірки мікросхем індикації є CS2, CS2.
Вибірка каналу приймально-передачі здійснюється за адресою С000Н доступний тільки для запису.
Опитування клавіатури здійснюється за адресами 900ЕН 900DH 900ВН доступні тільки для читання.
Робота зі стендом
На комп'ютері завантажити програмну оболонку NortonCommander, VolcovCommander (NC.exe, VC.com відповідно).
Викликати вбудований текстовий редактор з допомогою комбінації клавіш Shift + F4. У вікні написати назву файлу з розширенням. ASM. (Наприклад FIRST. ASM)
В текстовому редакторі набрати текст програми в мнемокода мови Асемблер для 8051.
4.Зберегти набраний файл з розширенням.
Відкомпілювати набрану програму (ASM51.EXE FIRST.ASM). Після компіляції з'являються три файли:
FIRST. HEX (код програми, готовий для завантаження в стенд);
FIRST. LST (файл, в якому можна переглянути .наявність помилок у
програмі);
FIRST.PRG
Після усунення всіх помилок, дані файлу з розширенням *. Hex програмою EVAL.EXE необхідно перенести в стенд. (EVAL.EXE-h F 1RS T. HEX). Програма EVAL.EXE запропонує вибрати номер послідовного порту.
Виведення на екран підказки про параметри програми EVAL. ЕХЕ, здійснюється запуском EVAL. ЕХЕ.
При передачі даних з персонального комп'ютера в стенд на екрані монітора відображаються передані дані. Ці ж дані відображаються на індикаторі стенду HG1. Горить світлодіод HL1.
Після передачі останнього байта при наявності перемички J1 завантажена програма запускається автоматично.
При відсутності перемички J1, або при необхідності перезапуску програми завантаженої в стенд натиснути кнопку S13.
Зупинка, завантаженої програми і перехід в режим очікування на прийом даних з персонального комп'ютера можливо натисканням кнопки S14. При цьому гасне світлодіод HL1.
Запис нової програми можлива в будь-який момент часу роботи завантаженої програми.
ДОДАТОК 2
ОПИС КОМАНД
Арифметичні команди
ADD
ADDC
SUBB
INC
DEC
MUL
DIV
Додавання
Додавання з урахуванням перенесення Віднімання з урахуванням перенесення Збільшення на одиницю Зменшення на одиницю
Перемножування без знака регістрів А і В, молодший байт результату поміщається в А, старший у В. Прапор V встановлюється, якщо результат більше 255. С скидається Ділення без знака регістра А на В, ціла частина заноситься в А, в В залишок. С і V скидаються. Якщо проводиться ділення на 0, то А і В будуть не визначені, при цьому V встановлюється, а С скидається
DA Двійково-десяткова корекція. Змінює С, V не змінюється
Логічні операції
ANL Логічне І
ORL Логічне АБО
XRL Логічне виключає АБО
CLR Обнулення
CPL Інвертування
RL Циклічний зсув вліво
RLC Циклічний зсув вліво через перенос
RR Циклічний зсув вправо
RRC Циклічний зсув вправо через перенос
Команди передачі даних SWAP Перестановка в А молодших k розрядів зі старшими
MOV Пересилання байта або слова даних
MOVC Пересилання в А байта даних пам'яті програм, що
А, @ A+DPTR адресується результатом А + DPTR MOVC А, @А+РС Пересилання в А байта даних пам'яті програм, що
адресується результатом А + PC +1 MOVX Пересилання байта даних із зовнішньої пам'яті даних
PUSH Засилання в стек регістра, що прямо адресується
POP Витяг з стека і завантаження регістра, що прямо адресується
ХСН Обмін вмістом А з регістром або коміркою пам'яті
XCHD Обмін вмістом молодших К розрядів А з коміркою пам'яті, що
адресується R0 або R1
Команди переходів ACALL Виклик підпрограми У межах 2 Кбайт
LCALL Виклик підпрограми У межах 6 Кбайт
RET Повернення з підпрограми
RETI Повернення з переривання
AJMP Безумовний перехід в межах 2 Кбайт
LJMP Безумовний перехід в межах 6 Кбайт
SJMP Безумовний перехід по байту зміщення
JMP A+DPTR Перехід за адресою результату А + DPTR
JZ Перехід, якщо А дорівнює 0
JNZ Перехід, якщо А не дорівнює 0
CJNE Перехід, якщо А і другий операнд не рівні
DJNZ Зменшення операнда і перехід, якщо він не дорівнює 0
Команди бітової обробки
SETB Установка біта в 1
CLR Установка біта в 0
MOV пересилання біта
ANL Логічне І двох бітів
ORL Логічне АБО двох бітів
JC Перехід, якщо прапор 3 установлений
JNC . Перехід, якщо прапор 3 скинутий.
JB Перехід, якщо прямо адресується біт встановлений в 1
JNB Перехід, якщо прямо адресується біт встановлено у 0
JBC Перехід, якщо прямо адресується біт встановлений в 1 і його
очищення
CPL інвертування біта
