K32L2B31A_Project/iot_sdk/iot_sdk_irq/irq_lpuart0.c
uint8_t pullByteDesdeBufferCircular(){
	uint8_t byte_a_retornar;

	//pregunta si hay byte disponible en buffer
	if (rx_index_productor != rx_index_consumidor){

		byte_a_retornar = rx_ring_buffer[rx_index_consumidor]; // Saca Byte desde el buffer
		rx_index_consumidor++;
		rx_index_consumidor %= RX_RING_BUFFER_SIZE; // hace que retorne a la primera posicion, si esta en la ultima.
	}

	return(byte_a_retornar);
}
/* ------- PUBLIC SOURCE CODE ----------- */
/* SACAR DATOS DEL BUFFER */
PUBLIC SOURCE CODE
SACAR DATOS DEL BUFFER
PUBLIC SOURCE CODE SACAR DATOS DEL BUFFER
uint8_t pullByteDesdeBufferCircular(){
	uint8_t byte_a_retornar;
	if (rx_index_productor != rx_index_consumidor){
		byte_a_retornar = rx_ring_buffer[rx_index_consumidor]; 
		rx_index_consumidor++;
		rx_index_consumidor %= RX_RING_BUFFER_SIZE; 
	}
	return(byte_a_retornar);
}
uint8_t pullByteDesdeBufferCircular ( ) { uint8_t byte_a_retornar ; if ( rx_index_productor != rx_index_consumidor ) { byte_a_retornar = rx_ring_buffer [ rx_index_consumidor ] ; rx_index_consumidor ++ ; rx_index_consumidor %= RX_RING_BUFFER_SIZE ; } return ( byte_a_retornar ) ; }
PUBLIC SOURCE CODE 
SACAR DATOS DEL BUFFER
PUBLIC SOURCE CODE SACAR DATOS DEL BUFFER
//pregunta si hay byte disponible en buffer // Saca Byte desde el buffer // hace que retorne a la primera posicion, si esta en la ultima.