Architect
Вопросы к курсу. Лабораторный практикум по архитектуре компьютера и микропроцессорной технике
Даташит Atmega328P-U
Вопросы к экзамену
Вопросы для промежуточной аттестации по курсу "Архитектура компьютера. Часть I":
Билеты к экзамену
Вопросы для промежуточной аттестации по курсу "Архитектура компьютера. Часть I":
Лабораторный практикум
Требования к оформлению отчета
Отчет выполняется в тетради в клетку 12 листов
- Тема
- Цель
- Схема установки
- Ход работы
- Листинг программы
- Расчеты и графики
- Вычисление погрешности
- Вывод
Работа 1. Прототипирование базисных логических элементов на базе ТТЛ
- Собрать на макетной плате схему инвертора. Проверить корректность ее работы
- Добавить к схеме еще один транзистор, чтобы получить схему И-НЕ.
Работа 2. Определение объема памяти программ (FLASH)
Файл описания m328pdef.inc
- Подключить к одному из выводов любого порта микроконтроллера светодиод.
- Написать программу, генерирующую одиночный прямоугольный импульс. Прошить ее во FLASH память микроконтроллера. Убедиться, что светодиод горит (при подключении к другим выводам порта светодиод гореть не должен).
- Подключить вместо светодиода измерительные щупы осциллографа. Измерив ширину импульса, определить тактовую частоту. Измерив время между повторениями импульса, определить объем памяти программ.
Примечание: Каждая команда выполняется за одинаковое количество тактов (за один такт), каждая команда занимает 2 байта.
Работа 3. Кнопка
- Подключить к выводу PD5 светодиод, а к выводу PD0 кнопку. Вместо кнопки использовать перемычку, перебрасываемую с Vcc на GND. Перемычку к выводу PD0 подключать через резистор с сопротивлением R = 2К (на маркировке резистора указаны две красные полосы)
- Написать программу, которая зажигает светодиод если кнопка нажата (перемычка подключена к Vcc). Если кнопку отжата (перемыка подключена к GND), светодиод гаснет.
Примечание: Для чтения состояния кнопки используется команда IN Rd, PINx. Для проверки состояния нажатия кнопки использовать команду Skip if Bit in Register is Set SBRS R, b, которая пропускает следующую команду в программе, если бит с номером b регистра R установлен (равен 1)
Работа 4. Меандр - это красиво!
- Подключить к выводу PD5 светодиод. Сгенерируйте импульсы с различной скважностью, указанной ниже. Выявите зависимость яркости светодиода от скважности, зафиксируйте вид импульса и измерьте временные параметры импульса с использованием осциллографа.
- Сгенерировать меандр - импульс со скважностью два. Длительность импульса (им. ввиду высокий уровень) задать равной 17 мкс. Для этого необходимо сделать задержку с использованием цикла (используйте команды DEC, BRNE). Количество итераций рассчитать, исходя из длительности команд DEC и BRNE
- Сгенерировать импульс со скважностью 5. Длительность импульса оставить равной 17 мкс. Длительность нулевого уровня рассчитать с использованием формулы для скважности S.
- Сгенерировать импульс со скважностью 50. Длительность импульса оставить равной 17 мкс.
- Сгенерировать импульс со скважностью 100. Измените длительность импульса, чтобы не создавать лишних циклов.
Примечание: Скважность вычисляется по формуле S = T / t, где T - период импульса, t - длительность импульса (высокого уровня). Для задания задержки реализовать цикл с использованием команд DEC и BRNE. Начните уже использовать в командах перехода метки вместо адресов.
Напоминание: Длительность почти всех команд составляет 1 такт (2 мкс). Длительность команды BRNE составляет 1 мкс.
Усложнение: Вместо BRNE используйте связку BREQ и JMP.
Работа 5. Stack & Blink
- Напишите подпрограмму задержки. Обозначьте начало подпрограммы меткой DELAY1
- Перепишите программу с прошлого урока с использованием подпрограммы DELAY1. Сгенерируйте меандр с частотой 1 кГц и 3 кГц.
- Подключите вместо светодиода пьезокерамический излучатель звука.
- Напишите подпрограмму DELAY2, генерирующую меандр с частотой 0.5 Гц. Используйте цикл в цикле в цикле. Наблюдайте мигание светодиода.
Примечание: Для вызова подпрограммы используйте инструкцию CALL, для записи в стек PUSH, для извлечения из стека POP, для возврата RET.
______Итоговая работа "Сирена"______
Спроектируйте сирену. Сирена должна состоять из двух светодиодов, поочередно мигающих, а также динамика, излучающего поочередно звук с различными частотами.
Усложнение: напишите программу, реализующую мирцание светодиода - плавное зажигание и плавное погасание.
Интересная литература
1 | Как сделать из ведра песка микропроцессор? | Перейти |
2 | Как прошить ATMEGA на необитаемом острове | Перейти |
3 | Е. Айсберг, Транзистор?.. Это очень просто!. В доступной форме диалога объясняется устройство p-n перехода и принцип работы транзистора. Есть ещё интересная книга Радио?.. Это очень просто! |
|
4 | Э. Таненбаум, Архитектура компьютера. Описывается архитектура современного микропроцессора Core i7. Фундаментальная работа, для тех, кто работает в IT. Подойдет скорее для обучающихся в ВУЗе по специальностям, связанным с программированием. Но отдельные главы интересно полистать и понять. |