5.1.4.1.1. Блок захвата/сравнения

Каждый канал захвата/сравнения управляется через один регистр. Данный регистр имеет несколько функций, которые зависят от установок бит выбора. В режиме захвата, данный блок выполняет фильтрацию на входах, поддерживает специальный режим измерения внешнего ШИМ-сигнала, а также имеет входы для подключения внешнего энкодера. В режиме сравнения, блок выполняет стандартные функции сравнения, генерации ШИМ-сигналов, а также поддерживает опциональную функцию одновибратора.

У каждого канала захвата/сравнения имеется один регистр для задания режима работы

5.1.4.1.2. Блок захвата

Базовый блок захвата имеет 4 канала, подключенных к конфигурируемым детекторам фронтов. При обнаружении нарастающего или падающего фронта, текущее значение счетчика записывается в 16-битный регистр захвата/сравнения. Когда возникает событие захвата, счетчик таймера может быть сброшен или приостановлен. Кроме того, одновременно с этим может быть запущено прерывание или ПДП-передача.

Каждый из четырех блоков захвата имеют входной фильтр и детектор фронтов. При возникновении события захвата может быть запущено прерывание или ПДП-передача

5.1.4.1.3. Режим измерения параметров шим-сигнала

Блок захвата имеет возможность использования двух каналов захвата для автоматического измерения параметров внешнего ШИМ-сигнала, в т.ч. заполнение импульсов и период следования импульсов.

В режиме измерения параметров ШИМ-сигнала два канала могут использоваться для автоматического измерения периода и заполнения импульсов ШИМ-сигнала

M3->CR1 = 0x00000000; //по умолчанию

TIM3->PSC = 0x000000FF; //установка макс. коэф. предделителя

TIM3->ARR = 0x00000FFF; //установка макс. перезагружаемого знач.

TIM3->CCMR1 = 0x00000001; //Вход IC1 связываем с TI1

TIM3->CCER |= 0x00000000; //IC1 реагирует на нарастающий фронт

TIM3->CCMR1 |= 0x00000200; //Вход IC2 связываем с TI1

TIM3->CCER |= 0x00000020; //IC2 реагирует на падающий фронт

TIM3->SMCR = 0x00000054; //Выбор TI1FP1 в качестве входа, запуск по нарастающему фронту

//сброс счетчика

TIM3->CCER |= 0x00000011; //разрешение каналов захвата

TIM3->CR1 = 0x00000001; //разрешение таймера

В режиме измерения параметров ШИМ-сигнала входной сигнал соединен с двумя каналами захвата. В начале цикла ШИМ основной счетчик сбрасывается через второй канал захвата (нарастающий фронт ШИМ-сигнала) и начинает прямой счет. При возникновении падающего фронта ШИМ-сигнала срабатывает первый канал захвата, что приводит к фиксации значения заполнения импульсов. При обнаружении следующего нарастающего фронта вторым каналом захвата в начале следующего цикла ШИМ сбрасывается таймер и фиксируется значение периода ШИМ-сигнала.

5.1.4.1.4. Интерфейс энкодера

Блок захвата всех таймеров также поддерживает возможность непосредственного подключения к внешнему энкодеру, который обычно используется для контроля угловых перемещений и частоты вращения электродвигателей.

Каждый таймер имеет возможность подключения к линейному или поворотному энкодеру для контроля положения, скорости и направления

В данной конфигурации выводы захвата выступают в роли входов синхронизации счетчика. Состояние счетчика в дальнейшем используется для определения положения. Для контроля скорости необходимо использовать еще один таймер. Он необходим для измерения интервала времени между импульсами сигнала энкодера.

Соседние файлы в папке ПЦиПУ. материалы для Курсового проекта Тютякин А.В.