| Главная страница | | Архитектура микроЭВМ | | Принципы обмена данными | | Лабораторные работы | | Примеры систем | | Программно-логическая модель | | Справочная информация |
 
Однокристальная микроЭВМ МК51 Принципы работы булевского процессора

   ЗАДАНИЕ НА ВЫПОЛНЕНИЕ РАБОТЫ

    Вычислить логическую функцию от трех логических переменных (X,Y,Z), каждая из которых поступает по определенной входной линии: X - по P1.0, Y - по P1.1, Z - по P1.2. Входная информация может восприниматься микроЭВМ лишь после поступления определенного разрешающего сигнала по входу P1.3.
    После считывания информации микроЭВМ выдает подтверждающий сигнал по линии P1.4. Результат выводится на линию P1.5. После завершения работы управление передается на начало программы.
    Функция f (X,Y,Z) = # (X & Y v # Z).
    Активный уровень разрешающего сигнала - "1".
    Активный уровень подтверждающего сигнала - "1".

  ПРИМЕР ВЫПОЛНЕНИЯ ЛАБОРАТОРНОЙ РАБОТЫ

    Подготовка к работе должна содержать таблицу истинности логической функции, реализуемой микроЭВМ.
Таблица истинности
    Текст программы на языке Ассемблера
    ; Работа 1 "Булевский процессор"
    ; Функция f(X,Y,Z)= # (X & Y v # Z)
    ; X=P1.0; Y=P1.1; Z=P1.2; f=P1.5
    ; P1.3 - разрешающий сигнал высокого уровня
    ; P1.4 - сигнал подтверждения высокого уровня
.ORG 00h
AJMP BEGIN  ; переход на начало программы реализации функции
.ORG 30h
BEGIN: MOV P1,#00001111b  ; настройка Р1.0,...,Р1.3 на ввод
 ; установка Р1.4 в "0"
JNB P1.3,$  ; ожидание сигнала разрешения
MOV C,P1.2  ; С=Х
ANL C,P1.1  ; C=X&Y
MOV 00,C  ; запись промежуточного результата
MOV C,P1.0  ; C=Z
SETB P1.4  ; выдача сигнала подтверждения
CPL C  ; C=#Z
ORL C,00  ; C=f
MOV P1.5,C  ; выдача результата
AJMP BEGIN  ; переход на начало программы
.END
    Для написания программы следует использовать команды булевского процессора из состава команд микроЭВМ. Нужно избегать часто встречающейся ошибки - использования символа "/" в командах пересылки битов (MOV). Такой символ допускается только в командах логических операций (ANL, ORL).
Текст программы
    Отладка программы
    При отладке необходимо проверить правильность выполнения всей таблицы истинности. Входные переменные должны задаваться как "1" или "0" на входах P1x модели (но не в разрядах регистра Р1!!!).
Задание входных
сигналов
    Cледует обратить внимание на очень распространенный источник ошибок при отладке - переменная Х должна задаваться на входе Р1.0 - в самом правом разряде порта при его изображении на экране программно-логической модели, а в таблице истинности для переменной Х отведен самый левый столбец. То же касается переменной Z.
Задание переменных

| На главную страницу | На начало раздела | На начало страницы | © КСиТ МИФИ, 2000 г.