Скорость отправки UDP на F1 UDP и последовательном портуC#

Место общения программистов C#
Ответить
Anonymous
 Скорость отправки UDP на F1 UDP и последовательном порту

Сообщение Anonymous »

Я создаю руль, чтобы играть в игры F1 Codemasters.
В этих играх есть возможность отправлять телеметрию через UDP.
https:/ /answers.ea.com/t5/General-Discussion/F1-23-UDP-Specification/td-p/12632888
Изображение

Как показано, вы можете выбрать скорость отправки UDP (от 10 Гц до 120 Гц)
Я отправляю UDP на тот же компьютер (IP 127.0.0.1). И я написал консольное приложение net C#, которое получает данные, а затем отправляет их через преобразователь USB-TTL. на следующий экран и на esp32, чтобы мигать светодиодами.

Код: Выделить всё

public static readonly SerialPort serialPort = new("COM7", 115200, Parity.None, 8, StopBits.One)
{
Handshake = Handshake.None
};

public static void NextionPrepare(string s)
{
var commandBytes = System.Text.Encoding.Default.GetBytes(s);
var terminatorBytes = new byte[] {0xFF, 0xFF, 0xFF};
combinedBytes.AddRange(commandBytes.Concat(terminatorBytes));
}

public static void SendNextion()
{
serialPort.Write(combinedBytes.ToArray(), 0, combinedBytes.Count);
combinedBytes.Clear();
}
Этот фрагмент кода создает соединение последовательного порта и отправляет данные при необходимости. Светодиоды аналогичны, просто код .ino для мигания.
Моя проблема в том, что если я устанавливаю скорость отправки UDP выше 30 Гц (60, 100 или 120 Гц), а светодиоды загораются с задержкой, как секунда. Если я использую частоту 30 Гц или меньше, все работает отлично.
Итак, мой вопрос: в чем проблема?
Игра не отправляет правильное количество пакетов?
Является ли мой код неэффективным (или язык программирования?
Есть ли какие-либо ограничения для интерфейса последовательного порта или usb-ttl cp210x?
У меня нет идей, у меня увеличен размер буфера, но ничего изменения.
Есть какие-нибудь подсказки?
спасибо!

Подробнее здесь: https://stackoverflow.com/questions/793 ... erial-port
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»