Таблица 7. Интерфейс выбора регистров MC68881
А0-А4 |
Смещение |
Ширина |
Тип |
Регистр |
0000x |
$00 |
16 |
Чтение |
Ответ |
0001x |
$02 |
16 |
Запись |
Контроль |
0010x |
$04 |
16 |
Чтение |
Сохранить |
0011x |
$06 |
16 |
R/#W |
Восстановить |
0100x |
$08 |
16 |
- |
Зарезервировано |
0101x |
$0A |
16 |
Запись |
Команда |
0110x |
$0C |
16 |
- |
Зарезервировано |
0111x |
$0E |
16 |
Запись |
Условие |
100xx |
$10 |
32 |
R/#W |
Операнд |
1010x |
$14 |
16 |
Чтение |
Выбор регистра |
1011x |
$16 |
16 |
- |
Зарезервировано |
110xx |
$18 |
32 |
Чтение |
Адрес инструкции |
111xx |
$1C |
32 |
R/#W |
Адрес операнда |
В приемопередатчике MC68681, сигнал #DTACK устанавливаем в неактивное состояние, поскольку прерывания не используются. Ко входу #CLK, R/#W подводим сигналы с управляющей шины. Начальное значение таймера/счетчика может быть установлено от 0002Н до 0FFFFH. Таймер/счетчик ведет обратный отсчет. После включения питания или сброса таймер/счетчик работает в режиме таймера. ЦП может запустить и остановить счетчик. Когда происходит чтение по адресу команды начала счета таймера/счетчика, в счетчик загружается начальное значение и инициализируется процесс счета. При достижении значения 0000Н он выставляет бит готовности и переходит к значению 0FFFFH, продолжая счет. Если предзагруженное число изменено процессором, то счетчик не «распознает» его, пока не будет дана новая команда начала счета.
В режиме таймера, когда происходит чтение по адресу команды запуска таймера/счетчика или при достижении нуля, таймер прекращает текущий счет, инвертирует выход, реинициализируется предзагруженным числом и начинает новый отсчет. Причем, при достижении нуля таймер выставляет бит готовности, по которому может быть сгенерирован запрос на прерывание.
Таблица 8. Перечень регистров MC68681
Адрес (выводы RS4..RS1) |
Обозначения и функции при чтении |
Обозначения и функции при записи |
0000 |
MR1A,MR2A – регистры управления каналом А |
|
0001 |
SRA – регистр статуса канала А |
CSRA – регистр выбора синхронизации канала А |
0010 |
- |
CRA – регистр команд канала А |
0011 |
RBA – буферный регистр приемника канала А |
TBA – буферный регистр передатчика канала А |
0100 |
IPRC – регистр состояния входного порта |
ACR – дополнительный регистр управления |
0101 |
ISR – регистр статуса прерываний |
IMR – регистр маскирования прерываний |
Окончание таблицы 8.
Адрес (выводы RS4..RS1) |
Обозначения и функции при чтении |
Обозначения и функции при записи |
0110 |
CUR – старший байт регистра текущего значения счетчика |
CTUR – старший байт регистра начального значения таймера/счетчика |
0111 |
CLR – младший байт регистра текущего значения счетчика |
CTLR – младший байт регистра начального значения таймера/счетчика |
1000 |
MR1B,MR2B – регистры управления каналом B |
|
1001 |
SRB – регистр статуса канала В |
CSRB – регистр выбора синхронизации канала В |
1010 |
- |
CRB – регистр команд канала В |
1011 |
RBB – буферный регистр приемника канала В |
TBB – буферный регистр передатчика канала В |
1100 |
IVR – регистр вектора прерываний |
|
1101 |
IPR – регистр входного порта |
OPCR – регистр конфигурации выходного порта |
1110 |
Команда запуска таймера/счетчика |
Команда установки битов выходного порта |
1111 |
Команда останова счетчика |
Команда сброса битов выходного порта |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.