Часовой пояс: UTC + 3 часа




Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 9 
  Пред. тема | След. тема 
В случае проблем с отображением форума, отключите блокировщик рекламы
Автор Сообщение
 

На платформе РС нужно орабатывать тайминги в несколько
микросекунд. Готовых функций для этого я не припомню.
Гуру подскажите как это грамотно сделать.



Партнер
 

Member
Статус: Не в сети
Регистрация: 18.10.2004
Откуда: САО
вообще-то готовых функций полно. Нажмите F1 для справки ;)

Добавлено спустя 1 минуту, 38 секунд:
Да, и я надеюсь у Вас стоил система реального времени, а иначе микросекунды Вам недоступны, минимум десятки миллисекунд, не меньше.


 

Advanced member
Статус: Не в сети
Регистрация: 30.08.2003
Откуда: Санкт-Петербург
Leonid#
для начала в какой среде (ОС и среда программирования) предполагается это делать?

_________________
{:€ дед в законе :-) нородный окодемег
почетный пользователь OpenSuSE 11.3
Ремонт и модернизация ноутбуков IBM (Lenovo) ThinkPad


 

4Zalom&Root
Система - WIN virtual mode, язык Delphi+asm или MVC+asm. Обычное
приложение винды. Тайминги должны отрабатываться по принципу
не меньше, так что real time система не обязательна. Мне понятно
как это сдепать программно. Но хотелось бы получить тайминги
от HARDа платформы PC. А как?
PC Типа опрос такого-то порта не быстрее N микросекунд.


 

Member
Статус: Не в сети
Регистрация: 18.10.2004
Откуда: САО
Leonid#
Не понимаю, как это real time система не обязательна, если в win таймер срабатывает примерно 18,2 раза в секунду, то есть примерно раз в 55 миллисекунд?


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Вот процедура для задержки на 1us
Код:
procedure Delay1us;
var pc1, pc0,pf:LARGE_INTEGER;
    ticks:int64;
begin
     if (QueryPerformanceFrequency(int64(pf))) then
     begin
          ticks:= pf.QuadPart * dwNumCycles div 1000000;
          QueryPerformanceCounter(int64(pc0));
          repeat
                QueryPerformanceCounter(int64(pc1));
          until not (pc1.QuadPart - pc0.QuadPart < ticks);
     end;
end;


 

4Ray Adams
Спасибо это то, что нужно.


 

Member
Статус: Не в сети
Регистрация: 14.01.2004
Откуда: Киев, Украина
Ray Adams а пропедаливать такой метод не будет случайно?
QueryPerformanceCounter - это не шутки :-)

_________________
Ку ку


 

Advanced member
Статус: Не в сети
Регистрация: 09.06.2003
Откуда: USSR
Daemon Не будет, метод проверенный не только мной и используется в некоторых популярных утилитах.


Показать сообщения за:  Поле сортировки  
Начать новую тему Новая тема / Ответить на тему Ответить  Сообщений: 9 
-

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB | Kolobok smiles © Aiwan