Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
mIKROPROTsESSORY / LABMP_ALL_2013.doc
Скачиваний:
75
Добавлен:
09.04.2015
Размер:
2.25 Mб
Скачать

3.2. Задание для домашней подготовки

3.2.1. Ознакомиться с основами использования встроенных таймеров по п. 3.1 настоящих указаний и по [2].

3.2.2. Разработать программу согласно заданию, приведенному ниже. Выбрать вариант задания для каждой бригады из табл.2.1.

Вариант 1. Разработать программу временной задержки, которая имеет переменное значение: сначала должна отсчитываться задержка в 3 с, затем в 6 с, затем опять в 3 с и т.д. Количество таких двойных интервалов должно равняться 10, после чего программа заканчивает работу.

Вариант 2. Разработать программу электронных часов. Часы должны увеличивать содержимое какого-либо регистра (R0-R7) каждую секунду, при достижении числа 60 - сбрасывать показания и добавлять в другой регистр, который играет роль минутного регистра, единицу и т.д.

Примечание: для индикации часов можно воспользоваться стандартной подпрограммой монитора, которая выводит на LCD модуль содержимое основных регистров ОЭВМ. Она похожа на программу отображения полного состояния ОЭВМ (см. п. 2.5), но не требует для выхода нажатия кнопок на плате и выводит на LCD модуль только одно состояние.

Вариант 3. Разработать программу подсчета числа нажатий кнопок Т0 и INT0 на плате. Число нажатий каждой кнопки хранить в регистрах R0-R7 ОЭВМ. По достижению 10 нажатий каждой кнопки осуществить выход из программы. Если какая-либо кнопка нажата больше 10 раз в то время как число нажатий другой не достигло 10, требуется предотвратить реагирование платы на нажатие первой кнопки. Предусмотреть вывод на LCD модуль состояния ОЭВМ после каждого нажатия кнопки (см. примечание к варианту 2).

Вариант 4. Разработать программу подсчета числа парных нажатий кнопок Т0 и INT0 на плате. Число нажатий каждой кнопки хранить в регистрах R0-R7 ОЭВМ. По достижению 10 нажатий каждой кнопки осуществить выход из программы. Обязательно предусмотреть защиту от двойных нажатий одной и той же кнопки, т.е. кнопки должны нажиматься попеременно. Предусмотреть вывод на LCD модуль состояния ОЭВМ после каждого нажатия кнопки (см. примечание к варианту 2).

Вариант 5. Разработать программу электронного секундомера. Предусмотреть его запуск по кнопке Т0 и останов по кнопке INT0. Секундомер должен увеличивать содержимое какого-либо регистра (R0-R7) каждую секунду, при достижении числа 60 - сбрасывать показания (см. примечания к варианту 2).

Вариант 6. Разработать программу обратного секундомера. В начале программы в какой-нибудь регистр записывается небольшое число, например, 02, что будет означать 2 минуты, затем при нажатии кнопки INT0 или Т0 начинается обратный отсчет секунд, причем в каком-либо другом регистре должны отображаться уменьшающиеся секунды. Как только в обоих регистрах будут нули – программа заканчивает свою работу.

Вариант 7. Разработать программу измерения длительности выполнения определенной программы. Необходимо написать простейшую программу с циклом, теоретическая длительность которой не превышает 255 тактов. С помощью какой-либо кнопки запустить ее на выполнение, одновременно запустив таймер. Подсчитать длительность выполнения программы и вывести ее в какой-либо регистр ОЭВМ.

Вариант 8. Составить программу подсчета троекратных нажатий кнопок INT0 или Т0. Если число нажатий какой-либо кнопки не будет равно 3 и нажимается другая кнопка, то введенное число нажатий первой кнопки должно сбрасываться и троекратные нажатия производятся заново. После троекратного нажатия какой-либо кнопки в определенном регистре должно увеличиться его содержимое на 1. После этого можно опять троекратно нажимать ту же кнопку или другую (тогда в другом регистре после троекратного нажатия будет добавляться единица).

Вариант 9. Разработать программу электронных часов. Часы должны увеличивать содержимое какого-либо регистра (R0-R7) каждые 0,1 секунды, при достижении числа 10 - сбрасывать показания и добавлять в другой регистр секунду, при достижении в этом регистре числа 60 - сбрасывать показания и добавлять в другой регистр, который играет роль минутного регистра, единицу и т.д.

Примечание: для индикации часов можно воспользоваться стандартной подпрограммой монитора, которая выводит на LCD модуль содержимое основных регистров ОЭВМ. Она похожа на программу отображения полного состояния ОЭВМ (см. п. 2.5), но не требует для выхода нажатия кнопок на плате и выводит на LCD модуль только одно состояние.

Вариант 10. Разработать программу временной задержки, которая имеет переменное значение: сначала должна отсчитываться задержка в 5 с, затем в 10 с, затем опять в 5 с и т.д. Количество таких двойных интервалов должно равняться 5, после чего программа заканчивает работу.

Примечание: для индикации можно воспользоваться стандартной подпрограммой монитора, которая выводит на LCD модуль содержимое основных регистров ОЭВМ. Она похожа на программу отображения полного состояния ОЭВМ (см. п. 2.5), но не требует для выхода нажатия кнопок на плате и выводит на LCD модуль только одно состояние.

Соседние файлы в папке mIKROPROTsESSORY