Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Формирование импульсных сигналов управления с использованием таймеров микроконтроллера

Читайте также:
  1. I-7000 : устройства удаленного и распределенного сбора данных и управления
  2. I.2 Особенности управления тормозами грузовых поездов повышенного веса и длины
  3. I.3 Особенности управления тормозами в зимних условиях
  4. II. Формирование новых знаний
  5. III. Основные функции Управления
  6. IV ДЕЙСТВИЯ ЛОКОМОТИВНОЙ БРИГАДЫ И ОСОБЕННОСТИ УПРАВЛЕНИЯ ТОРМОЗАМИ ПОЕЗДА ПРИ ПЕРЕХОДЕ НА РЕЗЕРВНОЕ УПРАВЛЕНИЕ ЭЛЕКТРОННЫМ КРАНОМ МАШИНИСТА
  7. IV ПОРЯДОК СМЕНЫ КАБИН УПРАВЛЕНИЯ НА ЛОКОМОТИВАХ И ПЕРЕКЛЮЧЕНИЕ ТОРМОЗНОГО ОБОРУДОВАНИЯ

Одной из основных функций таймеров является формирование импульсных сигналов управления внешними устройствами управляющей системы. Генерация импульсов с использованием таймеров, выполняется, в основном, аппаратно. Некоторые режимы таймеров для генерации некоторых типов импульсных сигналов требуют определенной программной поддержки.

Для генерации меандра (скважность импульсов равна 2) можно использовать режим сброса по совпадению. Режим выхода по совпадению установить в опцию “переключение при совпадении”. В регистр совпадения загрузить значение, соответствующее длительности импульса (паузы). Напомним, что в режиме сброса по совпадению при равенстве значений в таймере и регистре совпадения таймер сбрасывается и продолжает счет входных импульсов с нулевого значения. Тогда, каждый раз при равенстве значений таймера и регистра совпадения будет переключаться разряд выхода совпадения, т.е. на этом выходе будет формироваться меандр.

На рис.57 приведены диаграммы формирования меандра с использованием таймера Т0.

Рисунок 57

 

Значение, которое необходимо поместить в регистр совпадения OCR0, для получения заданного периода импульсов:

 

OCR0 = Т /2*Ттакт * К – 1; или OCR0 = Т * Fтакт / К – 1;

 

где: Т – период формируемых импульсов на выходе PIND.3.

При использовании этого режима для генерации импульсов необходимо предварительно.

- в регистр сравнения OCR0 загрузить значение равное длительности паузы;

- установить режим “Сброс по совпадению”;

- установить режим выхода совпадения PIND.3 / ОС0 на переключение при совпадении;

- установить режим таймера;

- включить таймер Т0.

Ниже приведен текст программы настройки таймера Т0 для генерации меандра.

 

# include < mega16.h> // Директива подключения этого файла с именами регистров

// ввода-вывода микроконтроллера.

 

void main (void) // Главная функция.

{

OCR0 =......; // В регистр сравнения загружается байт,

// соответствующий периоду импульсов.

TCCR0 = 0B00011001; // Разряды 6 и 3 (01) - режим “Сброс по;совпадению”,

// мл. разряды 001 – коэфф. деления =1 и пуск Т0 (началo

// временного интервала), разряды 5 и 4 (01) – переключение

// вывода PIND.3 при совпадении.

while (1)

{

// Операторы главной функции и работает Т0, формируя импульсы.

}

 

 

Для генерации импульсов со скважностью не равной 2, режим сброса по совпадению применять нецелесообразно, так в подпрограмме прерываний по совпадению необходимо перезагружать регистр совпадения, то есть, требуется программная поддержка. Функция генерации импульсов с произвольной скважностью может быть реализована с использованием какого-либо из режимов генератора сигнала ШИМ.

На рис.58 приведены временные диаграммы сигналов работы таймера Т1 в режиме генератора сигналов ШИМ (режим 14) и текст программы настройки Т1.

Как следует из графиков длительности импульса и паузы в тактах импульсов на входе Т1 составляет:

Nи = ICR1- OCR1A и Nп = OCR1A.

Из этих соотношений можно определить значения в регистрах ICR1 и OCR1A по заданным значениям длительности импульса и паузы.

OCR1A = Nп; ICR1 = Nи +N п. (9)

Рисунок 58

При использовании делителя частоты импульсов на входе таймера Т1, следует учесть коэффициент деления делителя К. С учетом этого расчет значений в регистрах выполнять по формулам:

OCR1A = tп / (T такт *К) - 1; ICR1 = (tи +t п)/(T такт *К) - 1, (10) где:

T такт - период тактовой частоты микроконтроллера.

Понятно, что для неинвертируемой ШИМ в формулах tи и t п нужно поменять местами.

Пример 8 Рассчитать значения, которые необходимо поместить в регистры ICR1 и OCR1A для получения сигнала инвертированного сигнала ШИМ со значениями Т=320мкс и tи = 80мкс. Значение коэффициента деления делителя К=8. Значение тактовой частоты F = 16мГц.

OCR1A = -1 = (320 – 80) * 10 -6/ 2 4 * 10 6 /2 3 - 1= 479.

Составляем содержимое регистра управления TCCR1A.

В разряды СОМ1А1 и СОМ1А0 необходимо установить значения 11 для настройки заданного вида сигнала: инвертированный ШИМ-сигнал.

В разряды WGM11 и WGM10 необходимо установить значение 10 – два младших разрядов режима 14 (14 в двоичной системе 1110). Остальные разряды этого регистра не используются, поэтому в них поместим нули.

TCCR1A = 11000010.

Составляем содержимое регистра управления TCCR1В.

В разряды WGM31 и WGM20 устанавливаем два старших разряда режима 14,т.е.11.

В разряды CS12,CS11,СS10 необходимо установить 010. Это значение определяет заданный коэффициент деления делителя К = 8. Остальные разряды этого регистра не используются, поэтому в них поместим нули.

TCCR1В – 00011010.

Программа настройки таймера Т1 для генерации импульсов ШИМ в режиме 14.


Дата добавления: 2015-07-20; просмотров: 111 | Нарушение авторских прав


Читайте в этой же книге: Энергонезависимая память данных | Язык Ассемблер | Типы данных, объявление данных | Операторы | Оператор if-else (ветвления ) | Оператор switch | Оператор цикла for | Программный способ формирования временных интервалов на языке Ассемблер | Программный способ формирования временных интервалов на языке СИ | Генерация пакета импульсов |
<== предыдущая страница | следующая страница ==>
Генератор заданного числа пакетов импульсов| Обработка динамического дисплея

mybiblioteka.su - 2015-2024 год. (0.007 сек.)