/////////////////////////////////////////////////////
/////*Programa Para PIC Comunicacion RS232*//////////
//////////////////////////////////////////////////////////////////////
////ALUNMOS:JOSE JORQUERA////////
////////////LUIS JUAREZ////
//////////////////////////////////
//#Include <16f873a.h>
#Include "C:\Archivos de programa\PICC\Devices\16f873a.h"
//#Include "C:\Archivos de programa\Microchip\Third Party\PICC\Drivers\stdio.h"
# use Delay (clock=4000000)
# use rs232(baud=9600,xmit=pin_c6,rcv=pin_c7,timeout=100)
#fuses XT, NOWDT, NOPROTECT, BROWNOUT, PUT, NOLVP
unsigned char Dato;
void main(void)
{
setup_adc(7);
printf ("Generador De Secuencias \n\r");
printf ("\n\r");
printf ( "Menu \n\r");
printf ("\n\r");
printf ("Elija La secuencia a Realizar \n\r");
printf ("\n\r");
printf (" (1) Secuencia Leds Intermitentes \n\r");
printf ("\n\r");
printf (" (2) Secuencia Leds Dos en Dos \n\r");
printf ("\n\r");
printf (" (3) Secuencia leds On y Off \n\r");
printf ("\n\r");
printf (" (4) Boton 1 Secuencia Pendulo \n\r");
printf ("\n\r");
printf (" (5) Boton 2 Reset \n\r");
while(TRUE)
{
Dato=getc();
if(input(PIN_A4)==0)
{
output_high(pin_B0);
Delay_ms(100);
output_low(pin_B0);
Delay_ms(100);
output_high(pin_B1);
Delay_ms(100);
output_low(pin_B1);
Delay_ms(100);
output_high(pin_B2);
Delay_ms(100);
output_low(pin_B2);
Delay_ms(100);
output_high(pin_B3);
Delay_ms(100);
output_low(pin_B3);
Delay_ms(100);
output_high(pin_B4);
Delay_ms(100);
output_low(pin_B4);
Delay_ms(100);
output_high(pin_B5);
Delay_ms(100);
output_low(pin_B5);
Delay_ms(100);
output_high(pin_B6);
Delay_ms(100);
output_low(pin_B6);
Delay_ms(100);
output_high(pin_B7);
Delay_ms(100);
output_low(pin_B7);
Delay_ms(100);
output_high(pin_B6);
Delay_ms(100);
output_low(pin_B6);
Delay_ms(100);
output_high(pin_B5);
Delay_ms(100);
output_low(pin_B5);
Delay_ms(100);
output_high(pin_B4);
Delay_ms(100);
output_low(pin_B4);
Delay_ms(100);
output_high(pin_B3);
Delay_ms(100);
output_low(pin_B3);
Delay_ms(100);
output_high(pin_B2);
Delay_ms(100);
output_low(pin_B2);
Delay_ms(100);
output_high(pin_B1);
Delay_ms(100);
output_low(pin_B1);
Delay_ms(100);
output_high(pin_B0);
Delay_ms(100);
output_low(pin_B0);
Delay_ms(100);
output_high(pin_B1);
Delay_ms(100);
output_low(pin_B1);
Delay_ms(100);
output_high(pin_B2);
Delay_ms(100);
output_low(pin_B2);
Delay_ms(100);
output_high(pin_B3);
Delay_ms(100);
output_low(pin_B3);
Delay_ms(100);
output_high(pin_B4);
Delay_ms(100);
output_low(pin_B4);
Delay_ms(100);
output_high(pin_B5);
Delay_ms(100);
output_low(pin_B5);
Delay_ms(100);
output_high(pin_B6);
Delay_ms(100);
output_low(pin_B6);
Delay_ms(100);
output_high(pin_B7);
Delay_ms(100);
output_low(pin_B7);
Delay_ms(100);
output_high(pin_B6);
Delay_ms(100);
output_low(pin_B6);
Delay_ms(100);
output_high(pin_B5);
Delay_ms(100);
output_low(pin_B5);
Delay_ms(100);
output_high(pin_B4);
Delay_ms(100);
output_low(pin_B4);
Delay_ms(100);
output_high(pin_B3);
Delay_ms(100);
output_low(pin_B3);
Delay_ms(100);
output_high(pin_B2);
Delay_ms(100);
output_low(pin_B2);
Delay_ms(100);
output_high(pin_B1);
Delay_ms(100);
output_low(pin_B1);
Delay_ms(100);
output_high(pin_B0);
Delay_ms(100);
output_low(pin_B0);
output_b(0x00);
}
if(input(PIN_A5)==0)
{
#asm
goto 0;
#endasm
}
if(Dato==49)
{
output_b(0x99);
Delay_ms(500);
output_b(0x66);
Delay_ms(500);
output_b(0x99);
Delay_ms(500);
output_b(0x66);
Delay_ms(500);
output_b(0x99);
Delay_ms(500);
output_b(0x66);
Delay_ms(500);
output_b(0x99);
Delay_ms(500);
output_b(0x66);
Delay_ms(500);
output_b(0x99);
Delay_ms(500);
output_b(0x66);
Delay_ms(500);
output_b(0x99);
Delay_ms(500);
output_b(0x66);
Delay_ms(500);
output_b(0x99);
Delay_ms(500);
output_b(0x66);
Delay_ms(500);
output_b(0x99);
Delay_ms(500);
output_b(0x66);
Delay_ms(500);
output_b(0x99);
Delay_ms(500);
output_b(0x66);
Delay_ms(500);
}
if (Dato==50)
{
output_high(PIN_B7);
output_high(PIN_B6);
Delay_ms(300);
output_low(PIN_B7);
output_low(PIN_B6);
Delay_ms(300);
output_high(PIN_B5);
output_high(PIN_B4);
Delay_ms(300);
output_low(PIN_B5);
output_low(PIN_B4);
Delay_ms(300);
output_high(PIN_B3);
output_high(PIN_B2);
Delay_ms(300);
output_low(PIN_B3);
output_low(PIN_B2);
Delay_ms(300);
output_high(PIN_B1);
output_high(PIN_B0);
Delay_ms(300);
output_low(PIN_B1);
output_low(PIN_B0);
Delay_ms(300);
output_high(PIN_B7);
output_high(PIN_B6);
Delay_ms(300);
output_low(PIN_B7);
output_low(PIN_B6);
Delay_ms(300);
output_high(PIN_B5);
output_high(PIN_B4);
Delay_ms(300);
output_low(PIN_B5);
output_low(PIN_B4);
Delay_ms(300);
output_high(PIN_B3);
output_high(PIN_B2);
Delay_ms(300);
output_low(PIN_B3);
output_low(PIN_B2);
Delay_ms(300);
output_high(PIN_B1);
output_high(PIN _B0);
Delay_ms(300);
output_low(PIN_B1);
output_low(PIN_B0);
Delay_ms(300);
output_high(PIN_B7);
output_high(PIN_B6);
Delay_ms(300);
output_low(PIN_B7);
output_low(PIN_B6);
Delay_ms(300);
output_high(PIN_B5);
output_high(PIN_B4);
Delay_ms(300);
output_low(PIN_B5);
output_low(PIN_B4);
Delay_ms(300);
output_high(PIN_B3);
output_high(PIN_B2);
Delay_ms(300);
output_low(PIN_B3);
output_low(PIN_B2);
Delay_ms(300);
output_high(PIN_B1);
output_high(PIN _B0);
Delay_ms(300);
output_low(PIN_B1);
output_low(PIN_B0);
Delay_ms(300);
output_b(0x00);
}
if (Dato==51)
{
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
output_b(0xff);
Delay_ms(500);
output_b(0x00);
Delay_ms(500);
}
}
}
Un poco de ayuda------> necesito cambiar la instruccion goto por otra que haga lo mismo.
de antemano gracias