Microcontroladores - Detener comunicación Uart.

 
Vista:

Detener comunicación Uart.

Publicado por Garcia Marin (1 intervención) el 23/11/2021 22:03:29
hola, soy nuevo y me gustaría ver si alguien me podría ayudar con mi duda.
lo que pasa es que estoy haciendo una comunicación serial entre un pic 18f2550 y matlab.
Estoy mandando 3 señales adc diferentes del pic ya que mido tres cosas diferentes y hasta ahi lo hace, el problema es que cuando para la lectura y mando a llamar otra señal para que me la muestre, me sigue mandando la primera señal que seleccione.

utilizo esta forma de identificar la señal de entrada y dentro de esta es la toma de la lectura y el paro de la misma. y si me hace el paro según la simulación. pero al pedir la otra lectura me sigue mandando la que seleccione primero.

if(recive[0]=='I' && recive[1] == 'V' && recive[2]=='d' && recive[3]=='c')
{
while(1)
{
adc_Vac=ADC_Read(2);; //conversion de analogico a digital (0-1023)
IntToStr(adc_Vac,adc_txtVac); //Convierte el tipo int a tipo char
UART1_Write_Text(adc_txtVac); //Escribir un string en el uart

if (UART1_Data_Ready() == 1) //Se vuelve a leer la entrada
{
recive[i]=UART1_Read(); // Guardamos el valor o caracter
UART1_Read_Text(recive,".",11); // Leer el dato hasta que encuentre un "." o termine de leer los

if(recive[0]=='S' && recive[1] == 'V' && recive[2]=='d' && recive[3]=='c')
{
break;
}
}

}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder