При включении контроллера происходит инициализация прерываний INT0, INT1, INT2 по спадающему фронту, инициализация порта PORTC управления двигателем, инициализация ЖКИ.
Для поворота двигателя необходимо переключать его обмотки в необходимом порядке, указанном в спецификации двигателя. Этот порядок задается в массиве nSteps. Текущий индекс переключения обмоток хванится в переменной nCurrentStep. Текущее положение антенны хранится в переменной nCurrentAngle в градусах.
Обработка нажатий клавиш происходит при помощи прерываний. Прерывание INT0 служит для обработки нажатия клавиши «Влево». Прерывание INT1 служит для обработки нажатия клавиши «Вправо», прерывание INT2 - клавиши «МЕНЮ».
При нажатии клавиши «МЕНЮ» обнуляется и выводится текущее положение антенны.
Рис. 5.1 - Блок-схема функции ext_int_menu обработки нажатия на клавишу «MENU»
При нажатии клавиши «Влево» / «Вправо» микроконтроллер поворачивает двигатель на 1 градус по/против часовой стрелки, отображая текущее положение антенны на ЖКИ. Если кнопка нажата более 0,3 секунды, то антенна поворачивается на 1 градус с периодом 0,3 секунды пока клавиша не будет отпущена.
Рис. 5.2 - Блок-схема функции ext_int_left обработки нажатия на клавишу «LEFT»
Рис. 5.3 - Блок-схема функции RotateLeft поворота антенны на 1 градус
Поворот двигателя осуществляется подачей заданной последовательности в порт управления двигателем. Для поворота по часовой стрелке необходимо выбрать последовательность в прямом порядке, для поворота против часовой стрелки - в обратном порядке. Функции передается параметр nCount, который задает количество шагов для поворота. Далее в цикле параметр с каждым шагом уменьшается до 0. При этом текущий индекс последовательности меняется от 0 до 3.
Самое читаемое:
Анализ и исследование схем преобразователей напряжение-частота
В последнее время широкое распространение получили преобразователи
напряжения в частоту на ОУ. Такие преобразователи характеризуются точностью,
высокой линейностью, хорошей температурной стабильностью параметров и низкой
стоимостью. Одно из главных применений преобразователей напряжения в частоту
основано на способности этих преобра ...