예제 #1
0
        private void timerWsprUpdate_Tick(object sender, EventArgs e)
        {
            string stampNow = $"{DateTime.UtcNow.Hour}{DateTime.UtcNow.Minute}{DateTime.UtcNow.Second}";

            if (stampNow == stampLast)
            {
                return;
            }

            stampLast = stampNow;
            int second = (DateTime.UtcNow.Minute % 10) * 60 + DateTime.UtcNow.Second;

            lblTime.Text       = $"{UtcTimeStamp} UTC";
            lblStatusTime.Text = $"{UtcTimeStamp} UTC (second {second}/600)";
            pbTimeFrac.Value   = second;
            LoadWsprSpots();

            bool isTenMinute   = DateTime.UtcNow.Minute % 10 == 0;
            bool isWsprHadTime = DateTime.UtcNow.Second == 2;

            if (isTenMinute && isWsprHadTime)
            {
                spec.RollReset();
                if (cbSave.Checked && cbSave.Enabled)
                {
                    SaveGrab(uploadToo: cbFTP.Checked);
                }
            }
        }