Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Хмм...

Отправлено Xan 15 февраля 2009 г. 20:48
В ответ на: Ответ: отправлено пользователем уфо 15 февраля 2009 г. 20:32

У меня вот так:

CommTimeOuts[0] = MAXDWORD; // ReadIntervalTimeout
CommTimeOuts[1] = 0; // ReadTotalTimeoutMultiplier
CommTimeOuts[2] = 0; // ReadTotalTimeoutConstant
CommTimeOuts[3] = 1; // WriteTotalTimeoutMultiplier
CommTimeOuts[4] = 1; // WriteTotalTimeoutConstant

Но я от двух источников не передавал.

А вот ответы на принятые байты делал, 10...20 мс получалось.

-----

Ну, можно так сделать:
Создать новый тред, поставить ему TimeCritical.

Ну, что-то вроде:

void MyThread(void)
{
SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_TIME_CRITICAL);
while (MyThreadFlag == 1)
{
Sleep(10);
if (есть что передавать) WriteFile(...);
}
MyThreadFlag = 0;
ExitThread(0);
}

MyThreadFlag -- чтобы выйти из треда, когда не нужен.


Составить ответ | Вернуться на конференцию.

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
умножьте 2 на три:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru