pwm pulse width modulation l.
Skip this Video
Loading SlideShow in 5 Seconds..
PWM Pulse Width Modulation PowerPoint Presentation
Download Presentation
PWM Pulse Width Modulation

Loading in 2 Seconds...

play fullscreen
1 / 50

PWM Pulse Width Modulation - PowerPoint PPT Presentation

  • Uploaded on

PWM Pulse Width Modulation. ME 4447/6405 November 3 rd , 2011. Gregory Bonisteel Bryan Oneal Jieun Yoo. Outline. Introduction and Definition Duty Cycle Types of PWM Method of Generation Implementation on the HCS12 Applications of PWM Choosing PWM Frequency. Presenter: Jieun Yoo.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'PWM Pulse Width Modulation' - melodie

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
pwm pulse width modulation

PWM Pulse Width Modulation

ME 4447/6405

November 3rd, 2011

Gregory Bonisteel

Bryan Oneal


  • Introduction and Definition
    • Duty Cycle
  • Types of PWM
  • Method of Generation
  • Implementation on the HCS12
  • Applications of PWM
  • Choosing PWM Frequency
presenter jieun yoo
Presenter: JieunYoo
  • Introduction and Definition
    • Duty Cycle
  • Types of PWM
  • Method of Generation
  • Implementation on the HCS12
  • Applications of PWM
  • Choosing PWM Frequency
  • Pulse Width Modulation (PWM) is the way of controlling a digital signal simulating an analog signal.
  • The on-off behavior changes the average power of signal.
  • Output signal alternates between on and off with in specified period.
duty cycle
Duty Cycle

A percentage measurement of how long the signal stays on.




Duty Cycle (D)


Period (T)

duty cycle6
Duty Cycle
  • Duty Cycle:
  • Average signal :

(Usually, VL is taken as zero volts for simplicity.)




Duty Cycle (D)


Period (T)

duty cycle characteristic

Presented by: Bryan O’Neal

Duty Cycle Characteristic
  • The average value of a PWM signal increases linearly with the duty cycle
types of pwm lead edge modulation
Types of PWM – Lead Edge Modulation
  • The lead edge is fixed at the lead edge of the window and the trailing edge is modulated.
types of pwm trail edge modulation
Types of PWM – Trail Edge Modulation
  • The trail edge is fixed and the lead edge is modulated.
types of pwm centered pulses
Types of PWM – Centered Pulses
  • The pulse center is fixed in the center of the time window and both edges of pulse are modulated
analog generation of pwm
Analog Generation of PWM
  • Analog PWM signals can be made by combining a saw- tooth waveform and a sinusoid

PWM output is formed by the intersection of the saw-tooth wave and sinusoid

presenter gregory bonisteel
Presenter: Gregory Bonisteel
  • Introduction and Definition
    • Duty Cycle
  • Types of PWM
  • Method of Generation
  • Implementation on the HCS12
  • Applications of PWM
  • Choosing PWM Frequency
pulse width modulator pwm8b6cv1
Pulse Width Modulator: PWM8B6CV1
  • Similar to output compare
  • Port P
  • Six 8-bit channels or three 16-bit channels for greater resolution
  • Four clock sources (A, B, SA and SB) provide for a wide range of frequencies
  • Emergency shutdown
  • Modes of operation
    • Wait mode
    • Freeze mode
pwm block diagram
PWM Block Diagram
  • Each Channel has;
    • Enable/disable switch
    • Dedicated counter
    • Programmable period and duty cycle
    • Programmable center or left aligned
    • Programmable clock select logic
    • Software selectable duty pulse polarity
pwm enable register
PWM Enable Register
  • Located at $00E0
  • Set PWMEx to 0 to disable the channel
  • Set PWMEx to 1 to enable it
  • Note:
    • Channel is activated when bit is set
    • If 16-bit resolution used, then PWME4/2/0 are deactivated
pwm polarity register
PWM Polarity Register
  • Located at $00E1
  • Set PPOLx to 0, signal goes from low to high
  • Set PPOLx to 1, signal goes from high to low
pwm clock select register
PWM Clock Select Register
  • Located at $00E2
  • Set PCLK5/4/1/0 to 0 to use clock A
  • Set PCLK5/4/1/0 to 1 to use clock SA
  • Set PCLK3/2 to 0 to use clock B
  • Set PCLK3/2 to 1 to use clock SB
pwm prescale clock select register
PWM Prescale Clock Select Register
  • Located at $00E3
  • Used to prescale clocks A and B
pwm center align enable register
PWM Center Align Enable Register
  • Located at $00E4
  • Set CAEx to 0 for left align signal
  • Set CAEx to 1 for center align signal
  • Note:
    • Can only be set when channel is disabled
    • Signal changes when counter is equal to period register
left vs center aligned
Left vs. Center Aligned
  • In the left aligned mode, the PWM counter is a up-counter and rests to zero when it overflows
  • In the center aligned mode, the PWM counter goes from a down-count to a up-count to down-count, etc.
pwm control register
PWM Control Register
  • Located at $00E5
  • Set CONxy to 0 to keep PWM channels separate (8-bit)
  • Set CONxy to 1 to concatenate PWM channels x and y together (16-bit).
  • x becomes the high byte and y becomes the low byte
  • Channel y determines the configuration
  • Bits PSWAI and PFRZ set either wait or freeze mode
  • Note
    • Changes only occur when channels are disabled
pwm scale a register
PWM Scale A Register
  • Located at $00E8
  • Programmable scaling of clock A to generate clock SA
  • Note
pwm scale b register
PWM Scale B Register
  • Located at $00E9
  • Programmable scaling of clock B to generate clock SB
  • Note
pwm channel counter register
PWM Channel Counter Register
  • Located at $00EC through $00F1
  • One per channel
  • It tracks the cycle counts
  • When channel is enabled up-count starts
  • Note
    • Writing to counter while a channel is enable can cause irregular PWM cycles
pwm channel period register
PWM Channel Period Register
  • Located at $00F2 through $00F7
  • Store a hexadecimal value to limit maximum value of counter
  • Changes occur when one of following happen
    • Current period ends
    • Counter is written to
    • Channel is disabled
pwm channel duty register
PWM Channel Duty Register
  • Located at $00F8 through $00FD
  • Store a hexadecimal value to control when signal changes
  • Changes occur when:
    • Current period ends
    • Counter written to
    • Channel is disabled
example configuring pwm channel 0
Example: Configuring PWM Channel 0
  • Frequency: 40 kHz
  • Period = 1/Frequency = 25μs
  • Duty Cycle = 50%
  • Positive polarity
  • Left aligned output
  • To choose clock source, consider resolution of PWM
    • Number of distinct duty cycle values is equal to the PWM period in clock cycles
  • Bus clock period is 125 ns  200*125ns = 25μs
  • Since 200 < 255, we can use clock A with a prescaler=1

Example: Configuring PWM Channel 0

PWMCLK = #$00 - PWM0 uses clock A

PWMPRCLK = #$00 - Prescaler = 1

PWMPOL = #$01 - Positive polarity

PWMCAE = #$00 - Left aligned

PWMPER0 = #$C8 - Period = 200

PWMDTY0 = #$64 - Duty cycle = 100/200 = 50%

PWME = #$01 - Enable PWM channel 0


Assembly Code







ORG $1000

LDAA #$00


STAA PWMPRCLK ;Clock A prescaler = 1

STAA PWMCAE ;Left aligned output

LDAA #$01

STAA PWMPOL ;Positive polarity (starts high)


STAA PWMPER0 ;Period = 200 (25μs)

LDAA #$64 ;100 decimal

STAA PWMDTY0 ;Duty cycle = 50% (100/200)

LDAA #$01

STAA PWME ;Enable PWM Channel 0



Configuring Channel 0 in C Code

// Setup chip in expanded mode

MISC = 0x03;

PEAR = 0x0C;

MODE = 0xE2;

TERMIO_Init(); // Init SCI Subsystem


PWMPER0 = 200; // set PWM period (125 ns * 200 = 25 us = 40 kHz)

PWMDTY0 = 100; // set initial duty cycle (100/200 = 50%)

// setup PWM system

PWMCLK_PCLK0 = 0; // set source to clock A

PWMPRCLK_PCKA0 = 0; // set prescaler for clock A = 1, so clock A = bus clock



PWMCAE_CAE0 = 0; // "left aligned" output

PWMPOL_PPOL0 = 1; // set duty cycle to indicate % of high time

PWMCNT0 = 0; // write to counter to make changes take effect

PWME_PWME0 = 1; // enable PWM 0

presenter bryan oneal
Presenter: Bryan Oneal
  • Introduction and Definition
    • Duty Cycle
  • Types of PWM
  • Method of Generation
  • Implementation on the HCS12
  • Applications of PWM
  • Choosing PWM Frequency
pwm video into to applications
PWM Video Into to Applications
  • You Tube search: PWM Tutorial


Click Link


Motivation for PWM

  • In the past, motors were controlled at intermediate speeds by using variable resistors to lower delivered power
    • For example, a variable resister located in the foot pedal and connected in series with the motor of a sewing machine was used to control its speed.
    • This method was inefficient
  • PWM provided a great way to have compact and low cost means for applying adjustable power for many devices.
pwm applications
PWM Applications

Use as ADC

DC Motors


Voltage regulation

RC devices

Audio/Video effects

Power delivery



PWM used with D/A conversion

  • commonly used in toys
  • lowpass filter smooths out transients from harmonic effects
  • frequency values of harmonics doesn’t change, but the amplitude does, which adjusts the analog output signal
application to dc motors
Application to DC Motors
  • Voltage supplied is directly proportional to the duty cycle
  • Ability to control the speed of the motor via the duty cycle


Can be used in regulating room temperature. A PC can sense the current temperature (using an analog-to-digital converter) and then automatically increase/decrease the fan's speed accordingly.


PWM used to transmit data in telecommunications

  • clock signal is found “inside” PWM signal
  • more resistant to noise effects than binary data alone
  • effective at data transmission over long distance transmission lines
  • The widths of the pulses correspond to specific data values encoded at one end and decoded at the other.
  • Pulses of various lengths (the information itself) will be sent at regular intervals (the carrier frequency of the modulation).
using pwm to generate an analog voltage level
Using PWM to generate an analog voltage level
  • Any shape waveform can be created
  • PWM frequency should be much higher than the frequency of waveform generated

RC Devices

Transmitters send PWM signals to the receivers on board of Radio controlled devices for specific control.

audio devices
Audio devices
  • Used in audio amplifiers to generate output signals for cellphone speakers to high-power stereo systems
  • Produce less heat than traditional analog amplifiers
  • Saving energy. Critical for hand held electronics.
  • Gives a sound effect similar to chorus when used in audio circuit.
video devices
Video devices
  • PWM dimming provides superior color quality in LED video display
  • With a 12 bits resolution

the TLC5940 PWM dimming can

provide up to 68.7 million colors

to a pixel.

power delivery
Power delivery
  • effective at data transmission over long distance transmission line
  • Power transfer: PWM used to reduce the total power given to a load without relying on resistive losses

Example: PWM with 555 Timer

Potentiometer is used to adjust the duty cycle


Frequency of the PWM Signal

Upper Limits

Lower Limits

Must be at least 10 times higher than the control system frequency

Higher than 20kHz – audible frequency of sounds to avoid annoying sound disturbances.

If too low the motor is pulsed, not continuous, because the motor’s inductance can not maintain the current

Inverse of frequency should be much less than the motor/load time constant

Higher error from ripple voltages

If too high the inductance of the motor causes the current drawn to be unstable

MOSFET transistor generates heat during switching

Limited by resolution of controller

Eddy currents generated in electromagnetic coils which lead to adverse heating

Heat losses in electromagnetic materials is proportional to frequency squared

choosing your pwm frequency
Choosing your PWM frequency

Input signal (PWM)

Output signal (actuator response)

matlab can do pwm
Matlab can do PWM!

The procedure works similar to the generation of analog PWM using a sinusoid and saw-tooth wave


Where can I buy a PWM controller?

- Texas Instruments

- Digikey

- Mouser Electronics

- Critical Velocity Motor Control




Texas Instruments TAS5508B

8-Channel Digital Audio PWM Processor

64 pin chip, max 192 kHz frequency


18 kHz frequency

Continuous 28 amps


120 amps, used for hybrid vehicles