Полученные 2 слова определяют начальный логический адрес подпрограммы обработки прерывания.
Слово 0000h с большим адресом содержит базовый адрес сегмента, а слово 0030h с меньшим адресом – смещение подпрограммы от начала кодового сегмента (таким образом, физический адрес подпрограммы – 0030h). После выполнения описанных процедур происходит переход по полученному адресу и выполнение подпрограммы обслуживания прерывания.
0000h: MOV AX, 0000h
MOV DS, AX ; инициализация сегмента данных
MOV AX, 37Fh
MOV SS, AX ; инициализация стека
MOV AX, 0000h
MOV SP, AX ; инициализация указателя стека
MOV AL, 34h ;
MOV BX, 2803h
MOV [BX], AL ; загрузка в таймер управляющего слова нулевого канала
MOV AL, 64h
MOV [BX], AL ; загрузка в таймер управляющего слова первого канала
MOV AL, В0h
MOV [BX], AL ; загрузка в таймер управляющего слова второго канала
MOV AL, E8h
MOV BX, 2800h
MOV [BX], AL ; загрузка младшего байта константы пересчёта в нулевой
; канал таймера
MOV AL, 03h
MOV [BX], AL ; загрузка старшего байта
MOV AL, С8h
MOV BX, 2801h
MOV [BX], AL ; загрузка однобайтной константы пересчёта в первый
; канал таймера
MOV AL, AFh
MOV BX, 2802h
MOV [BX], AL ; загрузка младшего байта константы пересчёта во второй
; канал таймера
MOV AL, 04h
MOV [BX], AL ; загрузка старшего байта
MOV AL, 00h
MOV BX, 1800h
MOV [BX], AL
MOV DI, 0000h ; DI=0000h – смещение адреса текущего отсчёта в ОЗУ
MOV DX, 0000h ; DX=0000h – подаваемая на четырёхполюсник амплитуда
STI ; разрешение прерывания
HLT ; ожидание прерывания
0030h: MOV AX, 0000h ; инициализация указателя стека,
MOV SP, AX ; чтобы не было переполнения
MOV BX, 2000h ; BX=2000h – адрес АЦП
MOV AL, [BX] ; считывание отсчёта с АЦП
MOV [DI], AL ; запись результата в ячейку памяти [DS:DI]
INC DI
CMP DI, 4B0h
JE Kap
INC DX ; DX=DX+1
MOV BX, 1800h ; BX=1800h – адрес ЦАП
MOV [BX], DX ; вывод на ЦАП содержимого DX
STI ; разрешение прерывания
HLT ; ожидание прерывания
Kap: MOV BX, 1800h
CIKL: MOV DI, 0000h
Sush: MOV AX, [DI]
MOV [BX], AX
INC DI
CMP DI, 4B0h
JE CIKL
JMP Sush
3FF0h: CLI ; запрещение прерывания
JMP 0000h ; переход на начало программы
1) А.С. Глинченко, М.М. Мичурина – «Микропроцессоры и вычислительные устройства. Прогр. и метод. указания.», КрПИ, Красноярск, 1990г.
2) А.И. Горобец и др. – «Справочник по конструированию радиоэлектронной аппаратуры (печатные узлы)», “Техника”, Киев, 1985г.
3) Ю.М. Казаринов – «Микропроцессорный комплект К1810», “Высшая школа”, Москва, 1990г.
4) Ю.М. Казаринов – «Применение микропроцессоров и микроЭВМ в радиотехнических системах», “Высшая школа”, Москва, 1988г.
5) Майко Г.В. – «Ассемблер для IBM PC», Москва, 1999г.
6) Г.Я. Мирский – «Электронные измерения», “Радио и связь”, Москва, 1986г
7) М.М. Мичурина, И.Н. Сушкин – «Использование АЦП и ЦАП в цифровых системах. Метод. указания», КГТУ, Красноярск,1996г.
8) М. Рафикузаман – «Микропроцессоры и машинное проектирование микропроцессорных систем», в 2-х книгах, “Мир”, Москва, 1988г.
9) С.В. Якубовский и др. – Cправочник: «Цифровые и аналоговые интегральные микросхемы», “Радио и связь”, Москва, 1990г.
10) Г.Р. Аванесян, В.Л. Левшин – «Интегральные микросхемы ТТЛ, ТТЛШ», “Машиностроение”, Москва, 1993г.
Обозначение |
Наименование |
Количество |
Конденсаторы |
||
С1 |
К-10У-5-3-10пФ±20% |
1 |
С2 |
К-10У-5-10-1мкФ±20% |
1 |
С3 |
К-10У-5-10-22пФ±20% |
1 |
С4 |
К-10У-5-10-3мкФ±20% |
1 |
С5 |
К-10У-5-10-10пФ±20% |
1 |
С6 |
К-10У-5-10-100мкФ±20% |
1 |
Микросхемы |
||
DA1 |
К1113ПВ1 |
1 |
DA2 |
КР140УД11 |
1 |
DA3 |
КР590КН4 |
1 |
DD1, DD5 |
КР580ИР82 |
2 |
DD2, DD6 |
КР556РТ17 |
2 |
DD3 |
КР1810ГФ84 |
1 |
DD4 |
КР1810ВМ86 |
1 |
DD7 |
KP531ИД7 |
1 |
DD8, DD9 |
КР580ВА86 |
2 |
DD10 |
537РУ9А |
1 |
DD11 |
1533ИР33 |
1 |
DD12 |
К1810ВИ54 |
1 |
DD13 |
КР531ИД7 |
1 |
DD14, DD16 |
K555ИР27 |
1 |
DD15 |
К1108ПА1 |
1 |
DD17 |
К155ЛН1 |
1 |
Резисторы |
||
R1 |
МЛТ-0,5-510кОм±10% |
1 |
R2, R3 |
МЛТ-0,5-1кОм±10% |
2 |
R4,R5 |
МЛТ-0,5-5кОм±10% |
2 |
R6 |
МЛТ-0,5-27кОм±10% |
1 |
Кварц |
||
ZQ1 |
Кварц 14 МГц |
1 |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.