Ir ao conteúdo

ivan nunes

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

0
  1. fiz o seguinte codigo mas nao tenho como testar. e sei que deve ter farios problemas. espero que possam me ajudar a melhorar essa logica. // PIC16F628A #define s1 RA1 // SENSOR DA ESQUERDA #define s2 RA2 // SENSOR DA ESQUERDA DO CENTRO #define s3 RA3 // SENSOR DA DIREITA DO CENTRO #define s4 RA4 // SENSOR DA DIREITA // NA PONTE H L293D #define m1_in1 RB1 // MOTOR ESUERDO SENTIDO 1 #define m1_in2 RB2 // MOTOR ESQUERDO SENTIDO 2 #define m2_in3 RB3 // MOTOR DIREITO SENTIDO 2 #define m2_in4 RB4 // MOTOR DIREITO SENTIDO 1 #define _XTAL_FREQ 4000000 void configura () { INTCON = 0; CMCON = 0x07; OPTION_REG = 0x80; TRISA = 0b1111111; TRISB = 0; PORTB = 0; } void main () { configura(); while(1) { // QUANDO SO O SENSOR s1(SENSOR DA ESQUERDA) ESTA NA FAIXA // VIRA PARA ESQUERDA if(s1==0) m1_in1 = 1; else m1_in1 = 0; // QUANDO SO O SENSOR s4 (SENSOR DA DIREITA) ESTA NA FAIXA // VIRA PARA DIREIA if(s4==0) m2_in4 = 1; else m2_in4 = 0; // QUANDO OS SENSORES s2 E s3 estão NA FAIXA // SITUACAO EM QUE A FAIXA ESTA NO CENTRO // SEGUE EM FRENTE if(s2==0&&s3==0){ m1_in1 = 1; // MOTOR ESUQERDO SENTIDO 1 m2_in4 = 1; // MOTOR DIREITO SENTIDO 1 } // QUANDO s1 E s4 estão NA FAIXA // SITUACAO QUE E POSSIVEL EM UM CRUZAMENTO DE FAIXAS // SEGUE EM FRENTE if(s1==0&&s4==0){ m1_in1 = 1; // MOTOR ESQUERDO SENTIDO 1 m2_in4 = 1; // MOTOR DIREITO SENTIDO 1 } } }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...