![](/user_photo/21626_SPZlF.png)
- •Микропроцессорные системы. Список экзаменационных вопросов. Оглавление
- •1. Комбинационная логика, основные элементы (и, или, не), их схемы на кмоп транзисторах.
- •5. Регистры на основе d-триггеров. Параллельные регистры, последовательные (сдвиговые) регистры. Временная диаграмма работы сдвигового регистра.
- •6. Общая структура микроконтроллерного устройства, алу, программный счётчик.
- •7. Виды памяти микроконтроллеров (на примере семейства avr). Стек и его инициализация.
- •8. Прерывания, вектор прерываний.
- •9. Основы языка Assembler для микроконтроллеров семейства avr. Синтаксис, классификация команд.
- •Внешний кварцевый резонатор
- •Внешний генератор
- •12. Широтно-импульсная модуляция. Понятие широтно-импульсной модуляции. Различные режимы широтно-импульсной модуляции. Режим быстрый шим (Fast pwm). Шим без фазового сдвига (Phase Correct pwm).
- •13. Цифро-аналоговые преобразователи. Структурная схема цап. Параллельная схема суммирования токов. Последовательная схема суммирования токов.
- •15. Структурная схема встроенного аналого-цифрового преобразователя, его основные параметры. Настройка ацп, управляющие регистры. Прерывания по завершению цикла преобразования.
- •4 Режима работы spi:
- •18. Интерфейс i2c. Протокол передачи данных, режимы работы. Основные преимущества и недостатки интерфейса.
6. Общая структура микроконтроллерного устройства, алу, программный счётчик.
ГТИ – генератор тактовых импульсов (fmax=16 МГц).
Flash-память – тут содержится прошивка (имеется лимит перезаписи).
ISP – интерфейс (внешнее устройство) – программатор подключается через него.
РОН – регистры общего назначения.
ОЗУ – оперативное запоминающее устройство (похоже на РОН, но более обширное).
Шина данных предназначена для обмена данных.
Шина данных и шина памяти программы – две разные шина (на рисунке просто объединены).
В мк AVR реализована Гарвардская система, которая характеризуется раздельной памятью программ и данных, каждая из которых имеет собственные шины доступа к ним. Такая организация позволяет одновременно работать как с памятью программ, так и с памятью данных = БЫСТРОДЕЙСТВИЕ.
Периферия есть базовая (Б) и обширная.
Б: порты ввода/вывода; таймеры-счетчики; модуль прерываний; компаратор; АЦП; интерфейсы обмена (передачи данных).
Интерфейсы: I2C – для низкочастотных датчиков (медленный), SPI – датчики (быстродействующий), UART – для обмена с ПК.
Как работает?
Программа загружается в Flash-память, далее поступает на регистр команд (который хранит код команды на период времени, необходимый для ее выполнения). После дешифратор (переводит на понятный язык для компьютера). Команду выполняет шина управления.
Далее идет переход на следующее слово во Flash-памяти.
Тем временем программный счетчик считает (на случай возникновения прерываний. После обработки прерывания возвращаемся к тому месту, где остановились, благодаря тому, что шел отсчет. Состояние счетчика сохраняется в стек)
С повышением частоты повышается энергопотребление – увеличивается U, что может привести к перегреву.
АЛУ (арифметико-логическое устройство) – устройство, выполняющее все вычисления. Предназначено для выполнения арифметических и логических преобразований над данными – вычитание, сложение, умножение, сравнение, сдвиг данных.
Оно подключено непосредственно к 32 рабочим регистрам, объединенным в регистровый файл. Это оперативные регистры общего назначения (РОН). Доступ к этим ячейкам наиболее быстрый, а число операций с их содержимым наиболее разнообразное.
Благодаря этому АЛУ выполняет одну операцию (чтение содержимого регистров, выполнение операции и запись результата обратно в регистровый файл) за один машинный цикл.
Практически каждая из команд (за исключением команд, у которых одним из операндов является 16-разрядный адрес) занимает одну ячейку памяти программ.
Счетчик программ (program counter) представляет собой регистр, содержащий адрес следующей исполняемой программы, но при этом напрямую из исполняемой программы он недоступен.
Размер зависит от объема имеющейся памяти программ (от 2 до 16 разрядов). При нормальном выполнении программы содержимое счетчика увеличивается на 1 или 2 (в зависимости от выполняемой программы) в каждом машинном цикле. Этот порядок нарушается при выполнении команд перехода, вызова и возврата из подпрограмм, возникновении прерываний.
После включения программы или сброса микроконтроллера в счетчик программы автоматически загружается нулевой стартовый адрес (0х00 или начальный адрес сектора загрузчика (как правило, там располагается команда безусловного перехода к части программы, предназначенной для инициализации используемой периферии, откуда начинается выполнение программы (RESET)).
При возникновении прерывания в счетчик команд загружается адрес соответствующего вектора прерывания. Если прерывания используются в программе, по адресам векторов прерываний должны размещаться команды перехода к подпрограммам обработки прерываний.