Программная реализация комбинационных схем на микроконтроллере К1-20: Методические указания к лабораторной работе № 3 по дисциплине “Микропроцессорные информационно-управляющие системы на железнодорожном транспорте”

Страницы работы

Содержание работы

6.1.7.6. «Методические указания по отдельным видам занятий»

МИНИСТЕРСТВО ПУТЕЙ СООБЩЕНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ

Кафедра: ”Автоматика и телемеханика на железных дорогах”

ПРОГРАММНАЯ РЕАЛИЗАЦИЯ КОМБИНАЦИОННЫХ СХЕМ НА МИКРОКОНТРОЛЛЕРЕ К1-20

Методические указания к лабораторной работе №3 по дисциплине “Микропроцессорные информационно-управляющие системы на железнодорожном транспорте”

САНКТ-ПЕТЕРБУРГ

1995

Цель лабораторной работы - изучение методов програм­мной реализации булевых функций, являющихся математическим аппаратом описания однотактных конечных автоматов (комбинационных схем).

1. ДВА МЕТОДА ПРОГРАММНОЙ РЕАЛИЗАЦИИ БУЛЕВЫХ ФУНКЦИЙ

Широкое практическое использование методов программной реализации булевых функций( БФ ) стало возможном только с появлением микропроцессоров, как широко доступного и дешево­го универсального базиса.

Различают два метода программной реализации БФ: компиляционный и интерпретирующий.

При компиляционном методе для каждой БФ строится своя программа и при ее выполнении пробуется ввод только наборов входных переменных. К компиляционным методам относятся метод непосредственного вычисления БФ и метод бинарных программ.

При интерпретирующем методе строится универсальная программа, которая настраивается на реализацию конкретной БФ с помощью массива исходных данных. К интерпретирующим мето­дам относятся метод отображения входного набора и метод ад­ресных переходов.

В дальнейшем будем рассматривать методы программной ре­ализации БФ с использованием микроконтроллера К 1 20 и языка ассемблер К 580. Структура технических средств и программная модель микроконтроллера рассмотрены в  [1. рис.1, табл.1. табл.2]. Для ввода и вывода входных и выходных переменных используется параллельный периферийный адаптер ( ППА ), ко­торый обозначен на структурной схеме и программной модели как D 58 (1). Формирование входных переменных XI....,Х4, где XI является младшим разрядом двоичного набора, осуществляет­ся 4-разрядным двоичным счетчиком; для индикации выходных функций используются светодиоды. Электрическое подключение входных переменных и выходной функции к соответствующим разрядам ППА происходит с помощью перемычек на лицевой панели лабораторного макета, который более подробно рассмотрен в [2. рис.2].

2. КОМПИЛЯЦИОННЫЕ МЕТОДЫ ВЫЧИСЛЕНИЯ БУЛЕВЫХ ФУНКЦИЙ

2.1Методнепосредственноговычисления булевыхфункций

Рассмотрим метод непосредственного вычисления БФна примере функции .  На рис.1 показано управляющее слово ( УС ) для настройки ППА D 58 в режим О (канал А и разряды СО....СЗ, канала С настроены на вывод, канал В и разряда С4 ...С7 капала С настроены на ввод), а также подключение входных переменных и выходной функции к соответствующим каналам ППА. Входные переменные XI.....,Х4 подключены к каналу В (разряда D3,.... D0), выходная функция F выводится в канал А ППА (разряд D0).

D7  D6  D5 D4 D3  D2  D1 D0

1

0

0

0

1

0

1

0

   УС ППА D 58

Разряд канала В ППА

Разряды капала А ППА

Рис. 1

На рис.2 представлена блок-схема программы вычисления рассматриваемой функции методом непосредственного вычисления БФ. Основная идея метода состоит в том, что блоки программы вычисляют отдельные части логической формулы в соответствии с законами алгебры логики. На рис.3 приведена программа СР1 вычисления рассматриваемой БФ на языке ассемблер К 580. Циф­ры в поле комментария блок-схемы программы указывают поряд­ковые номера команд текст программы, с помощью которых реа­лизуется соответствующий блок программы. Каждая переменная представлена значениями 0 и 1. Для каждой- переменной отво­дится один байт, т.е. одна ячейка памяти (или один регистр общего назначения ( РОН ), имеющая 8 разрядов, из которых используется только один разряд. В общем случае выбор ис­пользуемого разряда делается произвольно ( в нашем случае это будет разряд D0 ). Таким образом, после выбора использу­емого разряда состояние других разрядов ( в пашем случае D1.....D7 ) безразлично. Поэтому, например, значению 0 соот­ветствует слово 0000000[0], а значению 1 - слово 0000000 [1] (разряд D0 отличен знаком []). Рассмотрим назначение команд программы СР 1.

Команды 1 и 2 настраивают ППА в режим 0. Команда 3 осуществляет ввод входных переменных из канала В в аккумуля­тор процессора. Команды 4и 23 инвертируют входные перемен­ные и выходную функцию. Известно ( ЭТО является особенностью микроконтроллера К1-20 ). Что все каналы ППА на своих входах и выходах имеют инверторы. Поэтому, для того чтобы опериро­вать с истинными значениями входных (выходных) переменных, после приема данных в аккумулятор ( перед выдачей входных данных в канал ) необходимо произвести их инверсию. Команды 5.....11 заносят входные переменные Х1.Х2.ХЗ.Х4 в разряд D0 регистров РОН E,D,С, В соответственно. Это делается пото­му, что все логические операции в процессоре выполняются по­разрядно и, следовательно, входные переменные, промежуточные результаты и выходная функция должны располагаться в однои­менных разрядах своих ячеек памяти или РОН( в нашем случае это разряд D0 ). Команды 12. ....22вычисляют логическую фор­мулу. Регистры РОН II и I, используются для хранения промежу­точных результатов.

 


Похожие материалы

Информация о работе