Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.06.19;
Скачать: [xml.tar.bz2];

Вниз

Системное время   Найти похожие ветки 

 
Lamerr   (2003-03-19 15:08) [0]

Доброе время суток!
Имеется следующая проблема.
Отдельным потоком, постоянно работающим, осуществляется чтение данных с АЦП с частотой 5 кГц.
Каждой порции данных соответствует время их получения, которое определяется процедурой Time.
Примерно так:
begin
while not Terminated do
begin
GetData{берем данные с карточки}
CurTime:=Time{собственно определяем время}
SaveData{сохраняем CurTime и данные с АЦП в файл}
end;
end;

После завершения работы проги выясняется, что значения CurTime изменяются раз в секунду!
То есть имеется куча данных (5000) с однм и тем же значением времени.
На сколько я знаю системное время должно обновляться через каждые 55 мсек, а никак не через секунду.
Как можно решить эту проблему?
Или подобная задержка обновления системного времени связана с тем, что чтение данных осуществляется из потока?
Быть может существует иной, более надежные способ получения времени, нежели Time?
Буду очень вам благодарен, если подкините ссылки на доки по устройству системного таймера и работе с ним.
Заранее спасибо.


 
Mnch   (2003-03-25 16:13) [1]

используй функцию gettickcount - она считает кол-во тиков, натикавших с момента включения машины


 
Lamerr   (2003-03-26 13:50) [2]

Про это я знал, но, быть может, есть способ поизящнее?


 
Jel   (2003-03-26 14:31) [3]

Значение типа tDateTime определяет время с точностью до _секунды_ а посему и обновляться будет раз в _секунду_. Все-таки GetTickCount.


 
Anatoly Podgoretsky   (2003-03-26 16:09) [4]

Ошибка в SaveData


 
Lamerr   (2003-04-15 09:50) [5]

Извените за долгое отсутствие. Рубанули сеть.
Так вот все оказалось проще. Время в формате TTime оказалось нормальным!!! Проблема оказалась в LongTimeFormat.
Так что вопрос насчет обновления раз в секунду снимается.

Пробовал GetTickCount... Обновляется, по-моему, также раз в 55 мс.

To Anatoly Podgoretsky: Спасибо, вы оказались ближе всех. :о)



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.06.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
1-60132
ewgeny
2003-06-06 13:59
2003.06.19
Как вызвать в DLL метод объекта приложения ?


1-60224
killer
2003-06-04 17:27
2003.06.19
как сделать справой стороны TMainMenu картинку?


4-60467
Vitaliy
2003-04-21 02:00
2003.06.19
Рисовать на иконке в трее


14-60336
Дмитрий К.К.
2003-06-02 05:56
2003.06.19
Именинники 2 июня


14-60352
TRh
2003-05-28 15:42
2003.06.19
Восстанавливаем исходники





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский