Мое почтение всем. Для отладки по COM порту достал адаптер USB2Serial (Prolific PL2303). Скачал драйвер, установил. В WinObj вижу устройство \GLOBAL??\COM4 но прав на чтение/запись из устройства у меня нет. У группы администраторов, в которую я вхожу, есть права на изменение прав. Но изменить их с помощью WinObj/WinObjEx не получается. В WinObj checkbox'ы не активны, а WinObjEx говорит, что просто не может. Действие происходит в Win7 64. В чем может быть проблема? Заранее благодарен.
K10 Вариант. Но хочется понять, почему не работает. Главное, в интернете по этому поводу тихо, что заставляет меня думать, что это у меня что-то не так.
gorodon С драйвером все Ок. Подозреваю, что я открыл WinDbg, он открыл COM порт на эксклюзивное пользование, потому и возвращался access denied. Сейчас порт открывается нормально, WinDbg говорит, что слушает его, но все равно не работает. В схеме есть слабое звено: адаптер -- male, выход на мат. плате тоже male. Чтобы их соединить, я использую самодельный переходник. Переходник спаял один электронщик, но говорит, что мог и перепутать. В общем, меня сегодня ждут паяльные работы... Интересно отметить, что после установки параметров отладки, номер порта в менеджере устройств меняется. Т.е. примерно так: bcdedit /dbgsettings debug on bcdedit /dbgsettings serial debugport:1 baudrate:115200 Перезагрузка, WinDbg не реагирует. Загружается целевая машина, открываю менеджер устройств, вижу, что в системе есть COM2, а не COM1. Ладно, думаю, может невнимательно посмотрел. bcdedit /dbgsettings debug on bcdedit /dbgsettings serial debugport:2 baudrate:115200 Перезагрузка, WinDbg не реагирует. Загружается целевая машина, открываю менеджер устройств, вижу, что в системе есть COM1, а не COM2! Т.е. порт от меня начал бегать . Почему так происходит не очень понятно, но, судя по всему, COM1 (а потом COM2) уже использованы. Ну или что-то в этом роде. В общем, сегодня уделю внимание переходнику male-male...
Mika0x65 Немного не по теме. Этот переходник, либо драйвер с "придурью". Тестировали со своей программой обмена данными. На одних компах работает, на других "затыкается" обмен - помогает только перезагрузка. Винда 32-бита. Я могу спросить у электронщика как он решил проблему. По-моему поменял схему... В Интернете советуют переходники на другом микропроцессоре.
переходник должен быть перекрещенный, схем в инете до черту, можете посмотреть в Гуке (он там в старом издании на стр.666)). Иногда такие переходники глючит до безобразия, лучше не скупиться (из опыта) и купить pci плату расширения, если есть возможность. p.s. в силу тормазнутости последовательного порта советовал бы использовать для отладки firewire.
h0t, чел же написал: для отладки по СОМ-порту. Есть такие штуки, которые можно только через него родимого отлаживать... и это большое счастье. А бывает так, что для отладки есть только три лампочки...
Дело затянулось... В общем, переходник male-male достать удалось, завтра мне его привезут. Драйвер от Prolific действительно подл, т.к. отправил мою Win7 64 в BSoD при уходе в hibernation. Несмотря на WDF, WHQL. valterg Было бы интересно узнать, как электронщик с этим справился. h0t Мой вариант перекрещенный, все равно работать не хочет. Firewire штука хорошая, но придется искать PCMCIA плату, т.к. хостовая система -- бук. Тоже тот еще геморрой, но может так и сделаю.
Бывает, что и лампочек нет! Это же какие штуки нельзя в WinDBG в Win7 отлаживать по com но нельзя по firewire? Если Вы внимательно прочтете стандарт FireWire? то увидите что он умеет читать и писать в произвольные адреса памяти через DMA. А адаптер сам, без отладчика нормально работает? т.е. терминалом например. P.S. На ноутах часто есть FireWire.
h0t В моем, к сожалению, нет FireWire. Терминалом проверял так: соединил два компьютера по USB2Serial, запустил на обоих терминал. Созданный \\.\COM4 терминал успешно открыл (если устройство отсоединить, то объект устройства удаляется, открыть его невозможно). На втором компьютере терминал открыл \\.\COM1 (кажется), в общем, тот, который представлен в системе. Потыкал клавиши на обоих компьютерах -- глухо. Но, как я уже выше писал -- COM порт на целевой машине почему-то "бегает", меняя свой номер. Почему -- пока не знаю. Сегодня по идее должны привезти нормальный заводской переходник, буду пробовать.
h0t Да. Бегает на целевой машине, там где COM порт настоящий, на хосте пробовал вставлять в разные -- назначаются разные номера, но это не проблема. Видимо, драйвер использует номер USB порта в качестве базового. А вот почему бегает на целевой -- пока не ясно.
попробуйте ради прикола померить тестером уровни при открытом порте, должно быть +-5..15 (некоторые приемники не понимают +-5). И еще один вопрос: у Вас кабель полностью разведенный или только 3 провода? Выложите схему разводки Вашего провода, если есть возможность.
Ставьте тестер в режим прозвонки диодов (при замыкании щупов тестера он должен пищать). У вашего провода 2 контакт одного конца должен быть соединенным с 3 контактом другого конца 3 контакт одного конца должен быть соединенным с 2 контактом другого конца 1 и 6 и 4 на одном и том же разъеме (сам на себя) 7 на 8 на одном и том же разъеме (сам на себя) вот это проверьте в первую очередь
Топикстартеру: у вас нулмодемный кабель случайно не прямой? Д.б. перекрестный. усб то ком - умно редкостное, в связке с Windbg может падать драйвер сия изделия, вне зависимости от производителя, т.к. дрова там одни и те же(производитель чипа один). Купите лучше PCItoCOM. StLab, например. Кач-во платы и пайки получше, чем у большинства. Ну или есть если на стенде FireWire, то купите PCI планку с FireWire. To h0t: Семера вроде хост? ну это лирика... Но что делать, если на стенд... ну вообще не припаяли FireWire? Пример: микрокомпьютер на проце VIA(касса). У него 2 компорта - через один он общается с внешним миром, а через другой - отлаживаемся. И еще жалкие 35см шнурка FireWire, которые можно купить в магазинах, не идут ни в какое сравнение с например 20метровым шнуром COM, выполненному из витухи... Это я к вопросу о возможности поставить стенд в непосредственной близости в случае с FireWire.
Да нет, поймите я ни коим образом не говорю, что com это плохо, просто если есть возможность то firewire из опыта лучше, меня тормоза отладки по com достали на определенном этапе. Кабель для Firewir'a можно и длинее сделать, а ком на 20 метров не факт что потянет.)