Difference between revisions of "Component: PWM (Internal) (General Output)"
Line 5: | Line 5: | ||
|- | |- | ||
| width="20%" style="color:gray;" | Version | | width="20%" style="color:gray;" | Version | ||
− | | | + | | 1.0 |
|- | |- | ||
| width="20%" style="color:gray;" | Category | | width="20%" style="color:gray;" | Category | ||
Line 15: | Line 15: | ||
Pulse Width Modulation, a versitile way of generating a digital pulse using mark / space modulation. Uses the capture compare peripherals onboard most Microcontrollers to generate accurate waveforms without any intervention from the processor. Useful for generating audio, controlling the speed of motors, brightness of LED etc. | Pulse Width Modulation, a versitile way of generating a digital pulse using mark / space modulation. Uses the capture compare peripherals onboard most Microcontrollers to generate accurate waveforms without any intervention from the processor. Useful for generating audio, controlling the speed of motors, brightness of LED etc. | ||
− | ==Component | + | ==Component Source Code== |
− | + | Please click here for the component source code: [https://www.flowcode.co.uk/wikicopy/componentsource/FC_Comp_Source_PWM_Output.fcfx FC_Comp_Source_PWM_Output.fcfx] | |
==Detailed description== | ==Detailed description== | ||
+ | |||
+ | |||
Line 36: | Line 38: | ||
==Examples== | ==Examples== | ||
+ | |||
+ | |||
Line 176: | Line 180: | ||
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties''' | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Channel | ||
+ | |- | ||
+ | | colspan="2" | Selects which PWM channel the component is connected to. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
+ | | width="90%" | Alternative pin | ||
+ | |- | ||
+ | | colspan="2" | Allows an alternate pin to be used if available. Note that on some devices you will also have to change this setting in the device configuration. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | ||
+ | | width="90%" | PWM Pin | ||
+ | |- | ||
+ | | colspan="2" | Specifies the pin assigned to the PWM channel selected | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | ||
+ | | width="90%" | Remap Pin | ||
+ | |- | ||
+ | | colspan="2" | Allows the PWM hardware pin to be reassigned to another pin | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | PWM Frequency | ||
|- | |- | ||
|- | |- | ||
Line 207: | Line 239: | ||
|- | |- | ||
| colspan="2" | Displays the frequency of PWM cycles per second. | | colspan="2" | Displays the frequency of PWM cycles per second. | ||
+ | |- | ||
+ | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
+ | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Calculations | ||
+ | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-15-icon.png]] | ||
Line 233: | Line 269: | ||
| colspan="2" | Applies the calculated period and prescaler settings to the PWM component default settings. | | colspan="2" | Applies the calculated period and prescaler settings to the PWM component default settings. | ||
|- | |- | ||
− | | width="10%" align="center" style="background-color:# | + | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] |
− | | width="90%" style="background-color:# | + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
|- | |- |
Revision as of 17:49, 9 November 2022
Author | Matrix Ltd |
Version | 1.0 |
Category | General Output |
Contents
PWM (Internal) component
Pulse Width Modulation, a versitile way of generating a digital pulse using mark / space modulation. Uses the capture compare peripherals onboard most Microcontrollers to generate accurate waveforms without any intervention from the processor. Useful for generating audio, controlling the speed of motors, brightness of LED etc.
Component Source Code
Please click here for the component source code: FC_Comp_Source_PWM_Output.fcfx
Detailed description
No detailed description exists yet for this component
Examples
Here is a basic example to control the PWM duty based on an ADC reading.
Digital PWM trace
Here is another basic example which ramps the PWM duty cycle up and down. If the PWM output pin is connected to a LED and series resistor then the LED will smoothly transition between on bright and off.
Downloadable macro reference
![]() |
Disable |
Disables a PWM channel and allows the default output / input state to be resumed | |
![]() |
Return |
![]() |
Enable |
Enables a PWM channel as an output overriding the default output pin state. | |
![]() |
Return |
![]() |
SetFrequency |
Sets a PWM of the specifed frequency at a duty of 50% Ideal use is a frequency generator | |
![]() |
Frequency |
Enter frequency in Hz | |
![]() |
Return |