135324 (721865), страница 6

Файл №721865 135324 (Motorola MC68HC705C8) 6 страница135324 (721865) страница 62016-08-01СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 6)

Устанавливается, если перед сдвигом был установлен младший бит, иначе сбрасывается.

TST Проверка на отрицательность и равенство нулю

(AC)-$00 или (X)-$00 или (M)-$00

Установить биты N и Z в регистре признаков в соответствии с содержимым аккумулятора, индексного регистра или ячейки памяти. Содержимое аккумулятора, индексного регистра или ячейки памяти не изменяется.

N R7

Устанавливается, если старший бит результата установлен, иначе сбрасывается.

Z R7\*R6\*R5\*R4\*R3\*R2\*R1\*R0\

Устанавливается, если все биты результата сброшены. Иначе сбрасывается.

BSET n (n=0...7) Установить бит n

Mn=1

Устанавливается в 1 бит n (n=7,6,5,4,3,2,1,0) ячейки памяти M, другие биты не изменяются. Ячейкой памяти может быть ОЗУ или I/O регистр от адреса $0000 до $00FF (то есть используется прямая адресация).

Регистр признаков не изменяется.

BCLR n (n=0...7) Сбросить бит n

Mn=0

Сбрасывается бит n (n=7,6,5,4,3,2,1,0) ячейки памяти M, другие биты не изменяются. Ячейкой памяти может быть ОЗУ или I/O регистр от адреса $0000 до $00FF (то есть используется прямая адресация).

Регистр признаков не изменяется.

SEC Установить флаг переноса

C бит ¬1

Установить бит C регистра признаков. Команда SEC может применятся для предустановки бита C перед использованием команд сдвига.

Флаг C устанавливается в 1.

CLC Сбросить флаг переноса

C бит ¬0

Сбрасывается бит C регистра признаков. Команда SEC может применятся для предустановки бита C перед использованием команд сдвига.

Флаг C сбрасывается.

SEI Установить флаг маскирования прерываний.

I бит¬1

Устанавливается бит маскирования прерываний в регистре признаков. Когда бит C установлен, прерывания запрещены.

Флаг I устанавливается.

CLI Сбросить флаг маскирования прерываний

I бит¬0

Сбрасывается бит маскирования прерываний в регистре признаков. Когда бит C сброшен, прерывания разрешены. На очистку бита требуется задержка на один цикл, таким образом, если прерывания до выполнения команды CLI были запрещены, то следующая за CLI команда всегда выполняется.

Флаг I сбрасывается.

Прочие команды.

NOP Нет операции

Эта однобайтная команда вызывает только увеличение программного счетчика на единицу. Другие регистры не изменяются.

STOP Останов

Выполнение команды приводит к уменьшению энергопотребления.

1) Сбрасывается предделитель таймера;

2) запрещаются прерывания от таймера;

3) сбрасывается флаг прерывания от таймера;

4) разрешаются внешние прерывания;

5) останавливается тактовый генератор.

Когда поступает внешний сигнал RESET\ или IRQ\, включается тактовый генератор, после задержки на инициализацию, которая длится 1920 циклов процессора, защелкиваются вектор прерывания и вектор начальной установки, и запускается на выполнение процедура обработки RESET или IRQ, в зависимости от поданного сигнала.

Флаг I сбрасывается.

Более подробно о режиме STOP см. раздел "Специальные режимы работы".

WAIT Ожидание

Выполнение команды приводит к уменьшению энергопотребления. Таймер, делитель таймера и другая встроенная периферия продолжают работать, так как они являются потенциальными источниками прерываний. WAIT разрешает прерывания сбросом бита I регистра признаков и останавливает цепи синхронизации процессора.

Когда поступает внешний сигнал RESET\, IRQ\ или прерывания от встроенной периферии, включается цепи синхронизации процессора, защелкиваются вектор прерывания и вектор начальной установки, и запускается на выполнение процедура, взвисимости от поданного сигнала.

Более подробно о режиме WAIT см. раздел "Специальные режимы работы".

2. Аппаратные средства

2.1 Линии (порты) параллельного ввода-вывода.

МС68НС705С8 содержит 31 линию ввода-вывода общего назначения, объединенные в 4 порта. Порты А, В и С представляют собой 8-битные порты общего назначения, в которых направление работы каждой линии задается через программно-доступные регистры, порт D является 7-битным портом, настроенным только на ввод данных, кроме того, линии порта D могут выполнять некоторые специальные функции. Подробнее про порт D смотрите п. 2.4. Каждый 8-битный порт имеет соответствующий 8-битный регистр направления данных (DDR), как показано на рис. 5, а так же регистр данных (DR), в который помещаются данные при передаче, или из которого они читаются при приеме.

Каждый из трех портов - A, B, или C можно представить схематически следующим образом:

Бит 7

6

5

4

3

2

1

Бит 0

DDR7

DDR6

DDR5

DDR4

DDR3

DDR2

DDR1

DDR0

DDR

½ ½ ½ ½ ½ ½ ½ ½

0

0

0

0

0

0

0

0

После RESET

¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯

Порт (DR)

½ ½ ½ ½ ½ ½ ½ ½

Регистр порта не изменяется после RESET.

­ ­ ­ ­ ­ ­ ­ ­

¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯

P7 P6 P5 P4 P3 P2 P1 P0 Контакты

Рис. 2-1 Схема порта ввода/вывода.

Канал настроен на вывод информации, если соответствующий бит в DDR установлен в 1. Если бит сброшен, то канал настроен на ввод (так предусмотрено при начальной установке). То есть разные каналы одного и того же порта могут быть настроены на ввод или вывод информации одновременно независимо друг от друга. На рис. 2-2 представлена структура канала параллельного порта, а в таблице 2-1 приведены различные режимы работы линии ввода-вывода.

Таблица 2-1. Функции контактов ввода-вывода.

R/W*

DDR

Функция

0

0

Режим ввода. Данные записываются в выходную защелку

0

1

Данные записываются в выходную защелку и передаются на контакт.

1

0

Читается состояние контакта

1

1

Контакт в режиме вывода. Читаются данные из защелки.

*R/W - внутренний сигнал, указывающий на чтение/запись данных.

Из рисунка и таблицы видно, что когда канал настраивается на вывод, чтение регистра данных приводит к чтению данных из выходного триггера, а не с вывода непосредственно. Регистры направления данных расположены по адресам 04Н, 05Н, 06Н для портов А, В и С, соответственно. Регистры данных расположены по адресам 00Н, 01Н, 02Н в той же последовательности.

1. Буфер вывода, разрешает вывод, когда соответствующий бит в регистре DDR установлен в 1 (вывод данных).

2. Буфер ввода, включен, когда соответствующий бит в регистре DDR сброшен на 0 (ввод данных).

3. Буфер ввода, включен, когда соответствующий бит в регистре DDR установлен в 1 (вывод данных).

Рис. 2-2 Структура канала параллельного порта

2.2 Система прерываний.

МС68НС705С8 имеет 5 типов прерываний, включающих 4 маскируемых аппаратных прерывания и одно немаскируемое программное прерывание. К аппаратным прерываниям относятся:

-внешнее прерывание, поступающее через вывод IRQ/ микросхемы

-прерывание от последовательного интерфейса связи

-прерывание от последовательного периферийного интерфейса

-прерывание от таймера

При возникновении прерывания процессор сохраняет содержимое регистров в стеке, и затем устанавливает бит маски прерываний I в регистре признаков, запрещая последующие прерывания. Команда возврата из прерывания (RTI), которая является последней командой в программе обработки любого прерывания, восстанавливает содержимое регистров из стека. Порядок загрузки и выгрузки регистров из стека показан на рис. 2-3.

В отличие от RESET, прерывание не вызывает прекращения выполнения текущей команды, обработка прерывания начинается лишь после ее завершения.

Таймер и оба последовательных интерфейса имеют собственные регистр статуса и управляющий регистр. В регистре статуса расположены флаги прерываний, каждый из которых соответствует определенному действию, вызвавшему прерывание. Например, у таймера таких флагов три. Флаги в регистрах статуса предназначены только для чтения. В управляющем регистре каждому из этих флагов поставлен в соответствие управляющий бит, с помощью которого можно разрешить или запретить определенное прерывание установкой или сбросом соответствующего бита. Если управляющий бит сброшен, то прерывание блокируется, но это не мешает изменению состояния флага запроса прерывания. Во время начальной установки все управляющие биты сбрасываются, чтобы предотвратить прерывания в течение процедуры начальной установки.

Рис. 2-3 Порядок загрузки регистров в стек и

выгрузки их из стека.

На рисунке 2-4 показан процесс обработки прерывания, а в таблице 2-2 даны векторы всех прерываний. В первом столбце таблицы указан регистр статуса, в котором находится соответствующий флаг прерывания, во втором столбце даны названия флагов прерываний. В третьем столбце кратко описана причина возникновения прерывания, в четвертом столбце указано устройство-источник прерывания, и в пятом столбце приведен адрес по которому хранится вектор прерывания. Важно отметить, что бит маски прерываний (бит I в регистре признаков) будет сброшен только в том случае, если соответствующий бит в стеке хранит 0.

Рассмотрим подробнее каждый тип прерывания.

Программное прерывание является результатом выполнения команды SWI (SoftWare Interrupt). Оно возникает вне зависимости от состояния бита I. Вектор прерывания содержится в ячейках памяти с адресами 1FFCH и 1FFDH.

Внешнее прерывание происходит если бит маски прерываний (бит I) сброшен и на внешний вывод IRQ/ поступает сигнал активного уровня (режим срабатывания задается записью в бит IRQ регистра конфигурации, см. п. 1.3). Затем текущее состояние процессора запоминается в стеке, и бит I устанавливается в 1 для маскирования всех прерываний до тех пор, пока обслуживается внешнее.

Прерывание от таймера может быть вызвано тремя флагами, как уже упоминалось ранее. Эти три флага расположены в регистре статуса таймера, и имеют один и тот же вектор (см. таблицу 2-2). Каждый флаг имеет соответствующий управляющий бит (ICIE, OCIE и TOIE) в регистре управления таймером. Установка этих битов разрешает соответствующее прерывание, сброс-запрещает. Подробнее назначение каждого флага описано в главе 2.3 "Таймер".

Рис. 2-4 Процесс обработки прерывания

Прерывание от последовательного интерфейса связи происходит в том случае, если один из пяти флагов (TDRE, TC, RDRF, IDLE, OR) в регистре статуса интерфейса связи установлен, бит I в регистре признаков сброшен и управляющий бит во втором управляющем регистре установлен. При обслуживании прерывания приоритет обработки задается программно через проверку флагов в регистре статуса. Подробнее о регистрах интерфейса связи рассказывается в главе 2.4 "Последовательный интерфейс".

Прерывание от последовательного периферийного интерфейса происходит при тех же условиях (установлен один из двух флагов в регистре статуса периферийного интерфейса (SPIF или MODF), бит I сброшен, и управляющий бит в управляющем регистре установлен). Подробнее о периферийном интерфейсе рассказывается в главе 2.4 "Последовательный интерфейс".

Функциональная схема обработки внешних прерываний приведена на рис. 2-5. Внешнее прерывание может определяться либо фронтом сигнала, либо его фронтом и уровнем. Задается это программно через регистр конфигурации (см. гл. 1.3). Если прерывание определяется фронтом сигнала, то следующее прерывание не должно возникать до тех пор, пока не будет обработано первое, т. е. пока не будет выполнена команда возврата из прерывания (RTI). Время между двумя прерываниями должно быть минимум на 21 машинный цикл больше, чем время обработки прерывания (не включая команду RTI). При определении прерывания по уровню сигнала, следующее прерывание будет определяться в том случае, если после обработки первого прерывания на выводе IRQ/ будет сохраняться сигнал низкого уровня. Этот метод обычно используется при работе с несколькими источниками прерываний, объединенными в одну линию. Оба режима реакции на внешнее прерывание наглядно демонстрируются на рис. 2-6 и 2-7, соответственно.

Таблица 2-2. Векторы прерываний.

Регистр

Имя флага

Причина прерывания

Прерывание ЦПУ

Адрес вектора

RESET

RESET

1FFE-1FFF

Программное

SWI

1FFC-1FFD

Внешнее

IRQ

1FFA-1FFB

Регистр статуса таймера

ICF

OFC

TOF

Входная фиксация

Выходное сравнение

Переполнение

TIMER

1FF8- 1FF9

Регистр статуса интерфейса связи

TDRE

TC

RDRF

IDLE

OR

Буфер передачи пуст

Передача завершена

Полон буфер приема

Обнаружена свободная линия

Переполнение

SCI

1FF6-1FF7

Регистр статуса периферий-ного интерфейса

SPIF

MODF

Передача завершена

Режим ошибочен

SPI

1FF4-1FF5

Рис. 2-5 Функциональная схема обработки внешнего прерывания.

Характеристики

Тип файла
Документ
Размер
940 Kb
Материал
Тип материала
Учебное заведение
Неизвестно

Список файлов реферата

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6374
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее