Estimado foreros como principiante que soy tengo la siguiente pregunta:
¿como volver al inicio de mi programa cuando estoy ejecutando una funcion, es decir que al presionar una tecla por ejemplo el "4" la funcion se deje de ejecutar y regrese al inicio del programa?
como lo hago, con que instrucción
MUCHISIMAS GRACIAS!!
acontinuacion el codigo de programa
include <16f877a.h>
#device adc=10
#FUSES XT,NOWDT,NOPROTECT,NOLVP
#FUSES
#use delay(clock=4000000)
#include <lcd.c>
#include <kbd.c>
//****************** Declaracion de Funciones *******************
void Lectura(void); // funcion que lee los puertos ADC
void OPCION_UNO(void);
void OPCION_DOS(void);
//**************** Programa Principal ***************************
void main()
{
// Declaracion de variables
long vol,cor;
char k;
int x;
// Configuraciones
setup_adc_ports(AN0_AN1_VREF_VREF);
setup_adc(ADC_CLOCK_INTERNAL);
lcd_init();
kbd_init();
port_b_pullups(TRUE);
printf(lcd_putc, "\fPARA INICIAR\n1: Enter");
while (TRUE)
{
k=kbd_getc();
x=k-48;
if (x==1)
{
printf(lcd_putc, "\f1:OPCION 1 \n2:OPCION 2");
while(TRUE)
{
k=kbd_getc();
x=k-48;
switch(x)
{
case 1: OPCION_UNO();
case 2: OPCION_DOS();
}
}
}
}
}
//********************* Definicion de Funciones ***************************
void Lectura(void)
{
// FUNCION DE LECTURA DE PUERTOS ADC
}
//************************************************************************
void OPCION_UNO(void)
{
int k,x;
printf(lcd_putc, "\fADQUISICION");
while (TRUE)
{
k=kbd_getc();
x=k-48;
if (x=4)
?????? //<==== AQUI ESTA MI DUDA
}
}
//************************************************************************
void OPCION_DOS(void)
{
printf(lcd_putc, "\fTIEMPO REAL");
}