Проектирование системы автоматизированного контроля работоспособности электронных плат
Анализ возможности разработки системы автоматизированного контроля на базе микроконтроллера МК51. Анализ структурной схемы МК51, портов ввода/вывода данных, возможности организации доступа к внешней памяти. Обзор системы команд МК51. Резидентная память.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 15.01.2012 |
Размер файла | 108,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Курсовая работа
По дисциплине: Эксплуатация и сервис ЭВМ
На тему: Проектирование системы автоматизированного контроля работоспособности электронных плат
Оглавление
Введение
1. Анализ возможности разработки системы автоматизированного контроля на базе микроконтроллера МК51
1.1 Анализ структурной схемы МК51
1.2 Анализ портов ввода/вывода данных
1.3 Анализ возможности организации доступа к внешней памяти
1.4 Анализ системы команд МК51
Выводы
Библиографический список
Введение
В настоящее время развитие микроэлектроники и широкое применение в самых разных отраслях привело к созданию новых высокоэффективных средств, что в свою очередь вызвало необходимость развития средств управления процессами, начиная от автоматизированных систем управления и заканчивая отдельными узлами этих систем.
Все автоматизированные системы (АСУ) представляют собой комплекс технических средств, функционально связанных между собой и образующие целую систему по сбору информации об объектах, обработки ее по определенным алгоритмам, в соответствии со сложившейся ситуацией, состоянием внешней среды и условиям применения. Ведь успешное выполнение задач зависит от:
- тактико-технических характеристик;
- качества его оборудования;
- целостного и правильного взаимодействия между системами управления.
Актуальность данной курсовой работы заключается в разработке устройства, которое способно быстро выявлять неисправности и тоже время соответствовать жестко отведенным требованиям. Основными требованиями предъявляемые к устройству являются маленькие габариты, не очень дорогая себестоимость и способность выполнять определенный перечень задач.
Для решения данной задачи целесообразно использовать микроконтроллерное устройство, потому что применение микроконтроллеров связано с их доступностью, надежностью, легкостью программирования и недорогой себестоимостью, а так же архитектурная организация микроконтроллеров разрешает подключение внешней памяти, что расширяет круг решаемых задач, сферу его применения.
1. Анализ возможности разработки системы автоматизированного контроля на базе микроконтроллера МК51
Микроконтроллер выполнен на основе высокоуровневой n-МОП технологии и выпускается в корпусе БИС, имеющем 40 внешних выводов. Для работы МК51 требуется один источник электропитания +5В. Через четыре программируемых порта ввода/вывода МК51 взаимодействует со средой в стандарте ТТЛ-схем с тремя состояниями выхода.
Корпус МК51 имеет два вывода для подключения кварцевого резонатора, четыре вывода для сигналов, управляющих режимом работы и восемь линий порта 3, которые могут быть запрограммированы пользователем на выполнение специализированных (альтернативных) функций обмена информацией со средой.
1.1 Анализ структурной схемы МК51
Основу структурной схемы МК51 образует внутренняя двунаправленная 8-битная шина, которая связывает между собой все основные узлы и устройства: резидентную память, АЛУ, блок регистр специальных функций, устройство управления и порты ввода/вывода.
Арифметическо-логическое устройство
8-битное АЛУ может выполнять арифметические операции сложения, вычитания, умножения и деления; логические операции И, ИЛИ, исключающее ИЛИ, а также операции циклического сдвига, сброса, инвертирования и т.п. В АЛУ имеются программно недоступные регистры Т1 и Т2 предназначенные для временного хранения операндов, схема десятичной коррекции и схема формирования признаков.
Простейшая операция сложения используется в АЛУ для инкрементирования содержимого регистров, продвижения регистра-указателя данных и автоматического вычисления следующего адреса РПП. Простейшая операция вычитания используется в АЛУ для декрементирования регистров и сравнения переменных.
Простейшие операции автоматически образуют "тандемы" для выполнения в АЛУ таких операций, как, например, инкрементировании 16-битных регистровых пар. В АЛУ реализуется механизм каскадного выполнения простейших операций для реализации сложных команд. Как, например, при выполнении одной из команд условной передачи управления по результату сравнения в АЛУ трижды инкрементируется СК, дважды производится чтение из РПД, выполняется арифметическое: равнение двух переменных, формируется 16-битный адрес перехода и принимается решение о том, делать, или не делать переход по программе. Все перечисленные операции выполняются в АЛУ всего лишь за 2 мкс.
Важной особенностью АЛУ является его способность оперировать не только байтами, но и битами. Отдельные программно-доступные биты могут быть установлены, сброшены, инвертированы, переданы, проверены и использованы в логических операциях. Эта способность АЛУ оперировать битами столь важна, что во многих описаниях МК51 говорится о наличии в нем "булевского процессора". Для управления объектами часто применяются алгоритмы, содержащие операции над входными и выходными булевскими переменными (истина/ложь), реализация которых средствами обычных микропроцессоров сопряжена с определенными трудностями.
Таким образом, АЛУ может оперировать четырьмя типами информационных объектов: булевскими (1 бит), цифровыми (4 бита), байтными (8 бит) и адресными (16 бит). В АЛУ выполняется 51 различная операция пересылки или преобразования этих данных. Так как используется 11 режимов адресации (7 для данных и 4 для адресов), то путем комбинирования "операция/ режим адресации" базовое число команд 111 расширяется до 255 из 256 возможных при однобайтном коде операции.
Резидентная память
Память программ и память данных, размещенные на кристалле МК51 физически и логически разделены, имеют различные механизмы адресации, работают под управлением различных сигналов и выполняют разные функции.
Память программ (ПЗУ или СППЗУ) имеет емкость 4Кбайта и предназначена для хранения команд, констант, управляющих слов инициализации, таблиц перекодировки входных и выходных переменных и т.п. РПП имеет 16-битную шину адреса, через которую обеспечивается доступ из счетчика команд или из регистра-указателя данных Последний выполняет функции базового регистра при косвенных переходах по программе или используется в командах, оперирующих с таблицами.
Память данных (ОЗУ) предназначена для хранения переменных в процессе выполнения прикладной программы, адресуется одним байтом и имеет емкость 128 байт. Кроме того, к адресному пространству РПД примыкают адреса регистров специальных функций (РСФ).
Память программ, так же как и память данных, может быть расширена до 64 Кбайт путем подключения внешних БИС.
Регистры-указатели. 8-битный указатель стека (РУС) может адресовать любую область РПД. Его содержимое инкрементируется прежде, чем данные будут запомнены в стеке в ходе выполнения команд PUSH CALL. Содержимое РУС декрементируется после выполнения команд POP и RET. Подобный способ адресации элементов стека называют преинкрементным/постдекрементным. В процессе инициализации МК51 после сигнала СБР в РУС автоматически загружается код 07Н. Это значит, что если прикладная программа не переопределяет стек, то первый элемент данных в стеке будет располагаться в ячейке РПД с адресом 08Н.
Двухбайтный регистр-указатель данных (РУД) обычно используется для фиксации 16-битного адреса в операциях с обращением к внешней памяти. Командами МК51 регистр-указатель данных может быть использован или как 16-битный регистр, или как два независимых 8-битных регистра (DPH и DPL).
Буфер последовательного порта. Регистр с символическим именем f BUF представляет собой два независимых регистра - буфер приемника и буфер передатчика. Загрузка байта в SBUF немедленно вызывает начало процесса передачи через последовательный порт. Когда байт считывается из SBUF, это значит, что его источником является приемник последовательного порта.
Регистры специальных функций. Регистры с символическими именами IP, IE, TMOD, TCON, SCON и PCON используются для фиксации и программного изменения управляющих бит и бит состояния схемы прерывания, таймера/счетчика, приемопередатчика последовательного порта и для управления мощностью электропитания МК51.
Устройство управления и синхронизации
Кварцевый резонатор, подключаемый к внешним выводам XI и Х2 корпуса МК51, управляет работой внутреннего генератора, который в свою очередь формирует сигналы синхронизации.
Устройство управления МК51 на основе сигналов синхронизации формирует машинный цикл фиксированной длительности, равным 12 периодам резонатора или шести состояниям первичного управляющей го автомата (SI-- S6). Каждое состояние управляющего автомата содержит две фазы (Р1, Р2) сигналов резонатора. В фазе Р1, как правило, выполняется операция в АЛУ, а в фазе Р2 осуществляется межрегистровая передача. Весь машинный цикл состоит из 12 фаз, начиная с фазы S1P1 и кончая фазой S6P2. Эта временная диаграмма иллюстрирует работу устройства управления МК51 при выборке и исполнении команд различной степени сложности. Bсе заштрихованные сигналы являются внутренними и недоступны пользователю МК51 для контроля. Внешними, наблюдаемыми сигналами являются только сигналы резонатора и строба адреса внешней памяти. Как видно из временной диаграммы, сигнал САВП формируется дважды за один машинный цикл (S1P2--S2P1 и S4P2--S5P1) и используете для управления процессом обращения к внешней памяти.
Большинство команд МК51 выполняется за один машинный цикл. Некоторые команды, оперирующие с 2-байтными словами или связанные с обращением к внешней памяти, выполняются за два машинных цикла. Только команды деления и умножения требуют четырех машинных циклов. На основе этих особенностей работы устройства управления МК51 производится расчет времени исполнения прикладных программ.
1.2 Анализ портов ввода/вывода данных
микроконтроллер автоматизированный память
Все четыре порта МК51 предназначены для ввода или вывода информации побайтно. Схемотехника портов ввода/вывода МК51 для одного бита (порты 1 и 2 имеют примерно такую же структуру как и порт 3) показана на рисунке 1.1. Каждый порт содержит управляемые регистр-защелку, входной буфер и выходной драйвер.
Выходные драйверы портов 0 и 2, а также входной буфер порта 0 используются при обращении к внешней памяти (ВП). При этом через порт 0 в режиме временного мультиплексирования сначала выводится младший байт адреса ВП, а затем выдается или принимается байт данных. Через порт 2 выводится старший байт адреса в тех случаях, когда разрядность адреса равна 16 бит.
а)
б)
Рисунок 1.1 - Схемотехника портов ввода/вывода МК51 а - порт 0; б - порт 3
Все выводы порта 3 могут быть использованы для реализации альтернативных функций. Альтернативные функции могут быть задействованы путем записи 1 в соответствующие биты регистра-защелки (РЗ.0-Р3.7) порта 3.
Порт 0 является двунаправленным, а порты 1, 2 и 3 - квазидвунаправленными. Каждая линия портов может быть использована независимо для ввода или вывода информации. Для того чтобы некоторая линия порта использовалась для ввода, в D-триггер регистра-защелки порта должна быть записана 1, которая закрывает МОП - транзистор выходной цепи.
По сигналу СБР в регистры-защелки всех портов автоматически записываются единицы, настраивающие их тем самым на режим ввода.
Все порты могут быть использованы для организации ввода/вывода информации по двунаправленным линиям передачи. Однако порты 0 и 2 не могут быть использованы для этой цели в случае, если МК-система имеет внешнюю память, связь с которой организуется через общую разделяемую шину адреса/данных, работающую в режиме временного мультиплексирования.
Запись в порт. При выполнении команды, которая изменяет содержимое регистра-защелки порта, новое значение фиксируется в регистре в момент S6P2 последнего цикла команды. Однако опрос содержимого Регистра-защелки выходной схемой осуществляется во время фазы P1 и, следовательно, новое содержимое регистра-защелки появляется на выходных контактах порта только в момент S1P1 следующего машинного цикла.
Нагрузочная способность портов. Выходные линии портов 1, 2 и 3 могут работать на одну ТТЛ-схему. Линии порта 0 могут быть нагружены на два входа ТТЛ-схем каждая. Линии порта 0 могут работать и на n - МОП-схемы, однако при этом их необходимо подключать на источник электропитания через внешние нагрузочные резисторы за исключением случая, когда шина порта 0 используется в качестве шины адреса/данных внешней памяти.
Входные сигналы для МК51 могут формироваться ТТЛ - схемами или n-МОП - схемами. Допустимо использование в качестве источников сигналов для МК51 схем с открытым коллектором или открытым стоком. Однако при этом время изменения входного сигнала при переходе из 0 в 1 окажется сильно затянутым.
Особенности работы портов. Обращение к портам ввода/вывода возможно с использованием команд, оперирующих с байтом, отдельным битом и произвольной комбинацией бит. При этом в тех случаях, когда порт является одновременно операндом и местом назначения результата, устройство управления автоматически реализует специальный режим, который называется «чтение-модификация-память». Этот режим обращения предполагает ввод сигналов не из внешних выводов порта, а из его регистра-защелки, что позволяет исключить неправильное считывание ранее выведенной информации.
Подобный механизм обращения к портам реализован в следующих командах:
ANL- логическое И, например ANL P1, A;
ORL- логическое ИЛИ, например ORL P2, A;
XRL- исключающее ИЛИ, например XRL P3, A;
JBC- переход если в адресуемом бите единица, и последующий сброс бита, например JPC P1.1, LEBEL;
CPL- инверсия бита, например CPL P3.3;
INC- инкремент порта, например INC P2;
DEC- декремент порта, например DEC P2;
DJNZ- декремент порта и переход, если его содержимое не равно нулю, например DJNZ P3, LABEL;
MOV PX.Y, C- передача бита переноса в бит Y порта X;
SET PX.Y- установка бита Y порта X;
CLR PX.T- сброс бита Y порта X.
Совсем не очевидно, что последние три команды в приведенном списке являются командами «чтение-модификация-запись». Однако это именно так. По этим командам сначала считывается байт из порта, а затем записывается новый байт в регистор-защелку.
Причиной, по которой команды «чтение-модификация-запись» обеспечивают раздельный доступ к регистру-защелке порта и к выводам порта, является необходимость исключить возможность неправильного прочтения уровней сигналов внешних выводах. Предположим для примера, что линия Y порта X соединяется с базой мощного транзистора и выходной сигнал на ней предназначен для его управления. Когда в данный бит записана 1, то транзистор включается. Если для проверки состояния исполнительного механизма (в нашем случае - мощного транзистора) прикладной программе требуется прочитать состояние выходного сигнала в том же бите порта, то считывание сигналя с внешнего вывода порта, а не из D-триггера регистра-защелки порт приведет к неправильному результату: единичный сигнал на базе транзистора имеет относительно низкий уровень и будет интерпретирован в МК как сигнал 0. Команды "чтение-модификация-запись" реализуя считывание из регистра-защелки, а не с внешнего вывода порта, что обеспечивает получение правильного значения 1.
1.3 Анализ возможности организации доступа к внешней памяти
В микроконтроллерных системах, построенных на основе МК51 возможно использование двух типов внешней памяти: постоянной памяти программ (ВПП) и оперативной памяти данных (ВПД). Доступ к ВПП осуществляется при помощи управляющего сигнала РВПП, который выполняет функцию строб - сигнала чтения. Доступ к ВПД обеспечивается управляющими сигналами ЧТ и ЗП, которые формируются в линиях Р3.7 и Р3.6 при выполнении портом 3 альтернативных функций которые представлены в соответствии с таблицей 1.1. При обращении к ВПП всегда используется 16-битный адрес. Доступ к ВПД возможен с использованием 16-битного адреса (MOVX А, @ DPTR) или 8-битного адреса (MOVX A.,@ Ri) .
Таблица 1.1 - Альтернативные функции порта 3
Символ |
Позиция |
Имя и назначение |
|
RD |
P3.7 |
Чтение. Активный сигнал низкого уровня формируется аппаратно при обращении к ВПД |
|
W/R |
P3.6 |
Запись. Активный сигнал низкого уровня формируется аппаратно при обращении к ВПД |
|
T1 |
P3.5 |
Вход таймера/счетчика 1 или тест - вход |
|
T0 |
P3.4 |
Вход таймера/счетчика 0 или тест - вход |
|
INT1 |
P3.3 |
Вход запроса прерывания 1. Воспринимается сигнал низкого уровня или срез |
|
INT0 |
P3.2 |
Вход запроса прерывания 0. Воспринимается сигнал низкого уровня или срез |
|
TXD |
P3.1 |
Выход передатчика последовательного порта в режиме УАПП. Выход синхронизации в режиме сдвигающего регистра |
|
RXD |
P3.0 |
Вход приемника последовательного порта в режиме УАПП. Ввод/вывод данных в режиме сдвигающего регистра. |
В любых случаях использования 16-битного адреса старший байт адреса фиксируется (и сохраняется неизменным в течение одного цикла записи или чтения) в регистре-защелке порта 2.
Если очередной цикл внешней памяти (MOVX A,@ DPTR) следует не
сразу же за предыдущим циклом внешней памяти, то неизменяемое содержимое регистра-защелки порта 2 восстанавливается в следующем цикле. Если используется 8-битный адрес (MOVX A,@ Ri), то содержимое регистра-защелки порта 2 остается неизменным на его внешних выводах в течение всего цикла внешней памяти.
Через порт 0 в режиме временного мультиплексирования осуществляется выдача младшего байта адреса и передача байта данных. Сигнал строба адреса внешней памяти (САВП) должен быть использован для записи байта адреса во внешний регистр. Затем в цикле записи выводимый байт данных появляется на внешних выводах порта 0 только перед появлением сигнала ЗП. В цикле чтения вводимый байт данных принимается в порт 0 по фронту стробирующего сигнала ЧТ.
При любом обращении к внешней памяти устройство управления МК51 загружает в регистр-защелку порта 0 код OFFH, стирая тем самым информацию, которая могла в нем храниться.
Доступ к ВПП возможен при выполнении двух условий либо на вход отключения резидентной памяти программ (ОРПП) подаете активный сигнал, либо содержимое счетчика команд превышает значение 0FFFH. Наличие сигнала ОРПП необходимо для обеспечения доступа к младшим 4К адресам адресного пространства ВПП при использовании МК51 (микроконтроллера без резидентной памяти программ).
Основная функция сигнала САВП -- обеспечить временное согласование передачи из порта 0 на внешний регистр младшего байта адрес в цикле чтения из ВПП. Сигнал САВП приобретает значение 1 дважды в каждом машинном цикле. Это происходит даже тогда, когда в цикле выборки нет обращения к ВПП. Доступ к ВПД возможен только в том случае, если сигнал САВП отсутствует. Первый сигнал САВП во втором машинном цикле команды MOVX блокируется. Следовательно, в любой МК-системе, не использующей ВПД, сигнал САВП генерируется с постоянной частотой, равной 1/16 частоты резонатора, и может быть использован для синхронизации внешних устройств или для реализации различных временных функций.
При обращении к РПП сигнал разрешения внешней памяти программ (РВПП) не генерируется, а при обращении к ВПП он выполняет функцию строб-сигнала чтения. Полный цикл чтения ВПД, включая установку и снятие сигнала ЧТ, занимает 12 периодов резонатора.
Особый режим работы МК51. Содержимое памяти программ МК51 заполняется единожды на этапе разработки МК-системы и не может быть модифицировано в завершенном (конечном) изделии. По этой причине микроконтроллеры не являются машинами классической "фон-неймоновской" архитектуры. Оперативная память данных (резидентная или внешняя) не может быть использована для хранения кодов программы, так как в МК выборка команд производится только из области адресов памяти программ. Эта особенность архитектуры МК объясняется тем, что в большинстве применений МК требуется наличие одной неизменяемой прикладной программы, хранимой в ПЗУ, наличие ОЗУ небольшой емкости для временного хранения переменных и эффективных, следовательно, разных методов адресации памяти программ и памяти данных.
Однако на этапе разработки и отладки прикладных программ машин "фон-неймановского" типа оказывается очень удобной, так как позволяет разработчику оперативно изменять коды прикладной программы размещаемой в ОЗУ. С этой целью МК-система может быть модифицирована для совмещения адресного пространства ВПП и ВПД путем подключения внешней логики. Здесь на выходе схемы и формируется строб-сигнал чтения, который может быть использован для объединения памяти программ и памяти данных во внешнем ОЗУ. При этом необходимо учитывать, что в МК51 на схемном уровне реализуются пять различных и независимых механизмов адресации для доступа к РПП, РПД, ВПП, ВПД и блоку регистров специальных функций. Вследствие этого перемещаемая версия прикладной программы, которая отлаживается в среде внешней памяти программ/данных, будет отличаться от загружаемой в РП (окончательной) версии программы.
Подобный способ организации управления внешней памятью может быть использован в тех применениях МК51, где требуется оперативная перезагрузка или модификация прикладных программ (с помощью УВВ), как в ЭВМ классической архитектуры.
1.4 Анализ системы команд МК51
Система команд МК51 содержит 111 базовых команд, которые удобно разделить по функциональному признаку на пять групп: команды передачи данных, арифметических операций, логических операций, передачи управления и операций с битами.
Большинство команд (94) имеют формат один или два байта и выполняются за один или два машинных цикла. При тактовой частоте 12 МГц длительность машинного цикла составляет 1 мкс.
Первый байт команды любых типа и формата всегда содержит код операции (КОП). Второй и третий байты содержат либо адреса операндов, либо непосредственные операнды.
Типы операндов. МК51 имеет 128 программно-управляемых флагов пользователя. Имеется также возможность адресации отдельных бит блока регистров специальных функций и портов. Для адресации бит используется прямой 8-битный адрес (bit). Косвенная адресация бит невозможна. Четырехбитные операнды используются только при операциях обмена (команды SWAP и XCHD). Восьми битным операндом может быть ячейка памяти программ или данных (резидентной или внешней), константа (непосредственный операнд), регистры специальных функций (РСФ), а также порты ввода/вывода. Порты и РСФ адресуются только прямым способом. Байты памяти могут адресоваться также и косвенным образом через адресные регистры (R0, R1, DPTR и PC). Двухбайтные операнды - это константы и прямые адреса, для представления которых используются второй и третий байты команды.
Способы адресации данных. В МК51 используются такие как прямая, непосредственная, косвенная и неявная. Следует отметить, что при косвенном способе адресации РПД используются все восемь бит адресных регистров R0 и RI.
Система команд МК51 допускает больше комбинаций способов адресации операндов в командах, что делает ее более гибкой и универсальной.
Флаги результата. Слово состояния программы (PSW) включает в себя четыре флага: С - перенос, АС - вспомогательный перенос, OV -переполнение и Р - паритет.
Флаг паритета напрямую зависит от текущего значения аккумулятора. Если число единичных бит аккумулятора нечетное, то флаг Р устанавливается, а если четное - сбрасывается. Все попытки изменить флаг Р, присваивая ему новое значение, будут безуспешными, если содержимое аккумулятора при этом останется неизменным. Флаг АС устанавливается в случае, если при выполнении операции сложения/вычитания между тетрадами байта возник перенос/заем. Флаг С устанавливается, если в старшем бите результата возникает перенос или заем. При выполнении операций умножения и деления флаг С сбрасывается. Флаг OV (отсутствует в МК48) устанавливается, если результат операции сложения/вычитания не укладывается в семи битах и старший (восьмой) бит результата не может интерпретироваться как знаковый. При выполнении операции деления флаг OV сбрасывается, а в случае деления на нуль устанавливается. При умножении флаг OV устанавливается, если результат больше 255.
Флаги модифицируются командами, в которых местом назначения результата определены PSW или его отдельные биты, а также командами операций над битами.
Символическая адресация. При использовании ассемблера МК51 (ASM 51) для получения объектных кодов программ допускается применение в программах символических имен регистров специальных функций (РСФ), портов и их отдельных бит Для адресации отдельных бит РСФ и портов (такая возможность имеется не у всех РСФ) можно использовать символическое имя бита следующей структуры: < имя РСФ или порта >. < номер бита.
Например, символическое имя пятого бита аккумулятора будет следующим: АСС.5. Символические имена РСФ, портов и их бит являются зарезервированными словами для ASM51, и их не надо определять с помощью директив ассемблера.
Группа команд передачи данных
Большую часть команд данной группы составляют команды передачи и обмена байтов. Команды пересылки бита, представлены в группе команд битовых операций. Все команды данной группы не модифицируют флаги результата, за исключением команд загрузки PSW и аккумулятора (флаг паритета).
Структура информационных связей. В зависимости от способа адресации и места расположения операнда можно выделить девять типов операндов, между которыми возможен информационный обмен. Аккумулятор (А) представлен на этом графе отдельной вершиной, так как многие команды используют неявную (подразумеваемую) адресацию.
Аккумулятор. В МК51 обращение к аккумулятору может быть выполнено с использованием неявной и прямой адресации.
В зависимости от способа адресации аккумулятора применяется одно из символических имен: А или АСС (прямой адрес). При прямой адресации обращение к аккумулятору производится как к одному из РСФ, и его адрес указывается во втором байте команды.
Использование неявной адресации аккумулятора предпочтительнее, однако, не всегда возможно, например, при обращении к отдельным битам аккумулятора. Обращение к внешней памяти данных. При использовании команд MOVX @ Ri обеспечивается доступ к 256 байтам внешней памяти данных.
Существует также режим обращения к расширенной ВПД, когда для доступа используется 16-битный адрес, хранящийся в регистре-указателе данных (DPTR). Команды MOVX @DPTR обеспечивают доступ к 65 536 байтам ВПД.
Группа команд арифметических операций
Данную группу образуют 24 команды, выполняющие операции сложения, десятичной коррекции, инкремента/декремента байтов. Дополнительно по сравнению с МК48 введены команды вычитания, умножения и деления байтов.
Команды ADD и ADDC аналогичны командам сложения МК48, но допускают сложение аккумулятора с большим числом операндов. Аналогично командам ADDC существуют четыре команды SUBB, что позволяет более просто, чем в МК48, производить вычитание байтов и многобайтных двоичных чисел. В МК51 реализуется расширенный (по сравнению с МК48) список команд инкремента/декремента байтов, введена команда инкремента 16-битного регистра-указателя данных.
Группа команд логических операций
Данную группу образуют 25 команд, реализующих те же логические операции над байтами, что и в МК48. Однако в МК51 значительно расширено число типов операндов, участвующих в операциях.
В отличие от МК48 имеется возможность производить операцию "исключающее ИЛИ" с содержимым портов. Команда XRL может быть эффективно использована для инверсии отдельных бит портов.
Группа команд операций с битами
Отличительной особенностью данной группы команд является то, что они оперируют с однобитными операндами. В качестве таких операндов могут выступать отдельные биты некоторых регистров специальных функций (РСФ) и портов, а также 128 программных флагов пользователя.
Существуют команды сброса (CLR), установки (SETB) и инверсии (CPL) бит, а также конъюнкции и дизъюнкции бита и флага переноса. Для адресации бит используется прямой восьмиразрядный адрес (bit). Косвенная адресация бит невозможна.
К данной группе команд относятся команды, обеспечивающие условное и безусловное ветвление, вызов подпрограмм и возврат из них, а также команда пустой операции NOP. В большинстве команд используется прямая адресация, т.е. адрес перехода целиком (или его часть) содержится в самой команде передачи управления. Можно выделить три разновидности команд ветвления по разрядности указываемого адреса перехода.
Длинный переход. Переход по всему адресному пространству ПП. В команде содержится полный 16-битный адрес перехода (ad 16). Трехбайтные команды длинного перехода содержат в мнемокоде букву L (Long). Всего существует две такие команды: LJMP -- длинный переход и LCALL -- длинный вызов подпрограммы. На практике редко возникает необходимость перехода в пределах всего адресного пространства и чаше используются укороченные команды перехода, занимающие меньше места в памяти.
Абсолютный переход. Переход в пределах одной страницы памяти программ размером 2048 байт. Такие команды содержат только 11 младших бит адреса перехода (ad 11). Команды абсолютного перехода имеют формат 2 байта. Начальная буква мнемокода -- A(Absolute). При выполнении команды в вычисленном адресе следующей по порядку команды ((РС)= (PC) + 2) 11 младших бит заменяются на ad 11 из тела команды абсолютного перехода.
Относительный переход. Короткий относительный переход позволяет передать управление в пределах -128 ч- +127 байт относительно адреса следующей команды (команды, следующей по порядку за командой относительного перехода). Существует одна команда безусловного короткого перехода SJMP (Short). Все команды условного перехода используют данный метод адресации. Относительный адрес перехода (rel) содержится во втором байте команды.
Косвенный переход. Команда JMP @A + DPTR позволяет передавать управление по косвенному адресу. Эта команда удобна тем, что представляет возможность организации перехода по адресу, вычисляемому самой программой и неизвестному при написании исходного текста программы.
Выводы
1) наличие ОЗУ небольшой емкости для временного хранения переменных и эффективных, следовательно, разных методов адресации памяти программ и памяти данных;
2) нагрузочная способность портов. Выходные линии портов 1, 2 и 3 могут работать на одну ТТЛ-схему. Линии порта 0 могут быть нагружены на два входа ТТЛ-схем каждая. Линии порта 0 могут работать и на n-МОП-схемы, однако при этом их необходимо подключать на источник электропитания через внешние нагрузочные резисторы за исключением случая, когда шина порта 0 используется в качестве шины адреса/данных внешней памяти;
3) альтернативные функции порта 3 позволяют организовать управление и взаимодействие с внешней памятью.
4) входные сигналы для МК51 могут формироваться ТТЛ - схемами или n-МОП - схемами;
5) многие логические операции могут быть выполнены без участия аккумулятора.
Библиографический список
1. Волосенцов В.О. Цифровые устройства и микропроцессоры. Конспект лекций. Часть 2. Запоминающие устройства. 1998.
2. Лебедев О.Н. Микросхемы памяти и их применение - М.: Радио и связь, 1998.
3. Песков С.А., Гуров А.И., Кузин А.В. Центральные и периферийные устройства электронных вычислительных средств - М.: Радио и связь, 2000.Учебник для вузов.
4. Предько М. Руководство по микроконтроллерам. Пер. с англ.. М.: Предприятие Постмаркер, 2001.
5. Сташин В.В., Урусов А.В., Мологонцева О.Ф. Проектирование цифровых устройств на однокристальных микроконтроллерах - М.: Энергоатомиздат, 1990.
6. Баранов В. В., Егоренков Ю. И. О показателях оценки эффективности АСУВ. Москва. Научно-техническое обозрение. 1991. N 135. С. 42-49.
7. Вентцель Е.С. Теория вероятностей: Учебник. Москва. Физматгиз. 1962.
8. Корн Г., Корн Т. Справочник по математике для научных работников и инженеров. Изд-во “Наука”. Москва. 1968.
9. Фрид Э. И др. Малая математическая энциклопедия. Академия наук Венгрия. Будапешт. 1976.
Размещено на Allbest.ru
Подобные документы
Нахождение наибольшего элемента массива, расположенного во внутренней памяти, сохранение его значения в стеке. Описание используемых команд: запись из внутренней памяти в аккумулятор данных, безусловный переход по метке. Составление кода программы.
лабораторная работа [41,4 K], добавлен 18.11.2014Принцип действия устройства сбора информации на базе микроконтроллера МК51: индикация, "рабочий режим" и передача данных персонального компьютера. Алгоритм начального опроса датчиков. Электрическая принципиальная схема устройства, текст программы.
курсовая работа [102,5 K], добавлен 21.10.2012Особенности проектирования часов со звуковым сигналом с использованием однокристального микроконтроллера семейства МК51. Разработка функциональной схемы устройства. Функции, выполняемые клавиатурой. Разработка алгоритма работы и управляющей программы.
курсовая работа [460,5 K], добавлен 16.05.2013Общее устройство микропроцессора. Структура 64-битной подсистемы памяти. Селекция портов ввода/вывода. Особенности интерфейса микропроцессорных систем. Проектирование подсистемы памяти на базе Itanium 2. Расчёт информативности и необходимых объёмов.
курсовая работа [3,7 M], добавлен 05.12.2012Принципы работы с программами автоматизированного проектирования принципиальных схем и плат DipTrace, SCHEMATIC, PCB Layout, SchemEdit и ComEdit: интерфейс, работа с файлами и библиотеками, вставка компонента, редактирование, печать, параметры страницы.
методичка [4,1 M], добавлен 18.02.2012Понятие системных ресурсов, конфликты, связанные с ресурсами IRQ и DMA. Использование портов ввода-вывода. Разновидности памяти и особенности ее распределения в рамках операционной системы. Назначение адресов памяти средствами Windows 9x/NT/2000.
презентация [45,9 K], добавлен 27.08.2013Основные направления развития системы автоматизированного проектирования, состав его лингвистического обеспечения. Назначение и принципиальное устройство ввода-вывода информации. Сущность и группы языков программирования, их роль в переработке информации.
курсовая работа [1,9 M], добавлен 18.01.2010Отличительные особенности микроконтроллеров AVR семейства Mega. Характеристики процессора, подсистемы ввода-вывода. Архитектура ядра и организация памяти. Регистры общего назначения. Алгоритмы моделирования команд. Реализация модели внешнего устройства.
курсовая работа [3,7 M], добавлен 24.06.2013Идея создания системы удаленного управления и контроля устройств. Разработка электрической принципиальной и структурной схемы. Обоснование выбора микроконтроллера и чипа ENC28J60. Обоснование выбора и отладки среды моделирования, программы и компилятора.
курсовая работа [3,5 M], добавлен 26.08.2014Особенности разработки системы автоматизированного контроля знаний специалистов по дефектоскопии. Обзор автоматизированных систем обучения и контроля знаний. Психологические механизмы усвоения знаний. Принципы создания эффективной тестирующей программы.
дипломная работа [1,8 M], добавлен 30.08.2010