// vinirobotica.c - Criado pelo studio UNO 2.3
// 27 November 2017 5:25:37 pm
#include <uno.h>
// Declaracao das Variaveis
int dir;
unsigned char direita;
int esq;
unsigned char esquerda;
unsigned char garra;
unsigned char lado;
unsigned char meio;
int velo;
// Prototipos
void frente reto(void);
void frentereto(void);
void pessoaencontrada(void);
//Funcoes do Usuario
void frente reto(void)
{
__motor_curso(__FORWARD);
__delay(70);
__motor_curso(__STOP);
}
void frentereto(void)
{
dir = __EncoderGetValue(1);
esq = __EncoderGetValue(2);
if ((esq == dir)) {
__motor(1, velo);
__motor(2, 0);
}
if ((esq > dir)) {
__motor(1, velo);
__motor(2, 0);
}
if ((esq < dir)) {
__motor(2, velo);
__motor(1, 0);
}
}
void pessoaencontrada(void)
{
__motor_curso(__BACKWARD);
__delay(50);
__motor_curso(__STOP);
__PWM1 = 35;
garra = 35;
__delay(1000);
lado = 1;
__motor_curso(__RIGHT_TURN);
__delay(50);
}
//Funcao Principal
void main(void)
{
__inicializa;
__backlight(__ON);
__lcd_puts("Robo A");
__SmartSensorCmd(1, 1, 8, 0);
__SmartSensorCmd(1, 1, 9, 0);
__SmartSensorCmd(1, 2, 9, 0);
__timer_sistema = 0;
while((__timer_sistema < 10000)) {
if ((__timer_sistema < (esq * 31))) {
velo = 850;
}
else {
velo = 1023;
}
frentereto();
}
__motor_curso(__REVERSE);
__delay(70);
__motor_curso(__STOP);
while(TRUE) { }
}