КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Основы формализованного подхода к разработке прикладных программ МП-контроллеров
JMP MULT RM; возврат, если множитель меньше нуля DAD В; суммирование множимого
До начала работы этой подпрограммы (до команды CALL MULT) основная программа должна обеспечить передачу множителя в аккумулятор, множимого - в регистр С, а регистры В, H, L - обнулить; - через регистр признаков. В результате выполнения операции сравнения модифицируется значение признака переноса СУ и этот признак может служить выходным параметром для соответствующей подпрограммы сравнения SOMPR и основная программа должна содержать последовательность команд: CALL SOMPR JC LAWEL1 При передаче параметров с помощью признаков запрещается сохранять в стеке значение PSW (содержимое регистра признаков и аккумулятора). На начальном этапе разработки МП-контроллера можно применять некоторые формализованные приемы синтеза комбинационных схем и цифровых автоматов на интегральных элементах. Формализованные методы проектирования комбинационных и последовательностных (автоматных) схем на интегральных элементах низкой степени интеграции получили широкое теоретическое развитие, а также практическое применение. Указанные формализованные методы не могут быть непосредственно применены для проектирования систем, использующих МП, так как сам МП - программно-управляемый автомат с жесткой структурой и однозначно кодированной системой состояний и команд. К процедурам, которые могут быть применены для разработки МП-систем, относятся: минимизация булевых функций и автоматных таблиц-переходов (выходов), методы описания работы последовательных устройств на языке графов автоматов Мили и Мура. Микропроцессорная реализация булевых функций не требует дополнительной аппаратуры, но быстродействие контроллеров теряется. Рисунок 48 – Схема реализации булевой функции
Рассмотрим комбинационную схему (рис. 48), реализующую булевую функцию от шести переменных: F=(A^(BvC))v(E^H)vL. Группа датчиков объекта управления генерирует пять независимых двоичных сигналов: А и В от концевых выключателей; С, Е, Н - три младших бита от десятипозиционного переключателя; L-сигнал состояния некоторого программного признака (например, прохождения теста), фиксируемого в определенном разряде одного их рабочих регистров R. Выходной сигнал через порт вывода передается на светодиод индикации и реле исполнительного устройства. Сигналы от датчиков подаются в именные порта ввода информации. После ввода информации необходимо провести проверку состояния отдельных бит введенного байта и формирование значения выхода F. Отдельные биты в байте обрабатываются путем их маскирования непосредственными операндами в командах логических операций AND, OR или XOR с последующей проверкой (истина/ложь) и соответствующей передачей управления (по командам JNZ или JZ). Блок-схема алгоритма МП реализации булевой функции представлена на рисунке 49, где учитывается последовательность проверок, которая определяется скобочной формой записи функции F.
Рисунок 49 – Схема алгоритма программной реализации
Рисунок 50 – Граф автомата «а» и эквивалентная ему БСА «б>:
При реализации булевых функций в МП практически нет никаких ограничений на число переменных. С ростом их числа увеличивается время формирования сигнала F. Законы функционирования последовательных схем задаются или таблицами переходов/выходов, или в виде графа (диаграмма состояний) автомата. Переход от графа автомата проектируемого МП-контроллера к БСА программы - ключевой этап методики, позволяющий отобразить таблицы состояний входов - выходов автомата на систему команд используемого типа МП. Сравнив классические приемы синтеза логических схем, выраженных фрагментами графа автомата М или и БСА, можно заметить, что они эквивалентны (рис.50). Операторные прямоугольники в БСА могут быть интерпретированы как вершины (устойчивые состояния) графа автомата, а условные операторы - как дуги графа Xi/Zi, т.е. как переходы к одному автоматическому состоянию. Операторный прямоугольник представляет собой фрагмент программы (линейный, циклический, но неветвящийся) с одним входом и одним выходом. В течение всего периода устойчивого состояния Q, выходной вектор Z, остается неизменным до тех пор, пока не изменит своего состояния входной вектор X. Для этого в течение устойчивого состояния Q; условные операторы алгоритма программной реализации автомата селектируют (с заданным периодом дискретности) изменение входного вектора X, если оно произошло под воздействием внешних по отношению к МП событий. В результате такого селектирования МП-контроллер переходит к новому устойчивому автоматному состоянию Qi+1 и генерирует новый выходной вектор Zi+1, значения которых полностью определены графом автомата и эквивалентной ему блок-схемой алгоритма. Так как любой оператор БСА, изображенный на рисунке 50, может быть представлен последовательностью команд МП, то дальнейшие действия по разработке прикладного ПО МП-контроллера представляют собой трансляцию (отображение алгоритма на систему команд МП), в результате которой формируется исходный текст прикладной программы.
Дата добавления: 2015-04-29; Просмотров: 367; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |