Разделы сайта

Алгоритм работы устройства

При включении контроллера происходит инициализация прерываний 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.

Самое читаемое:

Вакуумные и плазменные приборы
Спроектировать электронно-оптическую систему осциллографической трубки. Исходные данные к проекту: . Ускоряющее напряжение - 5 кВ. . Ток эмиссии катода - 1 мА. . Диаметр луча на экране - 0,5 мм. . Развертка луча - линейная. . Угол отклонения луча - 200. Напряжение, В 6.3 ...

www.techstages.ru : Все права защищены! 2019