Informatics Point

Информатика и проектирование

Определение структуры программы

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

Рассчитаем время экспозиции каждого индикатора. Для того чтобы избежать эффекта мелькания данных на индикаторах, необходимо чтобы частота регенерации изображения была бы не ниже 25 Гц, что соответствует периоду 40 мс. Выберем этот период в несколько раз выше - например 15 мс. Учитывая, что индикаторов всего 3, время экспозиции каждого индикатора составит 5 мс. Таким образом, основная программа должна прерываться каждые 5 мс. Для выработки этих циклических прерываний можно использовать 8-ми битный таймер Т0 микроконтроллера. Временной интервал 5 мс будет соответствовать 5000 импульсов счета тактового генератора, учитывая, что микроконтроллер тактируется частотой 1 МГц. Эту величину можно представить как 19*256+136. Таким образом таймер Т0 должен 19 раз произвести свой полный цикл переполнения и еще просчитать 136 тактов.

Тактирование основной программы можно осуществить, подсчитывая 5-ти миллисекундные временные интервалы, генерируемые таймером.

Лучшие статьи по информатике

Технология изготовления электронно-лучевой трубки
Фокусирующая система может быть линзовой или зеркальной. Линзовые системы имеют сферическую аберрацию значительно, большую, чем зеркальные, но первые ко ...

Проектирование телевизионного приемника
электрический напряжение приемник телевизионный Цель курсового проекта: закрепить знания, полученные при изучении теоретической части дисциплины, привить навы ...

Расчет антенны для земной станции спутниковой системы связи (ЗССС)
Зеркальные антенны являются наиболее распространёнными остронаправленными антеннами. Их широкое применение в самых разнообразных радиосист ...

Меню сайта