Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp
- Committer:
- Marcelocostanzo
- Date:
- 2018-10-05
- Revision:
- 0:0d443d0229c9
- Child:
- 1:fe4f6f2d9ca6
File content as of revision 0:0d443d0229c9:
#include "mbed.h"
#define corte 2800
AnalogIn S0(A3);
AnalogIn S1(A5);
DigitalIn BT(BUTTON1);
DigitalOut led(LED1);
DigitalOut IN1B(PA_0);
DigitalOut IN2B(PA_1);
DigitalOut IN1A(PB_4);
DigitalOut IN2A(PB_5);
DigitalOut ENA(PA_10);
DigitalOut ENB(PC_1);
Serial pc(USBTX, USBRX); // tx, rx
int main()
{
float S0_val = 0;
float S1_val = 0;
bool flag = 0;
ENA = 1;
ENB = 1;
while(1)
{
S0_val = S0.read();
S1_val = S1.read();
S0_val = S0_val * 3300; // Converts value in the 0V-3.3V range
S1_val = S1_val * 3300; // Converts value in the 0V-3.3V range
// Display values
printf("measure S0 = %.0f mV\n", S0_val);
printf("measure S1 = %.0f mV\n", S1_val);
if(BT == 0)
{
wait(0.1);
if(BT == 0 && flag == 0)
{
flag = 1;
led = 1;
wait(0.5);
}
}
if(flag == 0)
led = 0;
if(flag == 1)
{
printf("ACIONADO\n");
if((S0_val > corte) && (S1_val > corte))
{
IN2A = 0;
IN2B = 0;
IN1A = 0;
IN1B = 0;
}
if((S0_val < corte) && (S1_val < corte))
{
IN2A = 1;
IN2B = 0;
IN1A = 0;
IN1B = 1;
}
if((S0_val < corte) && (S1_val > corte))
{
IN2A = 0;
IN2B = 0;
IN1A = 0;
IN1B = 1;
}
if((S0_val > corte) && (S1_val < corte))
{
IN2A = 1;
IN2B = 0;
IN1A = 0;
IN1B = 0;
}
}
if(BT == 0)
{
wait(0.1);
if(BT == 0 && flag == 1)
{
flag = 0;
printf("DESACIONADO\n");
ENA = 0;
ENB = 0;
wait(0.5);
}
}
//wait(0.2); // 1 second
}
}