Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
dTub
Скачать

PWM : Pulse Width Modulation

Автор: PBElectronique

Загружено: 2016-03-20

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

Описание:

https://pbelectronique.com/site/index...
Dans la programmation de PIC, on veut parfois faire varier la tension à la sortie d'une patte du microcontrôleur. Pour ce faire, il faut utiliser la technique qui s'appelle PWM.

Cette technique fonctionne seulement avec quelques pins sur un microcontrôleur. Par exemple, sur le PIC16F628A, il y a seulement la pin RB3 (pin 9). Sur d'autres PICs, il peut y en avoir plus ou aucune qui ont cette fonction. Pour savoir si une pin utilise la fonction PWM, on doit regarder dans les fiches techniques du microcontrôleur. S'il l'utilise, il va être écrit CCP. C'est le nom du module. C pour capture, C pour compare et P pour PWM (Pulse width modulation).

Depuis le début des cours sur la programmation des PICs, je vous ai dit que lorsqu'on envoi un 1 logique, on obtient 5V et lorsqu'on envoi un 0, on obtient 0V. Mais comment faire pour avoir une tension entre zéro et cinq volts?

Pour faire varier la tension à la sortie d'une pin du micro-contrôleur, on utilise la fréquence. On crée une onde rectangulaire avec le module CCP, ce qui nous permet de jouer avec les hauts et les bas. Pour avoir parfaitement 50% de puissance à la sortie, on doit avoir le même temps d'une période à un niveau haut qu'à un niveau bas. On fait donc osciller haut, bas, haut, bas... plusieurs fois par secondes, ce qui, à l'oeil nue, ne paraît absolument pas. On obtient une tension de sortie moyenne de 2.5V (50%) si on est sous 5V.

Pour avoir un différent pourcentage à la sortie, on a juste à augmenter le temps au niveau haut de la période et réduire le temps au niveau bas ou l'inverse pour diminuer le pourcentage. De cette manière, on va obtenir n'importe quel tension à la sortie.

On appelle ce ratio de niveau haut et bas, le cycle d'usage (duty cycle). Pour calculer le cycle d'usage, il suffit de diviser le temps au niveau haut par le temps total de la période. Ex.:
Duty cycle = (3 us/6 us) = cycle d'usage de 50%.
Alors, nous devrions obtenir une tension moyenne de sortie de 50% de la tension total. Sous 5V, on obtiendrait une tension moyenne de 2.5V.

Pour le programmer dans MikroC Pro, il y a déjà 4 fonctions pré-établies, qui nous permet de contrôler le PWM. La première s'appelle, PWM_Init. Cette fonction nous aide à établir la fréquence du PWM. Par exemple, PWM_Init(5000); Cela dit au microcontrôleur qu'il doit osciller à une fréquence de 5 kHz. Habituellement, 5 kHz fonctionne super bien. Il et important de noté que si on a plusieurs pin de PWM sur le même micro-contrôleur, on ne peut pas leur donner différentes fréquence, car ils utilisent tous le même Timer interne. Il faut noté que si on utilise une fréquence trop élevé (tel que mentionné dans la vidéo) et que le microcontrôleur ne peut pas supporter cette fréquence, il y aura des disfonctionnement du module PWM. À l'inverse, une fréquence beaucoup trop faible aura pour effet de ne pas donner une tension moyenne, mais plutôt un clignotement à la broche de sortie.

La deuxième fonction s'appelle, PWM_Set_Duty. Cette fonction sert à établir la tension moyenne à la sortie sur microcontrôleur. Étant donné que nous fonctionnons avec un registre de 8 bits, on doit écrire un nombre de 0 à 255 entre parenthèse. Par exemple, PWM_Set_Duty(192); En inscrivant 192, on donne, à la sortie, une tension moyenne de 75%.

Finalement, les deux dernières fonctions vont ensemble. On a PWM_Start, ce qui démarre le PWM et PWM_Stop, ce qui arrête le PWM.

Si vous n'utilisez pas MikroC Pro et ses librairies internes, il vous faudra lire la documentation du microcontrôleur. Comme mentionné un peu plus haut, le module PWM fait partie du groupe CCP. Il vous faut activer certains registres pour faire l'initialisation du PWM et d'autres pour contrôler le cycle d'usage. Voici un exemple des registres à gérer pour le PWM du PIC16F887.

• PR2
• T2CON
• CCPRxL
• CCPxCON

Il y a les registres pour l'interruption, le timer 2 et les registres du module CCP à configurer pour le bon fonctionnement du PWM. Aussi, dans les fiches techniques, on retrouve plusieurs formules pour calculer la largeur d'impulsion de sortie ou encore et pour calculer le cycle d'usage en fonction de notre configuration des registres.

PWM : Pulse Width Modulation

Поделиться в:

Доступные форматы для скачивания:

Скачать видео mp4

  • Информация по загрузке:

Скачать аудио mp3

Похожие видео

inverter circuit TL494 | 50khz to 300khz PWM Generator

inverter circuit TL494 | 50khz to 300khz PWM Generator

PWM  (MLI) PIC

PWM (MLI) PIC

Радиотехника У-101 .Профилактика и доработка схемы .п.

Радиотехника У-101 .Профилактика и доработка схемы .п.

Как правильно подключить осциллограф.

Как правильно подключить осциллограф.

Générateur PWM à fréquence variable avec un 555

Générateur PWM à fréquence variable avec un 555

PWM waveform generation using PIC 16F877 (Detailed explanation of code and theory)

PWM waveform generation using PIC 16F877 (Detailed explanation of code and theory)

Как я металлизировал отверстия в печатных платах

Как я металлизировал отверстия в печатных платах

STI2D Modulation de largeur d'impulsion MLI (PWM)

STI2D Modulation de largeur d'impulsion MLI (PWM)

Какую опасность таит в себе реле напряжения? #энерголикбез

Какую опасность таит в себе реле напряжения? #энерголикбез

Комментарий к текущим событиям от 23 января 2026 года. Михаил Хазин

Комментарий к текущим событиям от 23 января 2026 года. Михаил Хазин

Démo NE 555 avec rapport cyclique à un

Démo NE 555 avec rapport cyclique à un

Как Сделать Настольный ЭЛЕКТРОЭРОЗИОННЫЙ Станок?

Как Сделать Настольный ЭЛЕКТРОЭРОЗИОННЫЙ Станок?

PWM desde MCC, con MPLABX, XC8 y el PIC16f18855

PWM desde MCC, con MPLABX, XC8 y el PIC16f18855

Немцы создали этих чудищ для прорыва Восточного фронта. Крупп Роймер и VsKfz 617

Немцы создали этих чудищ для прорыва Восточного фронта. Крупп Роймер и VsKfz 617

Modulation d’Impulsions

Modulation d’Impulsions

Programmateur de PIC Microcontrôleur

Programmateur de PIC Microcontrôleur

#6 Le/la PWM ( Explications en français ) #eurorack #synthetiseur #modulaire #debutant

#6 Le/la PWM ( Explications en français ) #eurorack #synthetiseur #modulaire #debutant

PWM - Pulse Width Modulation | CCP Modules | كورس برمجة ميكروكنترولر | تعديل عرض النبضة

PWM - Pulse Width Modulation | CCP Modules | كورس برمجة ميكروكنترولر | تعديل عرض النبضة

Почему Азовское море — самое опасное в мире

Почему Азовское море — самое опасное в мире

توليد موجة PWM باستخدام الترانزستورات (Generate a PWM signal using Transistors)

توليد موجة PWM باستخدام الترانزستورات (Generate a PWM signal using Transistors)

© 2025 dtub. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: infodtube@gmail.com