Встроенные микропроцессорные системы на основе однокристальных микро ЭВМ

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

»нение программы идет с проверками и ветвлением, до тех пор пока не будет получен результат, который выдается на порт.

 

808580488051IN SERPORTMOV C,SERPINANI MASKCLRCJZ L0JNT0 L0CMCCPLCL0: LXI HL,SERBUFL0: MOV R0,#SERBUFMOV A,MMOV A,@R0MOV A,SERBUFRRRRC ARRCAMOV M,AMOV @R0,AMOV SERBUF,A8 команд7 команд4 команды14 байт9 байт7 байт56 состояний9 циклов4 цикла19 мкс22,5 мкс4 мкса) подпрограмма ввода808580488051LXI HL,SERBUFMOV R0,#SERBUFMOV A,MMOVA,@ROMOV A,SERBUFRRRRCARRCAMOV M,AMOV @R0,AMOV SERBUF,AIN SERPORTJC H1JCHIL0: ANI NOT MASKANL SERPRT,#NOT MASKMOV SERPIN,CJMP CNTJMPCNTH1: ORI MASKH1: ORL SERPRT,#MASKCNT: OUT SERPORTCNT:10 команд8 команд4 команды20 байт13 байт7 байт72 состояния11 циклов5 циклов24 мкс27,5 мкс5 мксб) подпрограмма выводаРисунок 8 -Подпрограммы последовательного ввода/выводаВ первом варианте решения (пример 1) не используются команды битового процессора, хотя используется мнемоника MCS-51. Другие процессоры могут выполнить аналогичные действия, используя собственную мнемонику типа INPUT, OUTPUT, LOAD, STORE и т.д.

Благодаря возможностям проверки битов одна команда MCS51 может заменить последовательность "переслать/маскировать/условно перейти". Это позволяет сократить программу (пример 2). Для удобства каждой входной переменной присвоено символическое имя.

 

Рисунок 9 - Аппаратное решение логической функции

Рисунок 10 - Программное решение логической функции

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

Таким образом ОМЭВМ семейства MCS-51 могут моделировать любую комбинационную схему с N-числом входов с помощью самое большее N+1 строк исходной программы: по одной строке на каждый вход и еще одна на сохранение результата. Возможное ограничение при моделировании большого числа входов и выходов определяется длиной программы и фиксированным числом выводов портов.

 

Пример 1. Использование команд с байтовыми операндами

BFUNC1вычисляет логическую функцию 6 переменных путем загрузки байта маскирования соответствующих битов в аккумуляторе и выполнения условных переходов. Байты и маски соответствуют адресам и битовым позициям. (Используется для процессоров, ориентированных на работу с байтами)OUTBUFDATA22H ; карта состояния выходовTESTV:MOVA,P2ANLA,#00000100BJNZTESTUMOVA,TCONANLA,#00100000BJZTESTXTESTU:MOVA,P1ANLA,#00000010BJNZSETQTESTX:MOVA,TCONANLA,#00001000BJNZTESTZMOVA,20HANLA,#00000001BJZSETQTESTZ:MOVA,21HANLA,#00000010BJZSETQCLRQZ:MOVA, OUTBUFANLA,#11110111BJMPOUTQSETQ:MOVA, OUTBUFORLA,#00001000BOUTQ:MOVOUTBUF, AMOVP3,AПример 2. Использование команд проверки битов BFUNC2вычисляет логическую функцию 6 переменных путем прямого опроса каждого бита. Биты обозначены в соответствии с символами, использованными в алгоритме (Используется возможность проверки битов)UBITPl.lVBITP2.2WBITTF0XBITIE1YBIT20H.0ZBIT21H.1QBITP3.3TEST_V:JBV,TEST_UJNBW,TEST_XTEST_U:JBU,SET_QTEST_X:JNBX,TEST_ZJNBY,SET_QTEST_Z:JNBZ,SET_QCLR_Q:CLRQJMPNXTTSTSET_Q:SETBQNXTTST:...; продолжение программыПример 3. Использование битового процессораFUNC3Вычисляет логическую функцию 6 переменных с использованием возможностей битового процессора MCS-51.MOVC,VORLC,W; Выход вентиля ИЛИANLC,U; Выход верхнего вентиля ИMOV0F,C; Сохранение промежуточного состоянияMOVC,XANLC,/Y; Выход нижнего вентиля ИORLC,0F; Использование ранее вычисленного значенияORLC,/Z; Использование последней входной переменнойMOVC,/Z; Вывод результата

В разделе 7 пособия рассмотрены практические примеры и их реализация на основе системы команд и программной модели ОМЭВМ семейства MCS-51. Все приведенные решения задач имеют программную совместимость с последующими модификациями 8-разрядных микроконтроллеров фирмы INTEL, включая MCS-251.

СПИСОК ЛИТЕРАТУРЫ

 

1. Исаченко В.П., Осипова В.А., Сукомел А.С. Компьютерная электроника. Учебник для вузов. 3-е изд. перераб. и доп. М.:Энергия. 2005.-488 с.

2. Михеев М.А., Михеева И.М. Основы радиоэлектроники. М.:Энергия. 2003.-368 с.

3. Краснощеков Е.А., Сукомел А.С. Задачник по электронике. М.:Энергия. 1999-280 с.

4. Козлова О.В., Новиков Ю.Л., Бочарова Т.Н. Стандарт предприятия. Оформление расчетно-пояснительной записки и графической части. СТП ВГТУ 004-2003.-42 с.

5. Теплотехнический справочник. Под общ. ред. В.Н. Юренева и П.Д. Лебедева. В -2х т. Изд. 2-е, перераб. М., "Энергия", 2006.-897 с.