Введение N отсчетов (1000≤N≤2000) с АЦП в ОЗУ в режиме прямого доступа к памяти, нахождение их среднего значения и вывод его на индикатор, страница 4

mov CAR_BAR_2, AH; Затем сразу старший

mov AX, N;           число циклов (считываемых значений)

mov WCR_CWR_2, AL;          млад байт

mov WCR_CWR_2, AH;         старший байт      

канал 3:      

mov AX, 4000h;              Начальный адрес ОЗУ

mov CAR_BAR_3, AL; Младший байт

mov CAR_BAR_3, AH; Затем сразу старший

mov AX, N;           число циклов (считываемых значений)

mov WCR_CWR_3, AL;          млад байт

mov WCR_CWR_3, AH;         старший байт

Канал 0 как источник - отсюда чтение:

mov AL, 10011000b;      блочная передача, приращение адреса, с автоинициализацией, циклы чтения, канал 0 (источник)

mov KPDP_МR, AL;

Канал 1 как получатель данных - сюда запись:

mov AL, 10010101b;      блочная передача, приращение адреса, с автоинициализацией, циклы записи, канал 1 (получатель)

mov KPDP_МR, AL;

Каналы 2 и 3 – произвольно:

mov AL, 10011010b;      блочная передача, приращение адреса, с автоинициализацией, циклы чтения, канал 2 (источник)

mov KPDP_МR, AL;

mov AL, 10011011b;      блочная передача, приращение адреса, с автоинициализацией, циклы чтения, канал 3 (источник)

mov KPDP_МR, AL;

Команда управления - с запретом захвата шины и циклов ПДП - пока только настраиваем, без выполнения.

mov AL, 11000101b;      режим память-память, нет захвата шины, запрет ПДП, без сжатия во времени, фиксированный приоритет, нормальный цикл записи, сигналы DREQ и DACK - по высокому уровню

mov mov KPDP_RU, AL;        в регистр управления

Сброс запросов на ПДП всех каналов (аппаратные запросы не используются, будут только программные).

clr AL;                            

mov KPDP_RR, AL;      сброс запросов канала 0

inc AL;

mov KPDP_RR, AL;      сброс запросов канала 1

inc AL;

mov KPDP_RR, AL;      сброс запросов канала 2

inc AL;

mov KPDP_RR, AL;      сброс запросов канала 3

Маски

mov AL,00000011;         разрешаем только 0 и 1й

mov KPDP_MASK_ALL_SET, AL;                                                                                                                                                                

Очистка ячеек ОЗУ записываем туда

OZU_clear:

clr AX;

clr BX;

o_c:

mov DS:[AX], BX; в ОЗУ

inc AX;

cmp AX, 2048;      цикл 2048

jne o_c;

Разрешаем работу КПДП и запускаем его. Команда управления - разрешаем захват шины режима память-память, нет захвата шины, запрет ПДП, без сжатия во времени.

mov AL, 11000111b;      фиксированный приоритет, нормальный цикл записи, сигналы DREQ и DACK - по высокому уровню

mov mov KPDP_RU, AL;        в регистр управления

Основной цикл программы

Begin:

Формируем запрос на канал 0

mov AL, 00000100b;                запрос на канал 0

mov mov KPDP_RR, AL;                  в регистр запросов

Здесь процессор отдаст шину в распоряжение КПДП и тот начнет писать данные в ОЗУ из АЦП. По завершению - КПДП выдаст сигнал ЕОР - окончание циклов ПДП, а он соединен с входом прерывания, т.е по завершении возникнет немаскируемое прерывание - в его обработчике все остальное (подсчет среднего и вывод на инд.).

jmp Begin; зацикливаем

Сброс по сигналу RST

ORG FFFF0h;       Вектор сброса

Jmp Reset;                                                                                                                                                                

Заключение

В результате проделанной работы получили микропроцессорное устройство, содержащее 22 микросхемы, что является достаточно большим количеством для реализации такой задачи.

Устройство в себе содержит 4 кБ памяти программ и 4 кБ оперативной памяти статического типа. Такой объем памяти является избыточным, следовательно, возможно введение дополнительных функций в программу, а также возможно расширение адресного пространства вводимых данных.

Архитектура системы имеет совмещенную адресацию и в текущем виде имеет зарезервированные адреса, которые могут быть использованы для подключения к имеющейся системы дополнительных периферийных устройств, в данном случае зарезервировано 2 адреса. При потребности в большем количестве возможно увеличение с небольшими изменениями в схеме.

Недостатками данной реализации является ее излишняя сложность для поставленной задачи и большое энергопотребление.

 Список используемой литературы

1. Казаринова Ю. М. Микропроцессорный комплект 1810: структура М59, программирование, применение: Справочная книга. [Текст] / Ю. М. Казаринова [и др.]. – М: Высшая школа, 1990. – 269 с.

2. Хвощ, С. Т. Микропроцессоры и микроЭВМ в системах автоматического управления [Текст] / С. Т. Хвощ [и др.]. – Л: Машиностроение, 1987. – 640 с.

3. Мальцева, Л. А. Основы цифровой техники [Текст] / Л. А. Мальцева [и др.]. – М: Радио и связь, 1986. – 128 с.

4. Гордонов, А. Ю. Применение микросхем памяти [Текст] / А. Ю. Гордонов [и др.]. – М: Радио и связь, 1994. – 232 с.

5. Лебедев, О. Н. Применение микросхем памяти в электронных устройствах [Текст] / О. Н. Лебедев [и др.]. – М: Радио и связь, 1994. – 216 с.

6. Шарапов, А. В. Цифровая и микропроцессорная техника [Текст] / А. В. Шарапов. – Томск: Издательство Томского университета, 1991. – 186 с.

7. Шарапов, А. В. Аналоговая схемотехника [Текст] / А. В. Шарапов. – Томск: Издательство Томского университета, 2003. – 128 с.