Проект с использованием MCC часть 07

Просмотров: 792


Модуль PWM – широтно импульсная модуляция (ШИМ). ПИК контроллеры часто на борту имеют модули ШИМ. На их основе строятся многие узлы управления электро приводами. В нашем варианте мы будем его использовать для управления яркостью светодиодов.

Модуль ШИМ работает совместно с таймером TMP2, поэтому так же в этой главе будет изучена его работа. Для изучения так же воспользуемся МСС. В окне ресурсы устройства найдем модули PWM.

и двойным кликом добавим их в проект. Нам необходимо два модуля 1 и 2. После успешного добавления окно ресурсы проекта будет выглядеть так:

Приступим к настройкам модулей.

Что нам необходимо знать? Во первых управление яркостью светодиодов в простых режимах осуществляется импульсном режиме. Т.е. выбирается период, часть времени подается напряжение на светодиод, а часть нет, Для глаза это воспринимается как неполная яркость.

Какой должен быть период или частота мигания, что бы глаз перестал замечать световые импульсы. Как известно человеческий глаз перестает различать световые импульсы после 25 герц, частота в переменного тока в электросети 50-60 гц, при этом мы практически не видим мигание ламп освещения, но для комфортного восприятия определено, что частота не должна быть ниже 100 гц (или выше), тогда свечение воспринимается не утомляющим зрение.

Выполним настройки для обоих модулей

Включим выход PWM, активный уровень высокий.

Для работы ШИМ нам потребуется активация таймера 2, для это перейдем в окно ресурсы устройства и двойной счетчиком  активируем таймер 2, у нас должно произойти изменения в окне ресурсы проекта. Выберем таймер 2 и выполним настройки

Предделитель установим на 1:64, в окне период вычисления периода таймера зададим 4,096 мс – максимальное значение. Этот параметр влияет на значение записываемые в регистр PIR2 – определяющий период работы таймера. 4,096 мс – это частота ~ 224 Гц.

Запустим сгенерировать код и перейдем в наш проект.

У нас появились новые файлы:

Это файлы pwm1 и pwm2, а также tmp2. Это файлы настройки и управления нашими модулями. Обратите внимание на графическое представление, в нем изменились назначение выводов

В схем нашего устройства также предстоит внести изменения, дело в том, что согласно таблице 1,описания :

Выходы наших модулей ШИМ подключены к определенным выводам микроконтроллера и не совпадают с нашей схемой. PWM1 к RC5, а PWM2 к RC3. По большому счёту нам надо будет изменить подключение только одного светодиода.

При активации выходов модулей PWM к выводу ПИКа подключается модуль, а отключается выходной буфер.  Поэтому все наши функции управления светодиодами будут отключены, хотя программа будет корректно управлять выходными буферами.

Перепрошьем ПИК, мы увидим, что светодиоды оба загорелись. Для анализа используем Saleae Logic подключим его к выводам портов управляемых нашими светодиодами (небольшое обучающее видео по работе с анализатором:

Я считаю, что наличие анализатора, это необходимая вещь для начинающего разработчика встроенных систем.

Со сканируем сигнал на выходах ШИМов, и за одно проверим наши расчетные параметры, частота 243,8 Гц, что офигенно точно для микроконтроллера, который использует внутренний генератор (расчетная 244 Гц).

Теперь используя ММС изменим период на PWM1 на 10 %, с генерируем и перепрошьем ПИК

После прошивки уже визуально видно что LD1 один горит слабее чем LD2. Со сканируем выходы…

Анализатор позволяет не только визуально увидеть, что мы запрограммировали, но измерять и оценить подученные параметры цифровых сигналов, мы еще не раз прибегнем к его услугам.


Проект использования ШИМ – 

Значок

Проект с использованием MCC часть 07 384.91 KB 82 downloads

Модуль PWM - широтно импульсная модуляция (ШИМ)....


Простое перепрограммирование не всегда интересно. У нас есть две кнопки управления, задействуем их для управления яркость светодиодов. Для начала простое управление яркость, одна кнопка увеличивает, другая уменьшает – все это в следующей теме


Это может быть интересно


  • MPLAB® Code Configurator and EncoderMPLAB® Code Configurator and Encoder
    Просмотров: 1222 Еще раз про энкодер… Для некоторых приложений очень удобно и экономически выгодно, для настройки и управления использовать энкодер. Такие энкодеры имеют строенную тактовую кнопку которую можно применить для выбора …
  • LED модуль P10 (1R) V706ALED модуль P10 (1R) V706A
    Просмотров: 5002 Это еще одно чудо от китайского брата. Это монохромные матрицы, называются они P10 (1R) V706A, ну типа  R-красные, но не верьте паяют светики и зеленые и синие, в общем …
  • Четырех канальный терморегулятор ch-4000Четырех канальный терморегулятор ch-4000
    Просмотров: 2834  Четыре независимых канала регулирования температуры, одновременно можно подключить 16 датчиков температуры DS18B20 с удалением до трехсот метров. Можно для регулировки выбрать любой датчик, подключенный к устройству. Каждый канал может работать …
  • ch-4050 – дифференциальный терморегуляторch-4050 – дифференциальный терморегулятор
    Просмотров: 1600 ch-4050 – это не новая модель, это расширенная версия универсального терморегулятора ch-4000. Различия коснулись в появлении новой функции дифференциального регулирования. Это вид регулирования по разности температур измеренного двумя …
  • Ссылки на интересные источникиСсылки на интересные источники
    Просмотров: 633 Сбор 3D моделей от André L’Hérault конденсаторы, резисторы, индуктивности dropbox IPC-SM-782 Surface Mount Design and Land Pattern Standard Видео уроки по Altium designer Alexey Sabunin https://www.youtube.com/channel/UCG7N5CqXpyK8nQjr1EmMgng Сергей Булавинов https://www.youtube.com/channel/UCISAMXRnN_Qw9UTjUwZI1Jw Robert Feranec https://www.youtube.com/user/matarofe …
  • PIC18 – модуль DMAPIC18 – модуль DMA
    Просмотров: 949 Введение   Модуль прямого доступа к памяти (DMA) предназначен для обслуживания передачи данных непосредственно между различными областями памяти без вмешательства процессора. Исключив при этом необходимость в интенсивной  обработки …
  • Цифровой спидометр для автомобиляЦифровой спидометр для автомобиля
    Просмотров: 9974  Универсальность печатной платы ch-c0030pcb позволяет создавать на её основе разнообразные устройства. Одним из таких устройств является электронный спидометр для автомобиля, в котором можно задать два компаратора скорости, например,  для …
  • NeoPixel LED and PIC24NeoPixel LED and PIC24
    Просмотров: 371 Популярность однопроводной шины для управления светодиода типа WS2812 не ослабевает, а новые типы светодиодов в корпусах 3,5*3,5мм, 2,0*2,0мм становяться все больше привлекательными. Построение дисплеев для анимации требуют все …
  • Часы-кухонный таймерЧасы-кухонный таймер
    Просмотров: 3335 Каждая кухня должна иметь кухонный таймер, который позволяет напоминать хозяйке когда проходить определенный промежуток времени. Например, печем пирог, варим яйца… , чтобы не смотреть постоянно на часы, установим таймер и …
  • Регулятор влажностиРегулятор влажности
    Просмотров: 1232 Регулятор ILLISSI-CH-1000 предназначен для контроля и регулировки относительной влажности в диапазоне от 0 до 100%. Регулятор позволяет работать как в режиме осушения, так и увлажнения. Для измерения возможно …



Поделись этим!

Catcatcat

catcatcat

Development of embedded systems based on Microchip microcontrollers.