![]() |
|
|
![]()
|
|
| mishapk |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 26.1.2012 Репутация: нет Всего: нет |
В Com-порт при помощи буфера размером 320 байт записываются данные в цикле.
Необходимо чтобы за одну секунду происходило ровно 50 записей в порт. Но при изменении значения Sleep(x) получаем следующие значения: x=16 -> 31(зап.в сек) x=15 -> 73 (зап.в сек) Подскажите как добиться 50 записей в секунду? Или настройки порта или Более точный Sleep? |
|||
|
||||
| mishapk |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 26.1.2012 Репутация: нет Всего: нет |
Более менее похожее сделал следующим образом:
1. Создал переменную и функцию
2. Добавил в цикл - цикл паузы c минимальным Sleep(1) без него идет загрузка ядра процессора до 15%
3. И самое главное запустил мультимедийный таймер перед началом работы цикла.
P.S. Пробовал обычный таймер тоже ведет себя не предсказуемо как и простой Sleep(15-16) и даже хуже. |
||||||
|
|||||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 48 Всего: 223 |
Windows не Real Time система. Т.е. она вполне может усыпить вашу программу на пару секунд, если у нее случится что то свое, более важное Можно только более или менее приблизится к заветным 50ти записям в порт в секунду, но будьте готовы к тому, что периодически могут возникать 'выбросы'. Для начала переведите свою программу в real time (SetPriorityClass и SetThreadPriority), а потом уже и Sleep и/или multimedia timer Только будьте готовы к тому, что если ваше приложение повиснет где то в цикле, то вам придется перезапускать компьютер |
|||
|
||||
| Riviero |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 136 Регистрация: 25.3.2010 Репутация: 2 Всего: 3 |
А если посылать 50 пакетов, а уже потом ждать до секунды?
|
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |