- •Лабораторная работа 8 Изучение архитектуры лабораторного стенда sdk 1.1
- •1. Методические указания к работе.
- •1.1. Учебный лабораторный комплекс sdk-1.1
- •1.2. Составные части комплекса sdk-1.1
- •1.2.1. Микроконтроллер aDuC812bs
- •1.2.2. Плис мах3064
- •1.2.3. Схема сброса
- •1.2.4. Источник питания
- •1.2.5. Кварцевые резонаторы
- •1.2.6. Дискретные входы-выходы
- •1.2.7. Аналоговые входы-выходы
- •1.2.8. Светодиодные индикаторы
- •1.2.9 Устройства i2c
- •1.2.10. Матричная клавиатура ak1604a-wwb
- •1.2.10. Последовательный канал
- •1.2.12. Жидкокристаллический дисплей
- •1.2.13. Звукоизлучатель
- •2. Порядок выполнения работы
- •4. Содержание отчета
- •5. Контрольные вопросы
- •Лабораторная работа 9 Управление светодиодами и последовательным интерфейсом в лабораторном стенде sdk 1.1
- •1. Методические указания к работе.
- •1.1. Управление светодиодными индикаторами.
- •1.2. Управление последовательным интерфейсом
- •1.3. Особенности последовательного интерфейса микроконтрол-леров семейства mcs51
- •1.4. Работа с последовательным каналом по опросу
- •2. Порядок работы.
- •3. Содержание отчета
- •4. Контрольные вопросы
- •Лабораторная работа 10 Таймер, использование прерываний в лабораторном стенде sdk 1.1
- •1. Методические указания к работе.
- •1.1. Таймеры
- •1.1.1. Таймеры 0 и 1
- •1.1.2. Режимы работы таймеров/счетчиков 0 и1.
- •1.1.3. Таймер 2
- •1.1.4. Режимы работы таймера 2
- •1.2. Система прерываний
- •2. Порядок работы.
- •3. Содержание отчета
- •Лабораторная работа 11 Работа с клавиатурой лабораторного стенда sdk 1.1
- •1. Методические указания к работе.
- •2. Требования к выполнению работы.
- •1.2. Реализация интерфейса i2с на Aduc812.
- •1.3.Устройства подключенные к шине 12с в стенде sdk1.1
- •1.3.1.Электрически стираемое и перезаписываемое пзу e2prom
- •1.3.2.Часы реального времени
- •1.4. Работа с устройствами, подключенными к шине i2с
- •1.4.1. Запись
- •1.4.2. Чтение
- •Лабораторная работа 13 Изучение цап и ацп лабораторного стенда sdk 1.1
- •1. Методические указания к работе.
- •1.1.Реализация ацп в aDuC812.
- •1.1.1. Передаточная функция ацп
- •1.1.2. Частота тактирования
- •1.1.3.Режимы работы
- •1.2. Термодатчик
- •2. Описание тестовой программы и некоторых функций драйвера
- •1. Языки ассемблера
- •2. Структура программы на языке ассемблера
1.4. Работа с последовательным каналом по опросу
Простейшим из способов организации последовательного обмена является управление им из прикладной программы. То есть, если требуется переслать байт, то: 1) сбрасывается TI; 2) в SBUF записывается нужный байт данных; и 3) ожидается, пока TI не будет установлен контроллером. С приемом в этом случае дело обстоит сложнее: нужно постоянно проверять флаг RI и, если он установлен, то читать принятый байт из SBUF и сбрасывать RI. Такой способ удобен, когда разработчику четко известно, когда произойдет прием данных и когда его завершать. Неудобен он тем, что время выполнения самой программы напрямую зависит от скорости обмена. Чем медленнее скорость, тем дольше по времени цикл ожидания готовности к приему/посылке следующего байта.
При программировании последовательного канала под Windows, нужного состояния сигналов RTS и DTR можно добиться с помощью двух строк кода на языке С:
EscapeCommFunction( Port, SETRTS);
EscapeCommFunction( Port, CLRDTR);
2. Порядок работы.
В процессе работы необходимо изучить:
1. Аппаратный блок последовательного канала
Структурную схему контроллера последовательного канала
Схему включения UART
Страничную организацию памяти
2. ПЛИС МАХ
Регистры ПЛИС
3. Схему подключения светодиодов
В процессе работы необходимо:
1. Разработать архитектуру драйверов и системы тестирования.
2. Написать тесты драйвера светодиодов.
3. Написать тест драйвера последовательного канала.
4. Написать драйвер светодиодов.
5. Написать драйвер UART (функции чтения и записи байтов, опрос готовности приемника) без использования прерываний.
6. Отладить и протестировать драйверы.
3. Содержание отчета
Отчет должен содержать:
1. Описание архитектуры
используемой аппаратной части,
драйверов,
системы тестирования,
2. Исходные тексты драйверов.
3. Исходные тексты тестов.
5. Результаты тестирования.
4. Контрольные вопросы
Какие проблемы могут возникнуть при обращении к ПЛИС?
Какой режим работы последовательного канала используется в SDK-1.1 при связи с ПК?
Нарисуйте на бумаге формат посылки для байтов 0x14, 0x25, 0хА0.
Какой режим работы последовательного канала ADuC812 вы использовали?
Что такое гальваническая изоляция?
Что такое оптрон?
Как работает схема гальванической развязки последовательного канала в SDK-1.1?
Какой бит устанавливается в логическую 1 при приеме байта по последовательному каналу?
Когда устанавливается бит TI, после записи байта в SBUF или после его передачи?
Нарисуйте регистровую модель контроллера последовательного канала ADuC812.
Лабораторная работа 10 Таймер, использование прерываний в лабораторном стенде sdk 1.1
Цель работы: Изучить архитектуру таймеров и систему прерываний лабораторного стенда SDK-1.1, принципы обработки прерываний, разработать программы для управления системным таймером, просимулировать программы в отладчике-симуляторе, загрузить и выполнить программы на лабораторном стенде.
1. Методические указания к работе.
1.1. Таймеры
ADUC812 имеет три 16-битных таймера/счетчика общего назначения: Таймер 0, Таймер 1, Таймер 2. Каждый таймер состоит из двух 8-битных регистров ТНх и TLх (х обозначает 0, 1 или 2 для таймеров 0,1 и2). Все три таймера могут быть настроены на работу в режимах "таймер" или "счетчик". В режиме "таймер" регистр инкрементируется каждый машинный цикл. То есть можно рассматривать это как подсчет машинных циклов. Так как машинный цикл состоит из 12 перепадов напряжения на тактовом входе контроллера, частота инкрементирования таймера в 12 раз меньше тактовой частоты контроллера.
В режиме "счетчик" регистр инкрементируется по перепаду 1→0 на соответствующем входе Т0, Т1 или Т2. В этом режиме внешний вывод опрашивается в S5P2 каждого машинного цикла. Когда опрос показывает высокий уровень в одном цикле и низкий уровень в следующем, счетчик увеличивается на 1. Новое значение появляется в счетчике в S3P1 машинного цикла следующего за тем, в котором был обнаружен перепад. Так как требуется два машинных цикла на обнаружение перепада 1→0, максимальная частота инкремента счетчика равна 1/24 тактовой частоты контроллера. Нет никаких ограничений на поведение сигнала на входе, но для обеспечения того, чтобы он был хотя бы раз опрошен, необходимо продержать его значение не менее одного машинного цикла. Для конфигурации и контроля Таймеров используются 3 SFR регистра: TMOD и TCON для управления таймерами 1 и О, T2CON для управления таймером 2.