There may be several issues here.
But first uint8_t *Buffer does not define a buffer, but merely a pointer which could point to one. But unless you do something else, it will point nowhere.
What you probably want is something like
uint8_t Buffer or whatever a reasonable length is. If you really only wanted one byte then you sould do something like:
rui_uart_recv(RUI_UART1, &rx_byte, 1 );
Where the function would fill in the value of that variable. But only do that if the 1 in the above means it will write a maximum of one byte (it appears to, but I’m not familiar with RUI, so its up to you to check).
But that may not be your only challenge. You probably need to check the return value of the function to see if it got anything. And if it is not reading the UART in an interrupt and buffering behind the scenes, you’d also need to make sure you were polling it frequently enough. Of course there are the configuration issues you raised, too.
I suspect your best path would be to try to find an example under RUI that reads from a UART for any purpose and study that and then try to adapt it to your specific need.