Мне нужно получить 3 символа каждые 2 миллисекунды в цикле. Я использую SerialPort.Read(), но для чтения входящих данных требуется от 5 до 6 миллисекунд. Есть ли способ сделать это? Большое спасибо.Прочтите данные последовательного порта менее 2 мс в C#
ответ
Вы можете вызвать последовательный порт в C++, https://stackoverflow.com/a/15795522/67566
Тогда вы можете позвонить, что из C#, https://msdn.microsoft.com/en-us/library/ms235281.aspx
Я ожидаю, что это будет быстрее, но вы будете иметь замедление в получении данные из C++ -> C#, а ваше окно 2-3 мс очень мало.
Вы можете получить данные в то время, я ожидаю, из C++, но вам может понадобиться его буферизировать, поэтому я бы поставил временную метку с каждой частью данных, а когда вы ее вызываете из C#, вам может понадобиться возвращают более одной части, а затем обрабатывают их.
В C++ DLL вам понадобится отдельный поток для чтения из последовательного порта.
Вы должны использовать класс thread
, https://msdn.microsoft.com/en-us/library/hh920601.aspx и отсоединить его после создания.
И, наконец, вы хотите использовать безопасную очередь потоков, так что вы можете смотреть на эти две ссылки и выбрать, какой один вам больше нравится:
https://juanchopanzacpp.wordpress.com/2013/02/26/concurrent-queue-c11/
- 1. Прочтите из последовательного порта за установленное время?
- 2. Фрагментированные данные последовательного порта
- 3. Ожидающие данные из последовательного порта в C#
- 4. C# прослушиватель последовательного порта
- 5. Данные последовательного порта считаются
- 6. C# перенаправление последовательного порта
- 7. Прерывание цикла последовательного порта C#
- 8. C#, mssing некоторые данные из последовательного порта?
- 9. Режим последовательного порта C#
- 10. Связь последовательного порта в C
- 11. Конфигурация последовательного порта C++
- 12. Данные порта последовательного порта малины ошибочны
- 13. Производительность последовательного порта
- 14. Данные порта последовательного порта C#, формат полученных данных
- 15. Связь последовательного порта в C#
- 16. Мусорные данные из последовательного порта
- 17. C#: ждать завершения последовательного порта()
- 18. Захват последовательного порта Приложение C#
- 19. Библиотека классов последовательного порта C#
- 20. Прочтите USB для последовательного порта Информация в Xojo
- 21. C# WPF Преобразование последовательного порта?
- 22. использовать данные последовательного порта в другой программе
- 23. Связь последовательного порта: опрос последовательного порта и использование последовательного порта. Событие DataReceived
- 24. Время последовательного порта Windows?
- 25. Программирование последовательного порта?
- 26. Команды последовательного порта
- 27. проверить подключение последовательного порта
- 28. Отображать данные из последовательного порта в jTable
- 29. Входные данные из последовательного порта в Excel
- 30. Справка по программированию последовательного порта в C#
ли это зацикливание, как быстро насколько возможно? Если это так, скорее всего, последовательное соединение слишком медленное, а не ваш код. – Firearrow5235
Только SerialPort.Read() занимает от 5 до 6 мс и даже не начинает обрабатывать входящие данные. – Jardo421