Nos informe porque este programa é inadequado. Por favor, não envie várias vezes.

Razão
Mensagem

Enviar    Cancelar

  • Use o bom senso
  • Seja educado. Trate os outros como você gostaria de ser tratado
  • Você só pode usar até 3.000 caracteres por comentário
  • Você não pode comentar o mesmo programa dentro do período de 60 segundos
  • Você não pode postar o mesmo comentário em vários programas.
  • Existe um limite de 100 comentários por usuário no período de 24 horas.

Fechar

N2Conhecer20160927

de rudi |  v3 |  0 |  0 |  2090 |  7 
Acesse sua conta para comentar e baixar este programa.

Compartilhado há 7 anos e 6 meses atrás - Última modificação em 27/09/2016
Alguns direitos reservados
// n2conhecer20160927.c - Criado pelo studio UNO 2.3
// 27 September 2016 1:47:53 pm
 
#include <uno.h>
 
 
// Declaracao das Variaveis
unsigned int Angulo;
unsigned int Distancia;
int EncDir;
int EncEsq;
unsigned int Graus;
unsigned char SegIr1;
unsigned char SegIr2;
unsigned char SegIr3;
unsigned char SegIr4;
unsigned char SegIr5;
unsigned int Tempo;
int Velocidade;
 
// Prototipos
void Freio(void); 
void ZeraEncoders(void); 
void CurvaEsquerda(void); 
void Resgate(void); 
void DiminuiVel(void); 
void EmFrente(void); 
void CurvaDireita(void); 
void LeEncoders(void); 
void Reto(void); 
 
//Funcoes do Usuario
void Freio(void) 
{
     __motor_curso(__REVERSE);
     __delay(30);
     __motor_curso(__STOP);
}
 
void ZeraEncoders(void) 
{
     __SmartSensorCmd(1, 1, 9, 0);
     __SmartSensorCmd(1, 2, 9, 0);
     EncEsq = 0;
     EncDir = 0;
}
 
void CurvaEsquerda(void) 
{
     __motor(1, -550);
     __motor(2, Velocidade);
}
 
void Resgate(void) 
{
     bitset(__TRIS_PWM, __DIGITAL1);
     __PWM1 = 180;
     __motor_curso(__FORWARD);
     __timer_sistema = 0;
     while(!(__analog_in(0) > 150)) { __delay(10); }
     Tempo = __timer_sistema;
     freio();
     __PWM1 = 40;
     __motor_curso(__BACKWARD);
     __delay(Tempo);
     freio();
     __PWM1 = 180;
}
 
void DiminuiVel(void) 
{
     __SmartSensorCmd(1, 1, 8, 0);
     ZeraEncoders();
     Velocidade = 1023;
     while(TRUE) {
         Reto();
         if ((__UltrasonicGetValueMM(1) < 250)) {
             __motor_curso(__LEFT_ROTATE);
             __delay(1200);
             freio();
             ZeraEncoders();
         }
     }
 
}
 
void EmFrente(void) 
{
     ZeraEncoders();
     EncDir = 0;
     while(TRUE) {
         if (__ENTER_KEY) {
             Velocidade = 0;
         }
         if (__UP_KEY) {
             Velocidade = 1023;
         }
         if (__LEFT_KEY) {
             Velocidade = 899;
         }
         if (__RIGHT_KEY) {
             Velocidade = 775;
         }
         if (__BOTTOM_KEY) {
             Velocidade = 650;
         }
         Reto();
     }
 
}
 
void CurvaDireita(void) 
{
     __motor(1, Velocidade);
     __motor(2, -550);
}
 
void LeEncoders(void) 
{
     EncEsq = __EncoderGetValue(1);
     EncDir = __EncoderGetValue(2);
     __delay(5);
}
 
void Reto(void) 
{
     LeEncoders();
     if ((EncEsq > EncDir)) {
         __motor(1, 0);
         __motor(2, Velocidade);
     }
     if ((EncEsq < EncDir)) {
         __motor(1, Velocidade);
         __motor(2, 0);
     }
     if ((EncEsq == EncDir)) {
         __motor(1, Velocidade);
         __motor(2, Velocidade);
     }
 
}
 
//Funcao Principal
void main(void)
{
     __inicializa;
     Velocidade = 900;
     while(TRUE) {
         SegIr2 = __SeguidorGetAnalog(1, 2);
         SegIr3 = __SeguidorGetAnalog(1, 3);
         SegIr4 = __SeguidorGetAnalog(1, 4);
         if ((SegIr2 < 25)) {
             CurvaEsquerda();
         }
         if ((SegIr3 < 25)) {
             __motor_curso(__FORWARD);
         }
         if ((SegIr4 < 25)) {
             CurvaDireita();
         }
     }
 
     while(TRUE) { }
}

Descrição

Início da utilização da Garra

Nenhum Comentário

Download


Entre para Baixar

Favorito de


Ninguém marcou este projeto como favorito ainda.

Projetos de rudi


 4    2603   43 
 1    1902   8 
 0    1914   1 
 0    2380   18 
 0    2213   7