public StatusDaConexao(GravarCorrida pFormGravarCorrida)
        {
            InitializeComponent();

            timerCheckSpeed = new Timer();
            timerCheckSpeed.Interval = CHECK_SPEED_INTERVAL;
            timerCheckSpeed.Tick += TimerCheckSpeed_Tick;
            timerCheckSpeed.Enabled = true;

            formGravarCorrida = pFormGravarCorrida;

            prevPointsCount = currentSpeed = 0;
        }
        private async Task ShowGravarCorrida()
        {
            GravarCorridaConexão formGravarCorridaConexao = new GravarCorridaConexão();
            formGravarCorridaConexao.Show();

            bool connected = await formGravarCorridaConexao.CreateConnections();

            if (!connected)
            {
                formGravarCorridaConexao.CloseOnlyThis();
                Show();
            }
            else
            {
                // cria janela de gravar corrida
                GravarCorrida formGravarCorrida = new GravarCorrida(parameters);
                await formGravarCorrida.ConfigureCharts();

                // fecha janela de loading e setup
                formGravarCorridaConexao.CloseOnlyThis();
                CloseOnlyThis();

                // abre janela de gravar corrida
                formGravarCorrida.Show();

                // TODO o código abaixo está feio, melhorar? Botar captura em outro lugar?
                try
                {
                    // inicia recebimento de dados dos sensores
                    CarConnection.StartListen();
                }
                catch(Exception e)
                {
                    ErrorMessage.Show(ErrorType.Error, ErrorReason.SendToCarFail, e.Message);
                    formGravarCorridaConexao.CloseOnlyThis();
                    Show();
                    return;
                }

                // inicia atualização dos gráficos na tela de gravação de corrida
                formGravarCorrida.StartUpdateCharts();
            }
        }