04-06 SoftwarePWM
From Manuals
This example controls the Servo using a software PWM. The servo motor is a HiTEC HS0422.
The signals used for this example are listed below:
| Signal | LPC4330 PIN NAME | BAM210E | BAM210 | BAM200E | BAM200 | Used for |
| p21 | P6_5 | J9-1 | J9-1 | S2-5 | S2-5 | Servo Control Signal |
The following schematic can be used to build the circuit with a BAM210E or BAM210.
/*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);
}
}
The following image shows the built circuit on a BAM210E.


