- •1. Структура многоуровневой системы управления. Решаемые задачи и требования к системе.
- •2. Структура и устройства управляющей микропроцессорной системы. Способы аналоговой обработки данных.
- •4. Способы построения схем выборки устройств мп-системы (озу, пзу, увв).
- •5. Применение ппзу и плм в схемах выборки устройств мп-системы. Задача.
- •6. Структура и интерфейс 8-разрядного микропроцессора.
- •7. Цикл выполнения команды 8-разрядного микропроцессора.
- •8. Диаграмма машинного цикла 8-разрядного микропроцессора. Типы машинных циклов, используемых при выполнении команд.
- •9. Системный контроллер мп – системы и системные сигналы управления.
- •I 8080 слово состояния процессора:
- •11. Базовые арифметические операции целочисленной 8-разрядной двоичной арифметики. Признаки результата.
- •12. Операции умножения/деления двоичных чисел.
- •13. Арифметическая обработка многобайтных операндов в микропроцессорах и микроконтроллерах с 8 – разрядной архитектурой.
- •14. Сложение-вычитание многобайтных 2-10 чисел в 8-разрядных микропроцессорах и микроконтроллерах.
- •16. Принципы организации ввода-вывода данных в микропроцессорных системах.
- •17. Схемы портов параллельного синхронного ввода–вывода мп – систем.
- •18. Схемы портов параллельного асинхронного ввода-вывода мп – систем.
- •19. Структурная схема параллельного программируемого интерфейса. Основные режимы работы. Программирование вывода по протоколу Centronix.
- •20. Организация ввода-вывода данных по запросам прерываний от схемы программируемого параллельного интерфейса.
- •36. Параллельный обмен данными с внешними устройствами в микроконтроллерных системах. Обмен с квитированием.
- •37. Схема, основные режимы работы и программирование таймера микроконтроллера мк51.
- •38. Применение таймеров мк51 для отсчета времени, измерения длительности сигнала, подсчета событий, формирования периодических сигналов.
- •1. Подсчет числа импульсов, поступающих на вход мк51 за время в 10мс.
- •2. Измерение длительности сигнала, поступающего на вход .
- •3. Организовать временную задержку длительность 500мс
- •39. Система прерываний микроконтроллера мк51. Работа со стеком.
- •40. Структура и основные режимы работы канала последовательного ввода-вывода микроконтроллера мк51.
- •32. Логическая организация памяти микроконтроллера мк51.
- •33. Характеристика системы команд микроконтроллера мк51. Слово состояния программы, типы данных, способы адресации. Организация ветвлений в программах.
- •35. Схемы и принципы работы двунаправленного и квазидвунаправленных портов микроконтроллера.
- •46. Способы взаимодействия микроконтроллера (микроЭвм) с большой памятью.
- •47. Взаимодействие микроконтроллера с клавиатурой, подключенной непосредственно к портам микроконтроллера.
- •48. Контроллер клавиатуры и дисплея. Основные режимы работы и их программирование.
- •50. Таймеры микроконтроллеров avr. Использование таймеров для сравнения, захвата событий, формирования шим-сигналов, в сторожевом режиме.
46. Способы взаимодействия микроконтроллера (микроЭвм) с большой памятью.
Подключение памяти данных большого объема (> 64Кб)
Метод банков:
Пример реализации для SRAM 512K:
Необходимо согласование времени доступа.
Метод окна:
47. Взаимодействие микроконтроллера с клавиатурой, подключенной непосредственно к портам микроконтроллера.
Взаимодействие с клавиатурной матрицей:
Решение задачи:
- устранение дребезга контактов
- идентификация нажатых клавиш
- обнаружение замыкания клавиш
Схемотехническая реализация:
- в открытых МП-системах в роли регистров ВВ используют порты
- использование ППИ
- использование встроенных средств (в составе МК)
- использование специальных контроллеров управления клавиатурой
Алгоритм взаимодействия с клавиатурой:
матрица 6х4,
n_col – текущая колонка,
k_kol=6 – количество колонок
Программа для МК51:
; Инициализация
SCAN_COD reg R2
n_col reg R3
k_kol reg R4
start: mov P0,#0Fh; РО на ввод
mov P1,#FFh; Р1 неактивен
mov SCAN_COD,#FEh
mov B,#4; множитель
mov n_col,#0
mov k_kol,#6
mov DPTR,#TBL
m1: mov A,SCAN_COD
mov P1,A
RL A
mov SCAN_COD,A
mov A,P0
anl A,#0Fh; выделяем младшую тетраду
mov R5,A; сохранение состояние порта Р0
cjne A,#05h,m3; переход по замыканию
inc n_col
cjne n_col,#6,m1 если <6 возвр. на m1
jmp start
m3: ;задержка и повторный ввод с проверкой задержек
;процедура идентификации
mov A,n_col
mul A,B; 4 x n_col
cjne R5,#0FEh,m2
add A,#0FEh; +m_rot
m2: cjne R5,#0FDh,m4
add A,#1
m4: cjne R5,#0FBh,m5
add A,#2
m5: cjne R5,#0F7h,m6
add A,#3
m6: movc A,@A+DPTR
mov 40h,A; сохранение кода клавиши, взятой из таблицы
; По значению кода выполняем обработку
48. Контроллер клавиатуры и дисплея. Основные режимы работы и их программирование.
Сервисные функции:
1) Выбор способа опроса и анализа состояний клавиатуры
2) Формирование запросов прерываний
3) Поддержка различных режимов работы дисплея
Функции интерфейса для клавиатуры:
1) Опрос и анализ состояний датчиков клавиш
2) Буферизация вводимой информации
3) Устранение дребезга
Функции интерфейса для дисплея: буферизация выводимой информации при регенерации изображения
Схема сопряжения МК с клавиатурой и дисплеем:
1 – буфер данных
2 – регистр управления
3 – регистр состояния
4 – счетчик сканирования
5 – память дисплея (16б)
6 – память датчиков клавиатуры (8б)
7 – матрица датчиков клавиатуры 4х8 или 8х8
8 – схема катодного формирователя
9 – блок индикации
10 – схема анодного формирователя
Подключение матрицы датчиков клавиатуры
1. Непосредственное подключение
2. С электронной коммутацией датчиков
3. Используя мультиплексор
Программные средства.
8 управляющих слов com0 – com7
com0:
765 |
43 |
210 |
(765): номер, (4): 0 – ввод слева, 1 – ввод справа, (3): 0 – 8 бит, 1- 16 бит, (21): 00 - режим блокировки двух клавиш сцепл. (блок одновременного нажатия нескольких клавиш), 01 – режим N клавиш сцеплен. (количество одновременно нажатых клавиш до 8), 10 – сканирование матрицы датчиков, 11 – ввод по стробу, (0): 0 – кодирование, 1- дешифрация.
Код клавиши определяется правилом
CTRL |
SHIFT |
Номер строки |
Номер столбца |
com1:
001 |
ppppp |
ррррр – коэффициент деления частоты CLK, FCLK/p<=100КГц
com2 (чтение ОЗУ клавиатуры):
010 |
AI |
0 |
AAA |
AI – бит автоинкремента, ААА – номер строки
В режимах 0, 1, 3 ААА игнорируется, чтение в той последовательности, в которой замыкали.
com3 (чтение ОЗУ дисплея):
011 |
AI |
АAAA |
com4 (запись в ОЗУ дисплея):
100 |
AI |
АAAA |
com5 (запрет записи/отправки):
101 |
Х |
АВ |
АВ |
Одна пара АВ запрещает запись в ОЗУ дисплея, вторая пара запрещает отправку на дисплей.
com6 (гашение)
110 |
Все нули или все единицы |
com7 (сброс запроса прерывания)
111 |
Е |
ХХХХ |
Е – бит фиксации ошибки
Слово состояния ВВ79
Dv |
S/E |
O |
U |
F |
NNN |
Dv – неготовность дисплея к приему данных
S/E – бит замыкания в режиме матричных датчиков
О – индикатор запроса в заполненную память клавиатуры
U – флаг ошибки чтения из пустой памяти клавиатуры
F – флаг заполнения памяти клавиатуры
NNN – количество принятых клавиш в ОЗУ клавиатуры
49. AVR – микроконтроллеры. Архитектура, организация памяти, способы адресации данных.
Обобщенная архитектура:
Организация адресного пространства.
Организация памяти МК AVR выполнена по Гарвардской архитектуре.
Память программ предназначена для хранения команд, управляющих функционирование МК. В памяти программ также хранятся различные константы, не меняющиеся во время работы программы. Память программ представляет собой электрически стираемое ППЗУ (FLASH-ПЗУ). Для адресации используется счетчик команд.
Память данных разделена на три части: регистровая память, оперативная память (статическое ОЗУ) и энергонезависимое EEPROM. Регистровая память включает в себя 32 РОНа (32 байта) и служебные регистры ВВ (64 байта). В области регистров ВВ расположены различные служебные регистры (регистр указатель стека, регистр состояния и др.), а также регистры управления ПУ, входящими в состав МК. Для хранения переменных программ вместе с регистрами также может использоваться статическое ОЗУ. Есть возможность подключения внешнего статического ОЗУ объемом до 64 Кбайт. Для хранения данных, которые могут изменяться в процессе настройки и функционирования готовой системы (калибровочные константы, серийные номера, ключи и т. п.), может быть использована EEPROM. Эта память расположена в отдельном адресном пространстве, а доступ к ней осуществляется с помощью определенных РВВ.
Использование внешнего ОЗУ.
Для подключения внешнего ОЗУ используются следующие выводы МК:
- порт А (RA0..RA7) – мультиплексированная шина адреса (младшие 8 разрядов)/шина данных;
- порт С (RC0..RC7) – шина адреса (старшие 8 разрядов)ж
- ALE – сигнал строба адреса, RD (RC7) – сигнал строба чтения и WR (RC6) – сигнал строба записи.
При обращении по адресу, который находится вне границы внутреннего ОЗУ, автоматически происходит обращение к внешнему ОЗУ. После формирования на выводах порта А требуемого адреса вывод ALE меняет свое состояние с лог. «1» на лог. «0» и остается в этом состоянии в течении всего цикла чтения/записи.
Способы адресации в AVR
-
Прямая регистровая (адресация одного или двух регистров общего назначения)
2. Прямая адресация к памяти ВВ
3. Прямая адресация к ОЗУ
4. Косвенная адресация со смещением
5. Косвенная с преддекрементом и постинкрементом
6. Обращение за константой к памяти программ
7. Косвенная адресация к памяти программ использую команды IJMP, RCALL
8. Косвенная относительная адресация к памяти программ RJMP, RCALL