Курсовая работа: Микропроцессорный контроллер электропривода постоянного тока
В блоке 3 производится анализ состояния того разряда ШД , к которому подключен триггер ГT.
В регистр ЦАП выводится цифровой эквивалент управляющего напряжения. Поэтому перед программированием этой операции необходимо вычислить по заданному Uупр его цифровой аналог (см. ниже ) .
Задержка времени для разгона ЭД может быть реализована в виде подпрограммы или без нее. Предварительно необходимо по заданному времени задержки произвести соответствующие вычисления (см. ниже).
В блоках 6 и 7 производится ввод цифрового эквивалента напряжения тахогенератора и его сравнение с цифровым эквивалентом управляющего напряжения. При несоответствии производится вывод
в RG ЦАП кода 00 ( блок 8 ), а в триггер СБ - сигнала "Сбой". Вывод в триггер необходимо организовать таким образом; чтобы разряд ШД, к которому подключен триггер, при вводе принял состояние, при котором светодиод должен излучать. Передача лог. 1 или 0 по этому разряду определяется схемой подключения светодиода к триггеру.
6.2 Разработка подпрограммы обслуживания прерывания
Подпрограмма начинает работу при поступлении сигнала "Авария" на вход микропроцессора " Запрос прерывания " (ЗПР). В состав подпрограммы входят три блока, выполняющиеся последовательно друг за другом.
Первый блок осуществляет запрет прерывания и запись в стек содержимого регистров МП.
Второй блок обнуляет регистр ЦАП и выдает сигнал "Сбой".
Третий блок осуществляет вызов из стека содержимого регистров МП, разрешение прерывания и переход на конец подпрограммы пуска.
6.3 Расчет цифрового эквивалента
Расчет сводится к преобразованию заданного управляющего напряжения из десятичной формы в шестнадцатеричную. Причем старший разряд кодирует направление вращения:
0 - прямое вращение, 1 - обратное.
Задано Uупр = -1,28 В. Так как в ЦАП цифровой код преобразуется в аналоговую величину с определенной дискретностью ( 0.05 В ), то первоначально вычисляется количество дискрет для представления аналоговой величины заданного уровня. Для уровня -1,28 В количество дискрет составляет 2610 , а двоичный эквивалент 110012 . С учетом направления вращения получим 1110012 , в шестнадцатеричной форме 1916 .
6.4 Разработка подпрограммы задержки
Подпрограмма задержки реализуется путем организации циклического процесса из N циклов. Если известно время выполнения i-той команды ti , в цикле и количество таких команд K в цикле, то время задержки составит:
Период выполнения одной команды равен:
T = 1 / 2,5*106 = 0,4*10-6 c.
1ком. = 25 такт.
Время выполнения одной команды равно:
tодн.ком. = T * 25 = 0,4*10-6 * 25 = 10-5 c.
Количество команд в цикле равно:
Kком. = tзад. / tодн.ком. = 0,87 / 10-5 = 87000
В шестнадцатеричном представлении N = 1 53D816 или 3216 *1416 *4416
6.5 Распределение памяти
Структура памяти МП контроллера оформляется в виде, представленном на рис. 10
В начальных адресах ( 00 00 - 00 3F ) располагаются восемь областей, закрепленных за конкретным вектором прерывания. За четвертым вектором закреплены 8 байтов с адресами 00 20 - 00 27. Поскольку подпрограмма обслуживания прерывания занимает больший объем памяти, чем отведенный под вектор прерывания, то в этих областях размещают только команду безусловного перехода по адресу, с которого размещена подпрограмма обслуживания прерывания. Стек - это любая область ОЗУ. Однако его целесообразнее располагать начиная с конечной ячейки, т. к. его заполнение происходит в сторону младших адресов. Подпрограммы пуска и обслуживания прерывания располагаются в тех местах памяти , в каких разработчик считает целесообразным в зависимости от объемов ОЗУ и ПЗУ.
00 00 00 1F | ОЗУ | |
00 20 00 27 | Команда перехода по адресу 02 31 | |
00 28 00 3F | ||
01 FF | Стек | |
02 00 02 30 | Подпрограмма пуска ЭД | ПЗУ |
02 31 02 42 | Подпрограмма обслуживания прерывания | |
02 43 0B FF | Резерв |
Рис. 6 Распределение памяти
7. Расчет источника питания
Источник питания рассчитывается только по каналу +5В, так как именно по этому каналу питания МП контроллер потребляет основную мощность.
Первоначально определяется суммарная потребляемая мощность всеми применяемыми микросхемами данного контроллера. Исходя из потребляемой мощности, определяется ток нагрузки при заданном напряжении .
;