Блок управления двигателем на МК
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: изложение ломоносов, реферат эпоха
| Добавил(а) на сайт: Utterklo.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата
измеренная длительность импульса мл. байт dli_i_l data 5eh
измеренная длительность импульса ст. байт dli_i_h data 5fh
заданная длительность импульса мл. байт dli_l data 60h
заданная длительность импульса ст. байт dli_h data 61h
временная ячейка temp data 62h
счетчик паузы выдачи измеренного значения indik data 63h
Используемые биты флагов перечислены ниже:
повторный вход в п.п. измерения периода импульса flag bit 00h
индикация нажатия функциональной клавиши f_ind bit 01h
функциональная клавиша «реверс» f_rev bit 02h
направление вращения f_nap bit 03h
вкл./выкл. двигатель f_rab bit 04h
индикация обороты/нагрузка f_rez bit 05h
функциональная клавиша «режим» f_rezind bit 06h
Деление 24-х битного числа на 16-и битное результат 16 бит, реализовано в подпрограмме div24. Деление многобайтного числа на
многобайтное реализуется по принципу вычитания делителя из делимого со
сдвигом последнего влево, с возможностью восстановления делимого. Перед
процедурой деления в ячейки делителя записывается число в диапазоне 0-
0fffh. В начале деления происходит: сдвиг делителя на четыре разряда влево
это необходимо для деления 24/16, запись в частное 10h для определения
окончания деления, запись в ячейки делимого число 1000000. В начале цикла
деления производится сдвиг делимого влево на один разряд, а так же сдвиг
влево частного и запись в стек значений флагов переносов. Далее из старшей
части делимого вычитаем делитель, в зависимости от знака переноса в частное
записывается «0» или «1» и сохранение делимого. Проверка переноса при
сдвиге делимого и запись в частное «1» если перенос был. Проверка окончания
деления путем проверки восстановленного значения флага переноса при сдвиге
частного. После окончания деления результат деления находится в ячейках
результата.
После нажатия клавиши «Старт» происходит преобразования значения
индикационных ячеек в двоичный код (1 байт), после чего это значение
умножается на 24, что соответствует 24 прорезям диска оптопары (результат 2
байта) и делим 1000000 на это число в результате получается длительность
периода импульсов от оптопары для введенного числа оборотов в секунду.
После преобразования выполняется функция запуска двигателя которая дает
толчок и разрешается прерывание INT1 с оптопары.
В подпрограмме обработки прерывания INT1 проверяется повторное
вхождение для этого используется флаг flag. При первом вхождении
запускается таймер и происходит выход из подпрограммы обработки прерывания.
Во втором вхождении таймер останавливается, запрещается прерывание INT1 и
значение таймера (что соответствует периоду импульса) записывается в ячейки
dli_i_l и dli_i_h. После чего производится регулирование частоты вращения
двигателя, для этого из ячеек dli_l dli_h (введенное значение) вычитается
измеренное dli_i_l dli_i_h, если возник перенос значит частота вращения
меньше необходимой и двигатель включается (отключается, если переноса нет)
установкой кода на портах Р3.4 Р3.5. Комбинация выбирается в зависимости от
направления вращения которая определяется битом f_nap. Индикация измеренной
частоты вращения происходит через 47 (2f) раз измерения импульсов, это
нужно для того чтобы убрать мелькание цифр на индикаторе. Преобразование
измеренного значения в частоту вращения двигателя в обр/сек происходит
следующим образом: деление 1000000 на измеренное значение, деление на 24, преобразование bin->dec->индикатор. Перед завершением подпрограммы
обработки прерывания INT1 производится инициализация регистров и ячеек
перед следующим запуском процедуры и разрешается прерывание INT1.
Для настройки таймера и прерывания INT1 используются следующие управляющие слова:
- TMOD=01H – режим работы таймера;
- TCON=04H
- Tr – разряд запуска таймера;
- IEN0 – разрешения прерываний
- 8 разряд – запрет всех прерываний;
- 3 разряд – INT1;
- 1 разряд – INT0 (клавиатура);
Рекомендуем скачать другие рефераты по теме: налоги в россии, зимой сочинение.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата