Форум: "Начинающим";
Текущий архив: 2007.02.25;
Скачать: [xml.tar.bz2];
ВнизТочное отслеживание времени с точностью 10 миллисекунд Найти похожие ветки
← →
Darvin © (2007-02-08 15:13) [0]Здравствуйте.
Мне необходимо, чтобы происходили определенные события с точностью 10 миллисекунд. Стандартный таймер генерирует события реже, если поставить интервал 10. Как можно решить эту проблему?
← →
palva © (2007-02-08 17:07) [1]Для этого ставят другую операционную систему. Реального времени. Типа QNX.
← →
Efir (2007-02-08 17:30) [2]Ну почему же, SetTimer вполне способен генерировать события с точностью до 5 мс (ну по крайней мере до 10 точно).
← →
Kolan © (2007-02-08 17:40) [3]> Ну почему же, SetTimer вполне способен генерировать события
> с точностью до 5 мс (ну по крайней мере до 10 точно).
Поставь на Pentium II, запусти кучу программ и посмотрим успеет или нет...
← →
Efir (2007-02-08 17:42) [4]
> Kolan © (08.02.07 17:40) [3]
А кто сказал, что его нужно запускать на Pentium II с кучей программ?
← →
Kolan © (2007-02-08 17:43) [5]> [4] Efir (08.02.07 17:42)
>
> > Kolan © (08.02.07 17:40) [3]
>
>
> А кто сказал, что его нужно запускать на Pentium II с кучей
> программ?
А я грю что Цштвщцы не ОС реального времени. Она тебе ничего не гарантирует...
← →
Kolan © (2007-02-08 17:43) [6]> Цштвщцы
Windows
← →
Правильный Вася (2007-02-08 18:19) [7]пробуй мультимединый таймер он точнее
ps зачем такая точность?
← →
GrayFace © (2007-02-08 18:24) [8]Efir (08.02.07 17:30) [2]
Ну почему же, SetTimer вполне способен генерировать события с точностью до 5 мс (ну по крайней мере до 10 точно).
У него ограничение 10мс.
← →
Efir (2007-02-08 21:55) [9]
> GrayFace © (08.02.07 18:24) [8]
У меня при выставлении интервала на 0 таймер срабатывал 200 раз в сек. А вот у дельфийского компонента точно ограничение 10 мс.
← →
DrPass © (2007-02-09 01:05) [10]
> меня при выставлении интервала на 0 таймер срабатывал 200
> раз в сек. А вот у дельфийского компонента точно ограничение
> 10 мс.
Да ну? А в код дельфийского компонента ты не заглядывал? Загляни, прежде чем ерунду говорить.
← →
Германн © (2007-02-09 01:34) [11]
> А вот у дельфийского компонента точно ограничение 10 мс.
Это не у "дельфийского компонента" TTimer, а у системного таймера, который использует данный компонент. И не всегда, а только в линейке NT. В 9х-системах данное ограничение составляет ~55 мс.
← →
ЮЮ © (2007-02-09 05:30) [12]И, всё-таки, главный вопрос - что это за событие и зачем так часто? А что-то ещё программа делает? А успеет сделать, если добъешься желаемого?
← →
Efir (2007-02-09 10:47) [13]
> Да ну? А в код дельфийского компонента ты не заглядывал?
> Загляни, прежде чем ерунду говорить.
Да я прекрасно знаю, что TTimer использует SetTimer, но однако ж результаты практических испытаний показывают разные возможности (по прайней мере в ХР). Я б не говорил эту ерунду, ели бы сам не проверял.
← →
smaller (2007-02-09 12:09) [14]Мультимедийный таймер - гарантированное решение проблемы (разрешение до 1 мс).
Только не во всяком хелпе можно найти его описание - мне как то объясняли, где искать, да забыл, хотя сам таймер использую постоянно.
← →
Darvin © (2007-02-09 12:27) [15]>smaller (09.02.07 12:09) [14]
А "Мультимедийный таймер" это что за таймер? Где о нем можно почитать?
>ЮЮ © (09.02.07 05:30) [12]
Нужно анимировать процесс, происходящий в реальном времени. Шаг анимации должен быть 10 мс.
Я пробовал поставить Intreval = 1, картинка сменяется чаще, чем 10 раз в секунду. А нуюно, чтоб было ровно 10 раз в сек.
← →
DiamondShark © (2007-02-09 12:36) [16]
> А "Мультимедийный таймер" это что за таймер? Где о нем
> можно почитать?
тут читать
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_multimedia_timers.asp
> Шаг анимации должен быть 10 мс.
> А нуюно, чтоб было ровно 10 раз в сек.
Ы... Либо я чего-то не понял, либо кто-то в школе арифметику не учил.
10 раз в секунду -- это шаг 0.1 сек
а 10 мс -- это 0.01 сек
← →
Darvin © (2007-02-09 12:38) [17]> А нуюно, чтоб было ровно 10 раз в сек.
Конечно, 100 раз в сек. Моя ошибка ;-)
← →
Думкин © (2007-02-09 12:44) [18]
> картинка сменяется чаще, чем 10 раз в секунду
> Конечно, 100 раз в сек. Моя ошибка ;-)
Это для визуализации в реальном времени или как? Человеку больше 25 кадров вроде не катит.
← →
Darvin © (2007-02-09 13:00) [19]>Думкин © (09.02.07 12:44) [18]
Анимация сигнала с частотой дискретизации 100 Гц
← →
DiamondShark © (2007-02-09 13:19) [20]
> Darvin © (09.02.07 13:00) [19]
Это не значит, что анимировать надо пренепременно с частотой 100 к/сек
Человек всё равно не способен реагировать на изменения с такой частотой.
Кроме того, процесс анимации -- он "тяжёлый", и пытаться осуществить его синхронно с обработкой сигнала -- плохая затея.
Лучше поступить так.
1. Идёт накопление сигнала синхронно с источником.
2. Таймер генерирует события для отрисовки кадров. При отрисовке кадра рассчитываются и рисуются ВСЕ изменения, которые накопились со времени отрисовки последнего кадра. Кадр рисуется.
← →
Amoeba © (2007-02-09 13:23) [21]Может эта статья поможет:
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=434
← →
Darvin © (2007-02-09 13:52) [22]>Amoeba © (09.02.07 13:23) [21]
Спасибо за ссылку. Попробую.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.02.25;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.044 c