А никто, случайно не сталкивался не с какими проблемами при сабже ? Открываю ком-порт функцией ядра CreateFile, через SetCommState и SetCommTimeouts устанавливаю параметры, читаю/пишу через ReadFile и WriteFile без оверлаппеда.
И все, казалось бы, нормально. Но! При перезагрузке винды происходит (причем, на разных мащинах по разному) один очень интересный глюк. При посылке устройством в ком-порт новых данных, таки приосходит прием данных, но совсем не тех, которые были посланы! Такое ощущение, что буфер изначально забит каким-то мусором, и вот этот мусор и лезет поперед нормальных данных. Функция PurgeComm не помогает. Все лечится чистой воды шаманством — предварительным запуском гипертерменала с приемом этого мусора посредством него. После чего, все телемаркет. И такое ощущени, что это только с 2000-й...
Никто с подобным не сталкивался ? Как все это можно вылечить ?
29.10.03 11:04: Перенесено модератором из 'C/C++' — ПК
Re: Программирование ком-порта под 2000-й.
От:
Аноним
Дата:
29.10.03 08:15
Оценка:
Просто перед началом работы очисти порт с помощью PurgeComm -- и станет тебе щастье
Здравствуйте, Аноним, Вы писали:
А>Просто перед началом работы очисти порт с помощью PurgeComm -- и станет тебе щастье
Так-то оно так, но вот цитататка из того моего письма — "Функция PurgeComm не помогает". Мы говорим про разные функции с одинм и тем же названием, или кто-то невнимательно что-то прочитал ?
Hello, atrides_sok!
You wrote on Wed, 29 Oct 2003 09:39:38 GMT:
А>> Просто перед началом работы очисти порт с помощью PurgeComm -- и станет А>> тебе щастье
as> Так-то оно так, но вот цитататка из того моего письма — "Функция as> PurgeComm не помогает". Мы говорим про разные функции с одинм и тем же as> названием, или кто-то невнимательно что-то прочитал ?
Может, это твой девайс хлам шлет? В ответ на поиск мышки на коме?
Best regards,
Sergey.
Posted via RSDN NNTP Server 1.8 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
Здравствуйте, Sergey, Вы писали:
as>> Так-то оно так, но вот цитататка из того моего письма — "Функция as>> PurgeComm не помогает". Мы говорим про разные функции с одинм и тем же as>> названием, или кто-то невнимательно что-то прочитал ?
S>Может, это твой девайс хлам шлет? В ответ на поиск мышки на коме?
Вот в том-то и дело, что девай шлет не хлам. Даже более того. Девайс изначально вообще может быть не подключен.
А вот, насчет мышки и у меня зародились подозрения. Собственно, это пока что моя главная версия — толи девайс (что ооооочень маловероятно) как-то не так реагирует на сканирование мыши, то ли сама 2000-я как-то не так это делает. Пока что, повторюсь, это основная версия.
Но, вот вопрос — я единственный, кто с таким столкнулся, или еще кто-то на подбные грабли наступаал ? И, действительно ли это глюк моего девайса, или глюк 2000-й.
Hello, atrides_sok!
You wrote on Wed, 29 Oct 2003 10:36:17 GMT:
as> Вот в том-то и дело, что девай шлет не хлам. Даже более того. Девайс as> изначально вообще может быть не подключен. А вот, насчет мышки и у меня as> зародились подозрения. Собственно, это пока что моя главная версия - as> толи девайс (что ооооочень маловероятно) как-то не так реагирует на as> сканирование мыши, то ли сама 2000-я как-то не так это делает. Пока as> что, повторюсь, это основная версия.
Я тебе еще одну версию подкину — это железо (чип multiIO/SuperIO/или как он там еще теперь называется) может глючить (BIOS чего-нибудь не так проинициализировал и т.д.). А для начала я б просто отключил сканирование мышки и посмотрел, что изменится.
as> Но, вот вопрос — я единственный, кто с таким столкнулся, или еще кто-то as> на подбные грабли наступаал ? И, действительно ли это глюк моего as> девайса, или глюк 2000-й.
Я на 2000 ни разу такого глюка не наблюдал — все всегда работало нормально. На чистой системе (без кучи необязательных драйверов) не проверял?
Best regards,
Sergey.
Posted via RSDN NNTP Server 1.8 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.
S>Я тебе еще одну версию подкину — это железо (чип multiIO/SuperIO/или как он там еще теперь называется) может глючить (BIOS чего-нибудь не так проинициализировал и т.д.). А для начала я б просто отключил сканирование мышки и посмотрел, что изменится.
Не исключаю эту версию. Ну, а как можно отключить это сканирование ?
S>Я на 2000 ни разу такого глюка не наблюдал — все всегда работало нормально. На чистой системе (без кучи необязательных драйверов) не проверял?
Вот в том-то и дело.
1. Что в данном случае подразумевается под необязательными драфверами ?
2. Повторюсь, на разных машинах все происходит по-разному.
3. Вчера земетил нечто подобные глюки уже в процессе работы — т.е. все нормально, программу закрываешь, потом снова запускаешь и имеешь это "счастье".
Hello, atrides_sok!
You wrote on Thu, 30 Oct 2003 04:52:16 GMT:
S>> Я тебе еще одну версию подкину — это железо (чип multiIO/SuperIO/или S>> как он там еще теперь называется) может глючить (BIOS чего-нибудь не S>> так проинициализировал и т.д.). А для начала я б просто отключил S>> сканирование мышки и посмотрел, что изменится.
as> Не исключаю эту версию. Ну, а как можно отключить это сканирование ?
S>> Я на 2000 ни разу такого глюка не наблюдал — все всегда работало S>> нормально. На чистой системе (без кучи необязательных драйверов) не S>> проверял?
as> Вот в том-то и дело. as> 1. Что в данном случае подразумевается под необязательными драфверами ?
Любой драйвер, без которого система может работать — звук, всякие Intel IDE Accelerator, разнообразные giveio/directio и т.п. Чем больше кода работает в kernel-mode, тем больше чудес в системе.
as> 2. Повторюсь, на разных машинах все происходит по-разному. as> 3. Вчера земетил нечто подобные глюки уже в процессе работы — т.е. все as> нормально, программу закрываешь, потом снова запускаешь и имеешь это as> "счастье".
portmon'ом смотрел? А осцилоскопом?
Best regards,
Sergey.
Posted via RSDN NNTP Server 1.8 beta
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.