| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Малые временные задержки (нс и мкс) |
| Автор: Fishhook 21.4.2006, 00:23 |
| Кто-нибудь, подскажите, как программно организовать временную задержку на нужное количество наносекунд. |
| Автор: Void 21.4.2006, 00:29 |
| Без указания ОС вопрос бессмысленен. AFAIK, на такие задержки способны только драйверы режима ядра и RTOS (и то не все, наверное). |
| Автор: cardinal 21.4.2006, 01:30 |
| Так что давай делай непрограммно (см. электроника). |
| Автор: Step 21.4.2006, 02:32 |
| минимальное что возможно это на основе тактовых импульсов QueryPerformanceFrequency QueryPerformanceCounter |
| Автор: Void 21.4.2006, 17:58 |
| Step, замерить-то время можно очень точно. Но винда никогда не даст гарантии, что твой поток получит процессорное время через заданное число микросекунд, даже о миллисекундах не всегда можно говорить. |
| Автор: cardinal 21.4.2006, 18:02 |
| Fishhook, напиши зачем тебе это, может что другое подскажут... |
| Автор: Fishhook 22.4.2006, 01:23 |
| Пишу диплом на тему сопряжения с компом внешнего устройства через LPT порт. На моей плате есть довольно тормозная микросхема - оптопара-аналоговый ключ на основе полевого транзистора (обнуляет заряд на конденсаторе). Время ее установки и сброса - 25 мкс. Это при том, что все остальные микрухи (операционники, компараторы, демультиплексор, регистры и т. д.) не дают задержку прохождения больше 100 нс. Вот мне и нужно - провести необходимые операции, подать на диод оптопары нужное напряжение и ждать, пока полевик соизволит открыться. Операционка ДОС или W98 (драйвер NTport мне под XP обуздать не удалось :-(). |
| Автор: cardinal 22.4.2006, 14:05 |
И сколько это наносекунд еще раз? |
| Автор: Fishhook 22.4.2006, 18:14 |
| 25000 нс или 25 мкс |
| Автор: cardinal 22.4.2006, 20:21 |
| Попробуй это http://www.sources.ru/NonCGI/Forum2/HTML/003210.html |
| Автор: Fishhook 23.4.2006, 03:08 |
| Спасибо, попробую |