def modbus_master_send_await(master, req, resp_timeout=5):
    """Send a Modbus master request, and await a response.
    
    This function sends a Modbus request (as the master), and awaits a reponse.  The response is
    expected to have the same slave address and function as the request, or an exception response
    (which matches the request function + 0x80).
    
    Args:
    
        master: The object returned from modbus_master_init()
        req: Request message (instance of a ModbusMessage)
        resp_timeout: Timeout to await response (in seconds); default is 5 seconds.
        
    Returns:
        A ModbusMessage representing the response, or None if no message was received within the timeout.
    """
    return master.send_await(req, resp_timeout)