SEARCH
TOOLBOX
LANGUAGES
modified on 14 August 2014 at 15:11 ••• 19,653 views

04-06 SoftwarePWM

From Manuals

Revision as of 15:11, 14 August 2014 by Support (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search
/*Program Example 4.6: Software generated PWM. 2 PWM values generated in turn, with full on and off included for comparison.
                                                                             */
#include "mbed.h"
DigitalOut motor(p21);
int i;

int main()
{
   while(1) {
       motor = 0;                    //motor switched off for 5 secs
       wait (5);
       for (i=0; i<5000; i=i+1) {    //5000 PWM cycles, low duty cycle
           motor = 1;
           wait_us(400);               //output high for 400us
           motor = 0;
           wait_us(600);               //output low for 600us
       }
       for (i=0; i<5000; i=i+1) {    //5000 PWM cycles, high duty cycle
           motor = 1;
           wait_us(800);               //output high for 800us
           motor = 0;
           wait_us(200);               //output low for 200us
       }
       motor = 1;                    //motor switched fully on for 5 secs
       wait (5);
   }
}


BAM210
Schematic for example 04-06