PWM with L298 for two DC Motors.

Dependencies:   mbed FPointer TextLCD1 keypad

Fork of L298 by Juan Carlos Suárez Barón

Committer:
juanitoinig84
Date:
Sat Jun 25 18:33:26 2016 +0000
Revision:
3:5d21835b1f70
Parent:
2:2e93c305bb62
Version 2;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
satelite 0:f3cd2e9ab89b 1 #include "mbed.h"
satelite 0:f3cd2e9ab89b 2
juanitoinig84 2:2e93c305bb62 3
juanitoinig84 2:2e93c305bb62 4 Serial pc(USBTX,USBRX); // tx,rx
satelite 0:f3cd2e9ab89b 5 DigitalOut in1(PTC3);
satelite 0:f3cd2e9ab89b 6 DigitalOut in2(PTC2);
satelite 0:f3cd2e9ab89b 7 PwmOut ena(PTA2);
satelite 0:f3cd2e9ab89b 8
juanitoinig84 1:c83539e7f8a0 9 DigitalOut in3(PTD1);
juanitoinig84 1:c83539e7f8a0 10 DigitalOut in4(PTD2);
juanitoinig84 1:c83539e7f8a0 11 PwmOut enb(PTD3);
juanitoinig84 1:c83539e7f8a0 12
juanitoinig84 2:2e93c305bb62 13 void rxInterrupt(){
juanitoinig84 2:2e93c305bb62 14 }
satelite 0:f3cd2e9ab89b 15 int main()
juanitoinig84 2:2e93c305bb62 16
satelite 0:f3cd2e9ab89b 17 {
juanitoinig84 2:2e93c305bb62 18 pc.baud(115200);
juanitoinig84 3:5d21835b1f70 19 ena.period_us(50);
juanitoinig84 2:2e93c305bb62 20 pc.attach(&rxInterrupt);
satelite 0:f3cd2e9ab89b 21 while (true) {
juanitoinig84 1:c83539e7f8a0 22 /////******MOTOR 1****////
satelite 0:f3cd2e9ab89b 23 // Detiene el motor
satelite 0:f3cd2e9ab89b 24 in1 = 0;
satelite 0:f3cd2e9ab89b 25 in2 = 0;
juanitoinig84 3:5d21835b1f70 26 wait(2.0f);
juanitoinig84 3:5d21835b1f70 27 //Gira en sentido 1 con velocidad 25%
juanitoinig84 3:5d21835b1f70 28 in1 = 1;
juanitoinig84 3:5d21835b1f70 29 in2 = 0;
juanitoinig84 3:5d21835b1f70 30 ena.write(0.25f);
juanitoinig84 3:5d21835b1f70 31 wait(2.0f);
satelite 0:f3cd2e9ab89b 32 // Gira en sentido 1 con velocidad 50%
satelite 0:f3cd2e9ab89b 33 in1 = 1;
satelite 0:f3cd2e9ab89b 34 in2 = 0;
satelite 0:f3cd2e9ab89b 35 ena.write(0.50f);
juanitoinig84 3:5d21835b1f70 36 wait(2.0f);
juanitoinig84 3:5d21835b1f70 37 // Gira en sentido 1 con velocidad 75%
juanitoinig84 3:5d21835b1f70 38 in1 = 1;
juanitoinig84 3:5d21835b1f70 39 in2 = 0;
juanitoinig84 3:5d21835b1f70 40 ena.write(0.75f);
juanitoinig84 3:5d21835b1f70 41 wait(2.0f);
juanitoinig84 3:5d21835b1f70 42
juanitoinig84 3:5d21835b1f70 43 // Gira en sentido 1 con velocidad 100%
juanitoinig84 3:5d21835b1f70 44 in1 = 1;
juanitoinig84 3:5d21835b1f70 45 in2 = 0;
juanitoinig84 3:5d21835b1f70 46 ena.write(1.00f);
juanitoinig84 3:5d21835b1f70 47 wait(2.0f);
juanitoinig84 3:5d21835b1f70 48
juanitoinig84 3:5d21835b1f70 49 // Gira en sentido 2 con velocidad 75%
juanitoinig84 3:5d21835b1f70 50 /*in1 = 0;
juanitoinig84 3:5d21835b1f70 51 in2 = 1;
juanitoinig84 3:5d21835b1f70 52 ena.write(0.75f);
juanitoinig84 3:5d21835b1f70 53 wait(2.0f);
satelite 0:f3cd2e9ab89b 54 // Gira en sentido 2 con velocidad 100%
juanitoinig84 3:5d21835b1f70 55 in1 = 0;
satelite 0:f3cd2e9ab89b 56 in2 = 1;
satelite 0:f3cd2e9ab89b 57 ena.write(1.00f);
juanitoinig84 3:5d21835b1f70 58 wait(1.0f);*/
juanitoinig84 1:c83539e7f8a0 59
juanitoinig84 1:c83539e7f8a0 60 /////******MOTOR 2****////
juanitoinig84 2:2e93c305bb62 61 /* in3 = 0;
juanitoinig84 1:c83539e7f8a0 62 in4 = 0;
juanitoinig84 1:c83539e7f8a0 63 wait(0.5f);
juanitoinig84 1:c83539e7f8a0 64 // Gira en sentido 1 con velocidad 50%
juanitoinig84 1:c83539e7f8a0 65 in3 = 1;
juanitoinig84 1:c83539e7f8a0 66 in4 = 0;
juanitoinig84 3:5d21835b1f70 67 enb.write(0.50f);
juanitoinig84 1:c83539e7f8a0 68 wait(0.5f);
juanitoinig84 1:c83539e7f8a0 69 // Gira en sentido 2 con velocidad 100%
juanitoinig84 1:c83539e7f8a0 70 in3 = 0;
juanitoinig84 1:c83539e7f8a0 71 in4 = 1;
juanitoinig84 3:5d21835b1f70 72 enb.write(1.00f);
juanitoinig84 3:5d21835b1f70 73 wait(0.5f);
juanitoinig84 3:5d21835b1f70 74 pc.printf("MOTOR Funcionando\n");*/
juanitoinig84 2:2e93c305bb62 75
satelite 0:f3cd2e9ab89b 76 }
satelite 0:f3cd2e9ab89b 77 }