Size: a a a

Maxwell's Demons

2021 February 24

A

Al in Maxwell's Demons
Roman Storozhenko
Реально.
Не использовать qserial.
Только пилить нативный переходник
отличное решение. но вопрос был касательно qserial
источник

RS

Roman Storozhenko in Maxwell's Demons
Al
отличное решение. но вопрос был касательно qserial
Насколько я знаю - адекватно оно не сможет работать так как не использует нативные (аппаратные фичи)
источник

A

Al in Maxwell's Demons
Roman Storozhenko
Насколько я знаю - адекватно оно не сможет работать так как не использует нативные (аппаратные фичи)
да я примерно к этому же и пришел.
если ставить таймаут типа единицы-десятки секунд - вопросов нет. но на единицах миллисекунд эта шляпа работать не хочет.
источник

RS

Roman Storozhenko in Maxwell's Demons
Al
да я примерно к этому же и пришел.
если ставить таймаут типа единицы-десятки секунд - вопросов нет. но на единицах миллисекунд эта шляпа работать не хочет.
А должна работать с длительности одного байта
источник

A

Al in Maxwell's Demons
Roman Storozhenko
А должна работать с длительности одного байта
да мне хотя бы 1-2-5 миллисекунд тишины отловить, чтоб счетчик сбросить и буфер очистить
источник

a

aum in Maxwell's Demons
источник

K

Kirill in Maxwell's Demons
А вот, допустим, в коллекторый движок вжаривается до 40А при старте. Это ему какой шунтирующий диод фигачить? На ампер ~60A что ли?
источник

jp

jon pedro in Maxwell's Demons
Al
привет.
проблема в том, что стандартный waitforreadyread не понятно работает.
я взвожу его на 1 мс.
срабатывает прервывние с ошибкой timeouerror, окей. взвожу по новой и так по кругу.

после 5-10 срабатываний он перестает работать и вместе с этим ком порт перестает реагировать на принятые данные.


у меня передается 128 байт каждые 8мс
Ты не тот метод используешь. Если я правильно помню, это блокиоующий метод, который ждёт определённое время пока не будет данных в ком порте. Если их нет определённое время, то код идёт дальше. Это что-то вроде делэя с более скорым выходом при получении данных
источник

jp

jon pedro in Maxwell's Demons
Как сказали выше, используй readybyte сигнал. Клади, например в очередь, и раз в какой-то промежуток времени доставай оттуда данные. Это если есть желание выводить в графики
источник

A

Al in Maxwell's Demons
jon pedro
Как сказали выше, используй readybyte сигнал. Клади, например в очередь, и раз в какой-то промежуток времени доставай оттуда данные. Это если есть желание выводить в графики
суть в том, что мне нужно принять 128 байт.

если по какой то причине их пришло не 128, а 127 и новые не приходят в течении Х мс, то нужно сбросить буфер ком порта и счетчики.
ну и сам таймаут тоже.

чтобы снова ждать 128 байт
источник

jp

jon pedro in Maxwell's Demons
Al
суть в том, что мне нужно принять 128 байт.

если по какой то причине их пришло не 128, а 127 и новые не приходят в течении Х мс, то нужно сбросить буфер ком порта и счетчики.
ну и сам таймаут тоже.

чтобы снова ждать 128 байт
Ну аналогично, запускаешь таймер при получении первой посылки, по истечении которого сверяешь нужное количество посылок.
источник

A

Al in Maxwell's Demons
jon pedro
Ну аналогично, запускаешь таймер при получении первой посылки, по истечении которого сверяешь нужное количество посылок.
таймер, имеется ввиду qtimer?
источник

jp

jon pedro in Maxwell's Demons
Al
таймер, имеется ввиду qtimer?
Т.е и того у тебя QTimer использовать надо и от него сигнал выдать, а в слоте от readybyte запустить, если это первая посылка
источник

A

Al in Maxwell's Demons
вручную на таймере городить - это кривая залупа.

пока комп ничего не делает - окей, всё работает. но как только запускаешь параллельно какой то другой софт (да хоть видео на ютубе) наярнают сыпаться таймаут эррор
источник

A

Al in Maxwell's Demons
короче хуйня самому прлить таймаут. хто дичайшие костыли
источник

jp

jon pedro in Maxwell's Demons
Почему костыль та?
источник

A

Al in Maxwell's Demons
jon pedro
Почему костыль та?
я ж говорю - пока выполняется только эта программа - всё норм. как только чуть комп нагрузишь - идет по пизде.
винда же.
источник

jp

jon pedro in Maxwell's Demons
Al
я ж говорю - пока выполняется только эта программа - всё норм. как только чуть комп нагрузишь - идет по пизде.
винда же.
У меня обычно по пизде идут приложения на qt когда я их начинаю перемещать
источник

A

Al in Maxwell's Demons
jon pedro
У меня обычно по пизде идут приложения на qt когда я их начинаю перемещать
не. не то, чтобы само приложение шло по пизде.

а именно времена уплывают, соответственно такой таймаут уже начинает больше вредить, чем помогать.
источник

jp

jon pedro in Maxwell's Demons
Al
не. не то, чтобы само приложение шло по пизде.

а именно времена уплывают, соответственно такой таймаут уже начинает больше вредить, чем помогать.
Так я же не про таймаут говорил
источник