|
0 / 0 / 0
Регистрация: 29.09.2021
Сообщений: 13
|
||||||
QSerialPort как повысить скорость считывания?01.11.2021, 15:31. Показов 5229. Ответов 11
Всем привет!
Есть часть программы - её задача только читать данные с COM-порта. Никакого служебного трафика. Сенсор просто шлет мне данные со скоростью 4 кГц (по уверениям разработчика железки, который сидит в соседнем кабинете). Я считываю данные через QSerialPort в отдельном потоке и вывожу в дебагер с реальным временем, чтобы проверить скорость считывания. 4-мя кГц там и не пахнет. Вопрос: как добиться чтения со скоростью 4кГц на виндовой машине и возможно ли это в принципе?
Вывод программы в дебагер (начало кадра \xAA\xAA\): "\xAA\xAA\x03\x00\f\x00\x00\x00\x04\x00\ x00\x00 \x00\x00\x00\xC0\xD7z>\x00\xC5""D\xBE@\x E4\x1D\xBE\x00}<=\x00\x1E\xB0\xBCp\x94\x 85?\x00 KFP\xC2\x12""B\x98\xF1\b\xAB" QTime("15:31:28.019") "\xAA\xAA\x03\x00\f\x00\x00\x00\x04\x00\ x00\x00 \x00\x00\x00\x80\x9D{>\x80\xAE""E\xBE@\x A3\x1A\xBE\x00\x19;=\x00H\xB3\xBC\xA0\xA 9\x85?\x00 KFJ\xC3\x12""By\xF1\x1C\xF1" QTime("15:31:28.105") "\xAA\xAA\x03\x00\f\x00\x00\x00\x04\x00\ x00\x00 \x00\x00\x00\xC0\xAA}>@qG\xBE@`\x1A\xBE\ x00X<=\x00\xEE\xB3\xBC\x90\xAC\x85?\x00 KF2\xC7\x12""Bd\x9D""87\xAA\xAA\x03\x00\ f\x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00\xC0\xE7|>\x00\x17""D\xBE\x0 0""1\x19\xBE\x00\xD8;=\x00\xCA\xB1\xBC(s \x85?\x00 KF\x8F\xC2\x12""B\x81I-d\xAA\xAA\x03\x00\f\x00\x00\x00\x04\x00\ x00\x00 \x00\x00\x00@\x1A}>@!F\xBE\x00\xCE\x1C\x BE\x00\xA0;=\x00\xD0\xB2\xBCH\xB8\x85?\x 00 KF\xEA\xB8\x12""B\x8A\x7F\x8D\xCF\xAA\xA A\x03\x00\f\x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00@\xE3{>\x00'F\xBE@\xEF\x18\x BE\x00\xCC""8=\x00\xA4\xB2\xBCH\x80\x85? \x00 KF\x05\xBF\x12""B\xEE\xD3\x19\x01\xAA\xA A\x03\x00\f\x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00\x80\xBF}>\xC0'C\xBE@\xB3\x1 C\xBE\x00\x95;=\x00\xD8\xB2\xBC\b\x80\x8 5?\x00 KF}\xC5\x12""B\xBC$ov\xAA\xAA\x03\x00\f\ x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00\xC0[~>\xC0\xCF""B\xBE\x00`\x1B\xBE\x00""4:=\ x00\x84\xAC\xBC@\x84\x85?\x00 KF\x0B\xBE\x12""B\xC4\xB7\x99\x87\xAA\xA A\x03\x00\f\x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00\xC��Ǟ QTime("15:31:28.120") "\xAA\xAA\x03\x00\f\x00\x00\x00\x04\x00\ x00\x00 \x00\x00\x00\x80\x9E~>\xC0"E\xBE\x80\xF9 \x1A\xBE\x00@9=\x00\xE0\xB2\xBCpv\x85?\x 00 KF\xD3\xC1\x12""B\xD3\x9C""a\xEF" QTime("15:31:28.136") "\xAA\xAA\x03\x00\f\x00\x00\x00\x04\x00\ x00\x00 \x00\x00\x00@D{>@[E\xBE\x80"\x1E\xBE\x00\r<=\x00\b\xB0\xBC \xD8\xA0\x85?\x00 KFb\xBF\x12""B\xF4\x11\xA3\xE5" QTime("15:31:28.222") �P� QTime("15:31:28.238") "\xAA\xAA\x03\x00\f\x00\x00\x00\x04\x00\ x00\x00 \x00\x00\x00\xC0\xD2}>\x00\x8F""F\xBE@K\ x1B\xBE\x00"9=\x00\xA8\xAE\xBC\x90\x9B\x 85?\x00 KF\xE4\xB9\x12""B\x9A\xC9\xA4k" QTime("15:31:28.254") "\xAA\xAA\x03\x00\f\x00\x00\x00\x04\x00\ x00\x00 \x00\x00\x00\xC0\x8B{>\xC0+D\xBE\x00\xC7 \x1A\xBE\x00\xEB""7=\x00\xAE\xAE\xBC\xB8 L\x85?\x00 KF\xB9\xBB\x12""B[\x05\xBF\x91" QTime("15:31:28.339") "\xAA\xAA\x03\x00\f\x00\x00\x00\x04\x00\ x00\x00 \x00\x00\x00\x00\xA5{>\x80UE\xBE\x00\x87 \x1B\xBE\x00h;=\x00\xE2\xB0\xBC\x88\x9A\ x85?\x00 KF\xA0\xBA\x12""B`Z\x1E&\xAA\xAA\x03\x00 \f\x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00@l|>@pE\xBE@\x82\x1C\xBE\x00 \x9A""9=\x00""B\xAB\xBC\x10\x87\x85?\x00 KFN\xB8\x12""B\xC4\x8D\xC4\x14\xAA\xAA\x 03\x00\f\x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00\x80\xB2z>@\xE3""B\xBE@\x9E\ x1D\xBE\x00\xCA:=\x00\xE6\xB2\xBC\b\x84\ x85?\x00 KF\x03\xBA\x12""Be\x9D\xA1\xD8\xAA\xAA\x 03\x00\f\x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00\xC0\f}>@\xCF""F\xBE\x00\x01 \x1A\xBE\x00h;=\x00\x02\xAE\xBC\xA0\x82\ x85?\x00 KF\xF0\xB7\x12""B\x19\xCC\xA3S\xAA\xAA\x 03\x00\f\x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00\x00""5}>\xC0""4E\xBE\x00\xA 3\x1C\xBE\x00&==\x00`\xB2\xBC""8\xAE\x85 ?\x00 KF\x03\xBA\x12""B\x1C\xCA.F\xAA\xAA\x03\ x00\f\x00\x00\x00\x04\x00\x00\x00 \x00\x00\x00\xC0\xB0{>\x00""0E\xBE\x80"" 6\x1C\xBE\x00\x07:=\x00\xD6\xAD\xBC(\x8D \x85?\x00 KFU\xBC\x12""B\x99\x07\x03\b\xAA\xAA\x03 \x00\f\x00\x00\x00\x04\x00\x00\x00 \��љ QTime("15:31:28.354")
0
|
||||||
| 01.11.2021, 15:31 | |
|
Ответы с готовыми решениями:
11
Как повысить скорость на 4G Как повысить скорость в Zona? Как повысить скорость индексации? |
|
0 / 0 / 0
Регистрация: 29.09.2021
Сообщений: 13
|
|
| 01.11.2021, 16:38 [ТС] | |
|
До такой степени? У меня даже 1 кГц и рядом нету
хотя можно попробовать кидать данные по ссылке в буфер в основном потоке и оттуда уже выводить данные или в файл, или в тот же qDebug
0
|
|
|
0 / 0 / 0
Регистрация: 29.09.2021
Сообщений: 13
|
|
| 02.11.2021, 09:10 [ТС] | |
|
при моем baudrate 115200 и настройках databit, stopbit, скорость 12800 байт/с. Ловлю я по моим подсчётам в среднем 1329 байт/с, что 1/10 от возможного.
Собственно в этом и вопрос - что я делаю не так, что такой результат неудовлетворительный? qDebug() вчера отключал, идет только запись в текстовый файл (выловленные данные + QTime) Мануалов перекурил, пока сюда обратился - тьма тьмущая. :-(
0
|
|
|
0 / 0 / 0
Регистрация: 29.09.2021
Сообщений: 13
|
|
| 02.11.2021, 09:38 [ТС] | |
|
Осциллографом не смотрел, тут у меня 2 "клиента" бьют себя пяткой в грудь, что со сторонней программой SerialPlot все работает (но её функционала не хватает, у меня есть вторая часть проги, которая работает нормально).
Ну благо исходники доступны, посмотрел, как там сделано - отличий от моего подключения сам не нашел. Всё принципиально так же - QSerialport, открывается порт, задаются настройки.... Разве что я работаю дальше с QSerialPort, а они с базовым QIODevice. Переписал, как у них, естественно ничего не поменялось. Или я что-то не так делаю, или надо да, брать осциллограф в соседнем отделе и доказывать уже, что я не верблюд. Есть ли в моём коде ошибки, способные повлиять на скорость считывания? Вот, что меня беспокоит.
0
|
|
|
0 / 0 / 0
Регистрация: 29.09.2021
Сообщений: 13
|
|
| 02.11.2021, 10:20 [ТС] | |
|
SerialPlot такой информации не имеет, воспользоваться другими не могу, т.к. в прошлый раз при установке сторонних терминалов глюканул QT и пришлось переустанавливать систему.
Вот так и живу, не могу измерить скорость, приходится верить на слово, что сенсор выдает нужную мне информацию с нужной скоростью.
0
|
|
|
0 / 0 / 0
Регистрация: 29.09.2021
Сообщений: 13
|
|
| 02.11.2021, 10:24 [ТС] | |
|
Вот скрин из SerialPlot, если поможет...
0
|
|
|
0 / 0 / 0
Регистрация: 29.09.2021
Сообщений: 13
|
|
| 16.11.2021, 10:15 [ТС] | |
|
В общем, Вы были правы - прибор, с которого я проводил считывание, выдавал меньше данных в единицу времени, чем мне нужно. Выдали мне параметры и алгоритм его конфигурирования, дело вроде пошло :-)
Из инженера инфу клещами пришлось тянуть, ну и главное было убедиться, что мой код без ошибок, это придало уверенности в глазах при разговоре с разработчиком железки )))
0
|
|
| 16.11.2021, 10:15 | |
|
Помогаю со студенческими работами здесь
12
Как повысить скорость интернета? как повысить скорость отработки программы? Как повысить скорость работы с Excel Как повысить скорость перерисовки кнопки? Как повысить скорость вычислений? Видеообработка в MATLAB Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|