Simple PWM for motor control

Dependencies:   mbed

This program is for motor control with Arduino motor shield and LCP 1768.

For motor control with arduino motor shield, it needs direction signal and brake signal. Maybe brake signal is optional. So, the code use three pins, direction(gpio), brake(gpio) and PWM output.

- Schematic /media/uploads/hjjeon/lpc1768_motor_shield_schem.jpg

main.cpp

Committer:
hjjeon
Date:
2014-11-18
Revision:
2:4eb08f46fc91
Parent:
1:4f47e58cd882

File content as of revision 2:4eb08f46fc91:

#include "mbed.h"

#define FORWARD     0
#define BACKWARD    1


int main() {
        
    Serial pc(USBTX, USBRX);
    pc.baud(115200);
    
    // This program is for NXP LPC1768. If you use other platform, change pin number!! ============
    PwmOut mypwm(p21);// NXP 1768 platform PWM output
    DigitalOut direction(p5);// NXP 1768 platform GPIO pin #5 output
    DigitalOut brake(p6);// NXP 1768 platform GPIO pin #6 output
    DigitalOut myled(LED1);//For LED blinking.
    //=============================================================================================
    
    direction = FORWARD;// FORWARD == 0;.
    
    while(1) {
        myled = !myled;
        mypwm = mypwm + 0.05;// 0.05 is 5% duty pulse width
        wait(3);
        if( mypwm >= 1)
        {
            brake = 1; //stop
        }
    }
}