Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.19;
Скачать: CL | DM;

Вниз

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

 
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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
3-60094
sergei12r
2003-05-29 06:09
2003.06.19
связи таблиц


1-60187
aleman
2003-06-05 10:05
2003.06.19
Как закрасить сектор круга?


14-60359
- = LAN = -
2003-06-01 15:34
2003.06.19
Как зайти на нерасшаренный диск в локалке?


6-60299
Zheka
2003-04-18 12:01
2003.06.19
Передача данных с досовской машины на Виндовозную


6-60291
пробник
2003-04-17 10:41
2003.06.19
Как определить текущую директорию в CGI?