Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 | 2 |

 

  Вопрос: Как программно организовать задержку в 0,25ms Добавлено: 06.01.06 10:17  

Автор вопроса:  Andr
Как программно организовать задержку в 0,25ms?

Ответить

  Ответы Всего ответов: 18  

Номер ответа: 1
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #1 Добавлено: 06.01.06 11:20
Если гарантированно - никак.
Если на vb - никак.
Наиболее близко - определить частоту процессора, посчитать период одного такта и выполнить некоторое количество инструкций, для которых суммарное количество тактов на их выполнение равно 250 мкс.

Ответить

Номер ответа: 2
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #2 Добавлено: 06.01.06 14:49
Что тебе это даст? У мя например на моём ЖК токо матрица 25 мс. ну пускай на трубке чуть бычтрее реагируют, но 0,25 ms :))) как ??? зачем??? :)

Ответить

Номер ответа: 3
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #3 Добавлено: 06.01.06 15:33
А при чём тут твой ЖК? Или ЭЛТ?
Может надо в порт выводить данные с определенной частотой.

Ответить

Номер ответа: 4
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #4
Добавлено: 06.01.06 15:45
Что тебе это даст? У мя например на моём ЖК токо матрица 25
мс.

Hint: не все программеры делают игры, некоторые и нужными делами
занимаются.

Ответить

Номер ответа: 5
Автор ответа:
 someone



Вопросов: 215
Ответов: 1596
 Web-сайт: 123
 Профиль | | #5
Добавлено: 06.01.06 15:45
вопрос неточно сформулирован.
может надо задержку в программе?
тогда Sleep 0.25

Ответить

Номер ответа: 6
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #6 Добавлено: 06.01.06 16:07
Hint: не все программеры делают игры, некоторые и нужными делами
занимаются.
Какие игрушечки, только серёзные вещи! :)

И всётаки интересно, для какой действительно цели, нужна такая маленькая задержка...

Ответить

Номер ответа: 7
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #7
Добавлено: 06.01.06 22:48
если это в цикле, то можно каждые 4 повтора делать задержку в 1 мс...
а вообще то время поддерживается в 100 наносекундных интервалах, так что как то можно

Ответить

Номер ответа: 8
Автор ответа:
 «UL.eXe»



ICQ: 197.895.916.247 

Вопросов: 72
Ответов: 540
 Профиль | | #8 Добавлено: 06.01.06 23:12
2 hacker хватит праздновать.. :)

Ответить

Номер ответа: 9
Автор ответа:
 Andr



Вопросов: 3
Ответов: 7
 Профиль | | #9 Добавлено: 07.01.06 02:35
Помню, делал такое для i8080,..ВЕ48,8051 и т.д. на стендах, на ассемблере(лет десять тому ..).Сейчас хотелсь бы сделать такой стенд (эмулятор MCS51, AVR, ARM..)на базе винды. Понимаю сам,что при помощи языка в.у.,типа VB врятли что получится с этой задержкой!(такт записи байта во внешний регистр через LPT),а 250us это так..мах. нужно меньше! полюбому нужен ASM или может С.Если знаешь как,подсоветуй на avglab@ukr.net. Благодарю.

Ответить

Номер ответа: 10
Автор ответа:
 Andr



Вопросов: 3
Ответов: 7
 Профиль | | #10 Добавлено: 07.01.06 02:41
Помню, делал такое для i8080,..ВЕ48,8051 и т.д. на стендах, на ассемблере(лет десять тому ..).Сейчас хотелсь бы сделать такой стенд (эмулятор MCS51, AVR, ARM..)на базе винды. Понимаю сам,что при помощи языка в.у.,типа VB врятли что получится с этой задержкой!(такт записи байта во внешний регистр через LPT),а 250us это так..мах. нужно меньше! полюбому нужен ASM или может С.Если знаешь как,подсоветуй на avglab@ukr.net. Благодарю.

Ответить

Номер ответа: 11
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #11 Добавлено: 07.01.06 04:01
2 hacker хватит праздновать.. :)

Нии... боже упаси! Кока-кола форевер! :)

Ответить

Номер ответа: 12
Автор ответа:
 Andr



Вопросов: 3
Ответов: 7
 Профиль | | #12 Добавлено: 07.01.06 04:47
Насчет ASM - подумаю и насчет С тоже.. Нах. задержка ЖК и игры - это все х-ня, нужен строб не более 0,25ms на линии "STROBE" (выв.1 LPT порта) для записи байта формируемого в регистре по аддддддресу 378 (или 888,если dec), при этом линии (INIT,SELINIT порта 37A) должны формирвать адрес одного из четырех внешних регистров.

Напр. записать Н55 во внешний регистр 2:
                1.Записать в порт 378 значение Н55
                2.Записать в порт 37А значение Н0А
                3.!Выдержать задержку для записи!
                4.Изменить значение порта 37А Н0А на Н03
                5.Обнулить порт 378
  
Так что эт задержка пыздэц как мне необходима.

Ответить

Номер ответа: 13
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #13 Добавлено: 07.01.06 06:57
а как насчёт задержки хотябы 1 мс? почему именно 0,25 ?

Ответить

Номер ответа: 14
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #14
Добавлено: 07.01.06 09:30
Могу посоветовать SetPriorityClass c REALTIME_PRIORITY_CLASS и SetThreadPriority c THREAD_PRIORITY_TIME_CRITICAL, а в программе цикл с RDTSC и предварительно рассчитанной частотой проца - даже ядро реалтаймовой оси не обеспечит тебе такой латентности.

Ответить

Номер ответа: 15
Автор ответа:
 HOOLIGAN



Вопросов: 0
Ответов: 1066
 Профиль | | #15 Добавлено: 07.01.06 12:13
Andr

Возьми Kmd3 или KmdKit на wasm.ru, посмотри в примерах бипер: там выводится в порт спикера звук, частота которого (и соответственно период) задаются программно. 250 мкс - это 4 кГц, такой звук формируется без проблем.

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам