Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка пргр МП.docx
Скачиваний:
11
Добавлен:
01.07.2025
Размер:
16 Мб
Скачать
☆

(Слева) на принципиальной электрической схеме контроллера sdk-1.1

Необходимо настроить внешнее прерывание INT0/1 так, чтобы оно работало по спаду, а не по уровню (регистр специального назначения TCON). Для корректной работы внешнего прерывания INT0 5-й бит регистра управления ENA (адрес 0x080004 ПЛИС) должен быть равен 1.

Б.2.5 Требования к выполнению работы

  1. Все программы должны быть написаны на языке Си.

  2. Разрабатываемые драйверы устройств должны быть выполнены в виде отдельных программных модулей (файлов), содержащих функции по работе с заданным одним устройством.

  3. В программе должны быть использованы механизмы взаимного исключения (см. [51], IOS2003_lab4.pdf).

  4. В варианте задания с использованием светодиодов представлен лишь фрагмент анимации, при этом все анимации являются циклическими. По приведенному фрагменту требуется определить алгоритм анимации и реализовать его. Смена яркости свечения светодиодов должна быть плавной, без видимых «рывков» и эффекта «мерцания».

  5. Текст программы должен соответствовать правилам оформления программ на языке Си, приведенным в приложении (Приложение Г. Требования к оформлению программ на языке Си, [95]).

Б.2.6 Содержание отчета

  1. Титульный лист.

  2. Задание.

  3. Модель взаимодействия прикладной программы, прикладной части драйверов и системной части драйверов.

  4. Исходный текст программы с комментариями.

  5. Основные результаты.

Б.2.7 Литература

Литература к лабораторной работе: [45], [48], [49], [50], [51], [57], [75], [88], [93], [3], [8], [9], [11], [17], [22].

Б.2.8 Варианты заданий

  1. Контроллер SDK-1.1 на линейку светодиодов циклически отображает приведенную ниже анимацию или выводит количество замыканий входа T0 (счетный вход таймера 0 на рис. 129). Подсчет количества замыканий входа должен быть реализован с помощью таймерасчетчика 0. Смена режима отображения производится по поступлению сигнала внешнего прерывания INT0 (рис. 129). В анимации должны использоваться не менее 6 градаций яркости свечения светодиодов (например, 0%, 20%, 40%, 60%, 80% и 100%). В результате выполнения работы должны быть разработаны драйверы системного таймера, таймерасчетчика, светодиодных индикаторов, внешнего прерывания.

  1. Контроллер SDK-1.1 циклически проигрывает восходящую гамму нот первой октавы (длительность каждой ноты – 1 секунда) и на линейку светодиодов выводит количество замыканий входа T0 (счетный вход таймера 0 на рис. 129). Подсчет количества замыканий входа должен быть реализован с помощью таймера-счетчика 0. В результате выполнения работы должны быть разработаны драйверы системного таймера, таймерасчетчика, звукового излучателя, светодиодных индикаторов.

  2. Контроллер SDK-1.1 на линейку светодиодов циклически отображает приведенную ниже анимацию или выводит количество замыканий входа T1 (счетный вход таймера 1 на рис. 129). Подсчет количества замыканий входа должен быть реализован с помощью таймерасчетчика 1. Смена режима отображения производится по поступлению сигнала внешнего прерывания INT1 (рис. 129). В анимации должны использоваться не менее 6 градаций яркости свечения светодиодов (например, 0%, 20%, 40%, 60%, 80% и 100%). В результате выполнения работы должны быть разработаны драйверы системного таймера, таймерасчетчика, светодиодных индикаторов, внешнего прерывания.

  1. Контроллер SDK-1.1 циклически проигрывает нисходящую гамму нот второй октавы (длительность каждой ноты – 1 секунда) и на линейку светодиодов выводит количество замыканий входа T1 (счетный вход таймера 1 на рис. 129). Подсчет количества замыканий входа должен быть реализован с помощью таймера-счетчика 1. В результате выполнения работы должны быть разработаны драйверы системного таймера, таймерасчетчика, звукового излучателя, светодиодных индикаторов.

  2. Контроллер SDK-1.1 на линейку светодиодов циклически отображает приведенную ниже анимацию или выводит количество замыканий входа T0 (счетный вход таймера 0 на рис. 129). Подсчет количества замыканий входа должен быть реализован с помощью таймерасчетчика 0. Смена режима отображения производится по поступлению сигнала внешнего прерывания INT1 (рис. 129). В анимации должны использоваться не менее 6 градаций яркости свечения светодиодов (например, 0%, 20%, 40%, 60%, 80% и 100%). В результате выполнения работы должны быть разработаны драйверы системного таймера, таймерасчетчика, светодиодных индикаторов, внешнего прерывания.

  1. Контроллер SDK-1.1 циклически проигрывает восходящую гамму нот первой октавы (длительность каждой ноты – 0,5 секунды) и на линейку светодиодов выводит количество замыканий входа INT0 (линия внешнего прерывания INT0 на рис. 129). В результате выполнения работы должны быть разработаны драйверы системного таймера, звукового излучателя, светодиодных индикаторов, счетчика срабатываний внешнего прерывания. 7. Контроллер SDK-1.1 на линейку светодиодов циклически отображает приведенную ниже анимацию или выводит количество замыканий входа T1 (счетный вход таймера 1 на рис. 129). Подсчет количества замыканий входа должен быть реализован с помощью таймерасчетчика 1. Смена режима отображения производится по поступлению сигнала внешнего прерывания INT0 (рис. 129). В анимации должны использоваться не менее 6 градаций яркости свечения светодиодов (например, 0%, 20%, 40%, 60%, 80% и 100%). В результате выполнения работы должны быть разработаны драйверы системного таймера, таймерасчетчика, светодиодных индикаторов, внешнего прерывания.

8. Контроллер SDK-1.1 циклически проигрывает нисходящую гамму нот второй октавы (длительность каждой ноты – 0,5 секунды) и на линейку светодиодов выводит количество замыканий входа INT1 (линия внешнего прерывания INT1 на рис. 129). В результате выполнения работы должны быть разработаны драйверы системного таймера, звукового излучателя, светодиодных индикаторов, счетчика срабатываний внешнего прерывания.