Ir ao conteúdo
  • Cadastre-se

Heriko

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

1
  1. Heriko

    motor biesteper

    Galera estou precisando de ajuda com um trabalho, já fiz o programa mais de 100 vezes e da errado não sei mais o que fazer! será que poderiam me ajudar? Por favor . //Declaração de Bibliotecas //Declaração de Variaveis //LETCH int D0=10; int D1=11; int D2=12; int D3=13; int LEU1=3; //****// int BOTAO=2; int LDR=A0; //Atribuido o pino PC5(analogica)ao LDR int D4=4; int D5=5; int D6=6; int D7=7; int EN=8; int RS=9; int SAIDA = 0; int QSAIDA = 13; int i = 0; int x = 0; int a = 0; int VetPin[]={D0, D1, D2, D3, D4, D5, D6, D7, EN, RS, LEU1, LDR}; int Horario[] = {0x53,0x35, 0x45,0x54, 0x4E,0xE4, 0x54,0x45, 0x49,0x94, 0x44,0x44, 0x4F,0xF4, 0x20,0x02, 0x48,0x84, 0x4F,0xF4, 0x52,0x25, 0x41,0x14, 0x52,0x25, 0x49,0x94, 0x4F,0xF4}; // S E N T I D O H O R A R I O int AntHora[] = {0x53,0x35, 0x45,0x54, 0x4E,0xE4, 0x54,0x45, 0x49,0x94, 0x44,0x44, 0x4F,0xF4, 0x20,0x02, 0x41,0x14, 0x4E,0xE4, 0x54,0x45, 0x49,0x94, 0x48,0x84, 0x4F,0xF4, 0x52,0x25, 0x41,0x14}; // S E N T I D O A N T I H O R A R int CONTADOR = 32; int SENTIDO=1; int HOR[]={B0001,B0010,B0100,B1000}; //Valor que liga a Bobina 1 int ANT[]={B1000,B0100,B0010,B0001}; //Valor que liga a Bobina 4 float Motor = 1.8; void setup() { for(SAIDA = 0; SAIDA < QSAIDA; SAIDA++) pinMode (VetPin[SAIDA],OUTPUT); pinMode (BOTAO, INPUT); INILCD(); } void loop() { SENTIDO = digitalRead (BOTAO); if (SENTIDO == HIGH) { Horario[x]; clrlcd(); for(x = 0; x < CONTADOR; x++) { PORTD = Horario[x]; wrlcd(); delay(2); } for (x = 0; x < 50; x++) { horario(); PORTB=HOR[x]; wrU1(); x = x * 4; delay (100); } } else { clrlcd(); for (x = 0; x < CONTADOR; x++) { PORTD = AntHora[x]; wrlcd(); delay (2); } for (x = 0; x < 50; x++) { antihorario(); PORTB = ANT [x]; wrU1(); x = x / 4; delay (100); } } } void INILCD() { PORTD = 0x28; wrlcd(); PORTD = 0x82; wrlcd(); PORTD = 0x33; wrlcd(); PORTD = 0x33; wrlcd(); PORTD = 0x32; wrlcd(); PORTD = 0x23; wrlcd(); PORTD = 0x0E; wrlcd(); PORTD = 0xE0; wrlcd(); PORTD = 0x01; wrlcd(); PORTD = 0x10; wrlcd(); } void wrU1() { digitalWrite (LEU1, HIGH); digitalWrite (LEU1, LOW); delay (2); } void wrlcd() { digitalWrite (EN, HIGH); digitalWrite (EN, LOW); delay (2); } void clrlcd() { digitalWrite (EN, LOW); delay (2); digitalWrite (RS, LOW); PORTD = 0x28; wrlcd(); PORTD = 0x82; wrlcd(); digitalWrite (RS, HIGH); } void horario() { for (x = 0; x < 4; x++) // { wrU1(); digitalWrite (D0, LOW); digitalWrite (D1, HIGH); digitalWrite (D2, LOW); digitalWrite (D3, HIGH); delay (250); wrU1(); digitalWrite (D0, LOW); digitalWrite (D1, HIGH); digitalWrite (D2, HIGH); digitalWrite (D3, LOW); delay (250); wrU1(); digitalWrite (D0, HIGH); digitalWrite (D1, LOW); digitalWrite (D2, HIGH); digitalWrite (D3, LOW); delay (250); wrU1(); digitalWrite (D0, HIGH); digitalWrite (D1, LOW); digitalWrite (D2, LOW); digitalWrite (D3, HIGH); delay(250); //} } void antihorario() { for (x = 0; x < 4; x++) //{ wrU1(); digitalWrite (D0, HIGH); digitalWrite (D1, LOW); digitalWrite (D2, LOW); digitalWrite (D3, HIGH); delay (250); wrU1(); digitalWrite (D0, HIGH); digitalWrite (D1, LOW); digitalWrite (D2, HIGH); digitalWrite (D3, LOW); delay (250); wrU1(); digitalWrite (D0, LOW); digitalWrite (D1, HIGH); digitalWrite (D2, HIGH); digitalWrite (D3, LOW); delay (250); wrU1(); digitalWrite (D0, LOW); digitalWrite (D1, HIGH); digitalWrite (D2, LOW); digitalWrite (D3, HIGH); delay(250); //} }

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...