#define UART_RX_PIN 16 // Replace with your specific RX pin
volatile bool uart_data_available = false;

void setup() {
  Serial.begin(115200); // Initialize Serial for UART communication
  //pinMode(UART_RX_PIN, INPUT); // Set RX pin as input
  attachInterrupt(digitalPinToInterrupt(UART_RX_PIN), handleUartInterrupt, CHANGE);
}

void loop() {
  if (uart_data_available) {
    while (Serial.available() > 0) {
      char receivedChar = Serial.read();
      // Process received data here...
      Serial.print(receivedChar);
    }
    uart_data_available = false; // Reset flag after processing data
  }
  // Your main code
}

void handleUartInterrupt() {
  uart_data_available = true;
}