218
соответствует младшему (0-му) разряду двоичного кода; восьмой
переключатель соответствует старшему (7-му) разряду. При этом единичный
разряд в коде – это соответствующий DIP-переключатель в положении «ON»,
нулевой разряд – это соответствующий DIP-переключатель в положении «OFF».
а)
б)
Рис. 126. Обозначение DIP-переключателей (а) и светодиодных индикаторов (б) на принципиальной
электрической схеме контроллера SDK-1.1
При установке DIP-переключателя в положение «ON» напряжение не сразу
устанавливается на уровне 0В, а «скачет» в течение некоторого времени (1-10
мс), пока цепь надежно не замкнется. После того, как DIP-переключатель будет
установлен в положение «OFF», напряжение также «скачет», пока не
установится на уровне +5В. Такого рода переходные процессы называются
дребезгом. Таким образом, при изменении
положения DIP-переключателя
(«ON» ↔ «OFF») возникает эффект дребезга, отрицательное влияние которого в
данной работе никак не устраняется.
Подробнее эта проблема будет исследоваться в лабораторной работе № 4
«Клавиатура».
Б.1.4 Требования к выполнению работы
1. Все программы должны быть написаны на языке Си.
2. Разрабатываемые драйверы устройств должны быть выполнены в виде
отдельных
программных модулей (файлов), содержащих функции по
работе с заданным одним устройством. Например, в этой лабораторной
работе драйвер светодиодных индикаторов должен содержать функцию
установки состояния светодиодов, а драйвер DIP-переключателей –
функцию чтения их состояния. В главном программном модуле должна
решаться предлагаемая вариантом задания прикладная задача с
использованием разработанных драйверов.
3. В тестовой
программе для осуществления анимации запрещается
использовать «покадровое» формирование картинки. Для реализации
алгоритма анимации должны быть использованы логические,
арифметические и бинарные операции, а также операции сдвигов.