Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.03.2013, 18:39   #11
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
1 мс
1- вам не нужно работать на таких скоростях с EEPROM
2- ваши 1мс-задержки будут плавать, не ОС РТ
3- слипы замените таймером и формируйте временную последоватеьность в виде пакета из которого по тикам будете выгребать текущее значение сигнала на выход
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 17.03.2013, 20:58   #12
pet-rovich
Пользователь
 
Регистрация: 02.03.2013
Сообщений: 10
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
1- вам не нужно работать на таких скоростях с EEPROM
2- ваши 1мс-задержки будут плавать, не ОС РТ
На счет скорости это понятно это я так для экскримента. Вот переделал все пошлоВложение 1
Цитата:
Сообщение от raxp Посмотреть сообщение
2- ваши 1мс-задержки будут плавать, не ОС РТ
3- слипы замените таймером и формируйте временную последоватеьность в виде пакета из которого по тикам будете выгребать текущее значение сигнала на выход
а можно в виде кусочка кода? чет у меня не получяется
Вложения
Тип файла: rar Test2.rar (178.0 Кб, 13 просмотров)
pet-rovich вне форума Ответить с цитированием
Старый 17.03.2013, 21:44   #13
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
это я так для экскримента. Вот переделал все пошлоВложение 1
про RASAPI это вы зарапортовались
Цитата:
'********************************** **********************************
'* Написано 25.04.2005 году (ARTPROG) *
'* e-mail: hmaakg@rambler.ru *
'********************************** **********************************
'* О сколько нам открытий чудных, готовит юзера Винда! *
'********************************** **********************************
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 19.03.2013, 20:27   #14
pet-rovich
Пользователь
 
Регистрация: 02.03.2013
Сообщений: 10
По умолчанию

Подскажите пожалуйста как переделать Delay чтобы можно было в 10Mks выставить, а то пробовал разные значения подставлять но все равно в мили секундах получается.
procedure TForm1.Delay(Value: Cardinal);
var
F, N: Cardinal;
begin
N := 0;
while N <= (Value div 10) do
begin
SleepEx(1, True);
Application.ProcessMessages;
Inc(N);
end;
F := GetTickCount;
repeat
Application.ProcessMessages;
N := GetTickCount;
until (N - F >= (Value mod 10)) or (N < F);
end;
pet-rovich вне форума Ответить с цитированием
Старый 19.03.2013, 20:55   #15
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...меньше 10 мс у вас не получится, мультимедийным таймером можно меньше, но это будет железозависимое решение.

И снова к вопросу о скоростях, накой вам 1 мкс для последовательной памяти?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 19.03.2013, 21:00   #16
pet-rovich
Пользователь
 
Регистрация: 02.03.2013
Сообщений: 10
По умолчанию

Ну не 1мкс а хотя бы 10мкс а то даже с 1мс 2mb память до утра читать будет
pet-rovich вне форума Ответить с цитированием
Старый 19.03.2013, 21:31   #17
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...слипы поубирайте и перейдите на мультимедийный таймер и не будет до утра ...и не обращайтесь к элементам формы, в потоке делайте ...впрочем, таймер и есть поток.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 19.03.2013, 21:52   #18
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Цитата:
Сообщение от pet-rovich Посмотреть сообщение
Подскажите пожалуйста как переделать Delay чтобы можно было в 10Mks выставить, а то пробовал разные значения подставлять но все равно в мили секундах получается.
Только переходить на другую ОС.
В Windows погрешность установки задержки (да и просто "квант" задержии) обычно 15-20 мс.
При этом нельзя гарантировать, что задержка, установленная в 1 мс не растянется до 30-50 мс.

Установкой мультимедийного таймера, конечно "квант" можно уменьшить примерно до 1 мс, но на худший случай этот никак не скажется - 1 мс все равно может растянуться на 30-50 мс.

Если принципиально нужны меньшие интервалы, они должны формироваться аппаратно.

Последний раз редактировалось s-andriano; 19.03.2013 в 21:56.
s-andriano вне форума Ответить с цитированием
Старый 19.03.2013, 22:00   #19
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

...не нужны там меньшие интервалы, хотя 100-200 мкс в самый раз. Через LPT и проводковый программатор 4-мегабайтный EEPROM у меня сливался за 5-10 минут через консольный SPIPGM от чеха (вот, вот, плавает, причем на разных машинах). Впрочем, QueryPerformanceCounter.

Дополнение

http://support.microsoft.com/kb/172338
Код:
procedure delay_microsec(val: int64);
var Freq, TimeImp, TimeImpNow, TimeElapsed: int64;
begin
 QueryPerformanceFrequency(Freq);
 QueryPerformanceCounter(TimeImp);
 repeat
  QueryPerformanceCounter(TimeImpNow);
  TimeElapsed:= ((TimeImpNow - TimeImp) * 1000000) div Freq;
 until TimeElapsed > val
end;
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation

Последний раз редактировалось raxp; 19.03.2013 в 22:25.
raxp вне форума Ответить с цитированием
Старый 25.03.2013, 19:26   #20
pet-rovich
Пользователь
 
Регистрация: 02.03.2013
Сообщений: 10
По умолчанию

Привет это опять я. Вобщем промучучился все эти дни, не могу получить АСК от памяти после считывания первого адреса. всегда приходит ''1'' и на этом останавливается. А вот если сам отправляю ''0'' то адреса считываются нормально, но вот вопрос как я узнаю что считал последний адрес?
Вложения
Тип файла: rar Test3.rar (185.4 Кб, 13 просмотров)
pet-rovich вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что используется для создания программ с графическим интерфейсом на с++? DIQUON Общие вопросы C/C++ 4 10.12.2012 00:57
delphi ==>сурьёзный софт для офиса(например CRM-система) art-programs Софт 7 20.05.2010 15:39
Софт для верски yarilo HTML и CSS 6 25.01.2010 19:43