Programacion funcional con recursividad
Enviado por LuisSanchez • 10 de Julio de 2012 • 773 Palabras (4 Páginas) • 365 Visitas
#include <16F887.h>
#fuses INTRC,NOPROTECT,NOLVP,NOWDT
#use delay(clock=8000000)
#byte trisb = 0x06
#byte portb = 0x86
#byte trisa = 0x05
#byte porta = 0x85
#byte trisc = 0x07
#byte portc = 0x87
#include <lcd.c>
int menu=0;
void main()
{
lcd_init();
printf(lcd_putc, "f CONTADOR n ASCENSO/DESCENSO " );
delay_ms(2000);
printf(lcd_putc, "f ASCENSO n O DESCENSO??? ");
delay_ms(1500);
while (true)
{
if(input_state(pin_a1)==1) //boton elegir opcion
{
menu=menu+1;
delay_ms(300);
if(menu==3)
{
menu=0;
}
}
switch(menu)
{
case 1:
printf(lcd_putc,"f^ASCENSO n DESCENSO");
if(input_state(pin_a2)==1)
{
menu=5;
}
break;
case 2:
printf(lcd_putc,"fASCENSO n ^DESCENSO" );
if(input_state(pin_a2)==1)
{
menu=11;
}
break;
case 4:
menu=0;
break;
// ASCENSO
case 5:
printf(lcd_putc,"f^100 50 n 25");
if(input_state(pin_a2)==1)
{
menu=8;
delay_ms(300);
}
if(input_state(pin_a1)==1)
{
menu=4;
delay_ms(300);
printf(lcd_putc,"f");
}
break;
case 8:
printf(lcd_putc,"f Light High");
output_high(pin_b4);
if(input_state(pin_a2)==1)
{
menu=6;
delay_ms(300);
}
if(input_state(pin_a1)==1)
{
menu=4;
delay_ms(300);
}
break;
}
}
//////////////////////////////////
int select;
int contador=1;
int contador2=0;
int contador3=0;
void main()
{
lcd_init();
Lcd_putc(" SELECCIONE n UNA OPCION ");
delay_ms(1000);
Lcd_putc("f");
delay_ms(200);
while(true)
{
if (input_state(pin_a1)==0)
contador ++;
delay_ms(50);
switch (contador) //Opciones Para los
...