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

Software Multifunções UNO Version 5.0

de C2C01012 |  v1 |  0 |  0 |  1392 |  2 
Acesse sua conta para comentar e baixar este programa.

Compartilhado há 5 anos e 8 meses atrás
Alguns direitos reservados
// software multifunções uno version 5.c - Criado pelo
// studio UNO 2.3
// 29 October 2016 12:20:26 am
 
#include <uno.h>
 
 
// Declaracao das Variaveis
unsigned char aux;
unsigned int batidas;
int contador;
int jogo;
unsigned char lado;
char resultado;
unsigned char t;
 
// Prototipos
void esquerda(void); 
void 5(void); 
void 5r(void); 
void 6(void); 
void 7(void); 
void 4(void); 
void 3r(void); 
void 6r(void); 
void 4r(void); 
void 3(void); 
void 1r(void); 
void gins(void); 
void 2(void); 
void errou(void); 
void CONTADOR DE DEDOS(void); 
void inicial(void); 
void 1(void); 
void Aut(void); 
void 2r(void); 
void direita(void); 
void Dança(void); 
 
//Funcoes do Usuario
// Status do Procedimento:
// Pronto
void esquerda(void) 
{
     __motor_curso(__BACKWARD);
     __delay(1000);
     __motor_curso(__LEFT_ROTATE);
     __delay(750);
     return;
}
 
void 5(void) 
{
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     __delay(500);
     __digital_out(3, 1);
     __delay(500);
     __digital_out(3, 0);
     __delay(500);
     __digital_out(2, 1);
     __delay(500);
     __digital_out(2, 0);
     __delay(500);
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     __delay(500);
     __digital_out(3, 1);
     __delay(500);
     __digital_out(3, 0);
     resultado++;
     __delay(500);
     5r();
}
 
void 5r(void) 
{
     if (__LEFT_KEY) {
         if (__RIGHT_KEY) {
             if (__ENTER_KEY) {
                 if (__LEFT_KEY) {
                     if (__LEFT_KEY) {
                         6();
                     }
                     else {
                         errou();
                     }
                 }
                 else {
                     errou();
                 }
             }
             else {
                 errou();
             }
         }
         else {
             errou();
         }
     }
     else {
         errou();
     }
 
}
 
void 6(void) 
{
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     __delay(500);
     __digital_out(3, 1);
     __delay(500);
     __digital_out(3, 0);
     __delay(500);
     __digital_out(2, 1);
     __delay(500);
     __digital_out(2, 0);
     __delay(500);
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     __delay(500);
     __digital_out(3, 1);
     __delay(500);
     __digital_out(3, 0);
     __delay(500);
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     resultado++;
     __delay(500);
     6r();
}
 
void 7(void) 
{
     __lcd_clear();
     __lcd_puts("Parabens!!!!!!!!");
     __lcd_goto(0x7f, 1);
     __lcd_puts("VC COMPLETOU TD");
     __lcd_goto(0x7f, 1);
     __delay(5000);
     gins();
}
 
void 4(void) 
{
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     __delay(500);
     __digital_out(3, 1);
     __delay(500);
     __digital_out(3, 0);
     __delay(500);
     __digital_out(2, 1);
     __delay(500);
     __digital_out(2, 0);
     __delay(500);
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     resultado++;
     __delay(500);
     4r();
}
 
void 3r(void) 
{
     if (__LEFT_KEY) {
         if (__RIGHT_KEY) {
             if (__ENTER_KEY) {
                 4();
             }
             else {
                 errou();
             }
         }
         else {
             errou();
         }
     }
     else {
         errou();
     }
 
}
 
void 6r(void) 
{
     if (__LEFT_KEY) {
         if (__RIGHT_KEY) {
             if (__ENTER_KEY) {
                 if (__LEFT_KEY) {
                     if (__LEFT_KEY) {
                         if (__RIGHT_KEY) {
                             7();
                         }
                         else {
                             errou();
                         }
                     }
                     else {
                         errou();
                     }
                 }
                 else {
                     errou();
                 }
             }
             else {
                 errou();
             }
         }
         else {
             errou();
         }
     }
     else {
         errou();
     }
 
}
 
void 4r(void) 
{
     if (__LEFT_KEY) {
         if (__RIGHT_KEY) {
             if (__ENTER_KEY) {
                 if (__LEFT_KEY) {
                     5();
                 }
                 else {
                     errou();
                 }
             }
             else {
                 errou();
             }
         }
         else {
             errou();
         }
     }
     else {
         errou();
     }
 
}
 
void 3(void) 
{
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     __delay(500);
     __digital_out(3, 1);
     __delay(500);
     __digital_out(3, 0);
     __delay(500);
     __digital_out(2, 1);
     __delay(500);
     __digital_out(2, 0);
     resultado++;
     __delay(500);
     3r();
}
 
void 1r(void) 
{
     if (__RIGHT_KEY) {
         2();
     }
     else {
         errou();
     }
 
}
 
void gins(void) 
{
     resultado = 0;
     __lcd_goto(0x7f, 1);
     __lcd_puts("Aperte enter");
     __lcd_goto(0xbf, 1);
     __lcd_puts("para iniciar");
     __delay(1000);
     __lcd_clear();
     __lcd_goto(0x7f, 7);
     __lcd_puts("ou");
     __delay(1000);
     __lcd_clear();
     __lcd_goto(0x7f, 1);
     __lcd_puts("CIMA PARA VOLTAR");
     __delay(1000);
     __lcd_clear();
     if (__ENTER_KEY) {
         1();
     }
     if (__UP_KEY) {
         inicial();
     }
 
}
 
void 2(void) 
{
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     __delay(500);
     __digital_out(3, 1);
     __delay(500);
     __digital_out(3, 0);
     __delay(500);
     resultado++;
     2r();
}
 
void errou(void) 
{
     __lcd_goto(0x7f, 1);
     __lcd_puts("Voce errou!");
     __lcd_goto(0xbf, 1);
     __lcd_puts("%r", resultado);
     __delay(1000);
     __lcd_clear();
     resultado = 0;
     1();
}
 
void CONTADOR DE DEDOS(void) 
{
     jogo = 0;
     contador = 0;
     while(TRUE) {
         if (__ENTER_KEY) {
             while(!!(__ENTER_KEY)) { __delay(10); }
             inicial();
         }
         while((contador > 100)) {
             __lcd_clear();
             __lcd_goto(0x7f, 2);
             __lcd_puts("TEMPO ESGOTADO");
             __delay(1000);
             __lcd_clear();
             __lcd_goto(0x7f, 1);
             __lcd_puts("SuaPontuacaoFoi:");
             __lcd_goto(0xbf, 5);
             __lcd_puts("%d", jogo);
             while(!__ENTER_KEY) { __delay(10); }
             if (__ENTER_KEY) {
                 while(!!(__ENTER_KEY)) { __delay(10); }
                 inicial();
             }
         }
         while((__analog_in(0) > 500)) {
             jogo += 1;
             while(!!((__analog_in(0) > 30))) { __delay(10); }
         }
         contador += 1;
         __backlight(__ON);
         __lcd_goto(0x7f, 1);
         __lcd_puts("SUA PONTUACAO E");
         __lcd_goto(0xbf, 5);
         __lcd_puts("%d", jogo);
     }
 
}
 
// Status do Procedimento:
// Finalizar
void inicial(void) 
{
     while(TRUE) {
         __IR__ON();
         while(TRUE) {
             __backlight(__ON);
             __lcd_clear();
             __lcd_goto(0x7f, 1);
             __lcd_puts("Menu Manual Ativ");
             __lcd_goto(0xbf, 1);
             __lcd_puts("Esq.+Direita=AUT");
             __delay(1000);
             __lcd_goto(0xbf, 1);
             __lcd_puts("cima+baixo=danca");
             __delay(1000);
             __lcd_goto(0xbf, 1);
             __lcd_puts("cima+Esquerda=gins");
             __delay(1000);
             __lcd_clear();
             while((!testbit(__IR, 0) && __UP_KEY)) {
                 __motor_curso(__FORWARD);
             }
             if ((!testbit(__IR, 1) && __LEFT_KEY)) {
                 __motor_curso(__LEFT_TURN);
                 __delay(375);
                 __motor(1, 0);
                 __motor(2, 0);
             }
             if ((!testbit(__IR, 2) && __ENTER_KEY)) {
                 __motor(1, 0);
                 __motor(2, 0);
             }
             if ((!testbit(__IR, 3) && __RIGHT_KEY)) {
                 __motor_curso(__RIGHT_ROTATE);
                 __delay(375);
                 __motor(1, 0);
                 __motor(2, 0);
             }
             if (!testbit(__IR, 4)) {
                 __lcd_clear();
                 __lcd_puts("Sem Comando");
                 __delay(300);
                 __lcd_clear();
             }
             if (!testbit(__IR, 5)) {
                 __lcd_clear();
                 __lcd_puts("Sem Comando");
                 __delay(300);
                 __lcd_clear();
             }
             if ((!testbit(__IR, 6) || (__LEFT_KEY && __RIGHT_KEY))) {
                 while(!!(!testbit(__IR, 6))) { __delay(10); }
                 while(!!(__LEFT_KEY)) { __delay(10); }
                 while(!!(__RIGHT_KEY)) { __delay(10); }
                 Aut();
             }
             if ((__UP_KEY && __BOTTOM_KEY)) {
                 while(!!(__UP_KEY)) { __delay(10); }
                 while(!!(__BOTTOM_KEY)) { __delay(10); }
                 Dança();
             }
             if ((__UP_KEY && __LEFT_KEY)) {
                 while(!!(__UP_KEY)) { __delay(10); }
                 while(!!(__LEFT_KEY)) { __delay(10); }
                 gins();
             }
             if ((__BOTTOM_KEY && __RIGHT_KEY)) {
                 while(!!(__BOTTOM_KEY)) { __delay(10); }
                 while(!!(__RIGHT_KEY)) { __delay(10); }
                 CONTADOR DE DEDOS();
             }
         }
     }
 
}
 
void 1(void) 
{
     __digital_out(1, 1);
     __delay(500);
     __digital_out(1, 0);
     __delay(500);
     resultado++;
     1r();
}
 
// Status do Procedimento:
// Pronto
void Aut(void) 
{
     while(TRUE) {
         __motor_curso(__FORWARD);
         __lcd_clear();
         __lcd_goto(0x7f, 1);
         __lcd_puts("Programa  padrao");
         __delay(2000);
         __lcd_goto(0xbf, 1);
         __lcd_puts("Abaixo+Cima=Menu");
         __delay(2000);
         while(__ENTER_KEY) {
             __motor_curso(__STOP);
             __lcd_clear();
             __lcd_goto(0x7f, 3);
             __lcd_puts("<<PARADO>>");
             __delay(2000);
             __lcd_goto(0xbf, 1);
             __lcd_puts("Abaixo+Cima=Menu");
             __delay(2000);
         }
         while(((__BOTTOM_KEY && __UP_KEY) || !testbit(__IR, 6))) {
             while(!!(__BOTTOM_KEY)) { __delay(10); }
             while(!!(__UP_KEY)) { __delay(10); }
             while(!!(!testbit(__IR, 6))) { __delay(10); }
             __lcd_clear();
             return;
         }
         if (!__digital_in(5)) {
             if ((__randon(1, 3) == 2)) {
                 direita();
             }
             else {
                 esquerda();
             }
         }
         if (!__digital_in(5)) {
             if ((__randon(1, 3) == 2)) {
                 esquerda();
             }
             else {
                 direita();
             }
         }
     }
 
}
 
void 2r(void) 
{
     if (__LEFT_KEY) {
         if (__RIGHT_KEY) {
             3();
         }
         else {
             errou();
         }
     }
     else {
         errou();
     }
 
}
 
// Status do Procedimento:
// Pronto
void direita(void) 
{
     __motor_curso(__BACKWARD);
     __delay(1000);
     __motor_curso(__RIGHT_ROTATE);
     __delay(750);
}
 
// Status do Procedimento:
// Pronto
void Dança(void) 
{
     t = 180;
     __delay(50);
     __buzzer(55, t);
     __motor_curso(__FORWARD);
     __delay(t);
     __motor_curso(__STOP);
     __buzzer(55, t);
     __motor_curso(__FORWARD);
     __delay(t);
     __motor_curso(__STOP);
     __buzzer(53, t);
     __motor_curso(__RIGHT_ROTATE);
     __delay(t);
     __motor_curso(__STOP);
     __buzzer(55, t);
     __motor_curso(__FORWARD);
     __delay(t);
     __motor_curso(__STOP);
     __buzzer(65, t);
     __motor_curso(__BACKWARD);
     __delay(t);
     __motor_curso(__STOP);
     __buzzer(64, t);
     __motor_curso(__LEFT_ROTATE);
     __delay(t);
     __motor_curso(__STOP);
     __buzzer(61, t);
     __motor_curso(__FORWARD);
     __delay(t);
     __motor_curso(__STOP);
     __buzzer(57, t);
     __motor_curso(__BACKWARD);
     __delay(t);
     __motor_curso(__STOP);
     __buzzer(62, (t * 3));
     __motor_curso(__RIGHT_ROTATE);
     __delay((t * 3));
     __motor_curso(__STOP);
     inicial();
}
 
//Funcao Principal
void main(void)
{
     __inicializa;
     while(TRUE) {
         __backlight(__ON);
         __lcd_clear();
         __lcd_goto(0x7f, 1);
         __lcd_puts("Press Enter=menu");
         __lcd_goto(0xbf, 1);
         __lcd_puts("Senao Aut Em:");
         __lcd_goto(0xbf, 14);
         __lcd_puts(" 3s");
         __delay(1000);
         __lcd_goto(0xbf, 14);
         __lcd_puts(" 2s");
         __delay(1000);
         __lcd_goto(0xbf, 14);
         __lcd_puts(" 1s");
         __delay(1000);
         __lcd_goto(0xbf, 14);
         __lcd_puts(" 0s");
         if (!(__ENTER_KEY)) {
             Aut();
         }
         else {
             inicial();
         }
     }
 
     while(TRUE) { }
}

Descrição

É necessario montar protoboard.

Nenhum Comentário

Download


Entre para Baixar

Favorito de


Ninguém marcou este projeto como favorito ainda.

Projetos de C2C01012