|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
27.02.2020, 04:19 | #1 |
Пользователь
Регистрация: 19.12.2012
Сообщений: 49
|
Работа с COM
Добрый день. Пытаюсь послать сразу несколько команд на устройство.
Но при отправке на устройство приходит это все как 1234. А хотелось бы 1 потом ответ от устройства, 2 ответ от устройства и т.д Что я делаю не так? Использую компонент ComPort Library version 4.10 Код:
|
27.02.2020, 05:18 | #2 |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
Так это от устройства зависит - может ли оно читать команды по одной
Или организуйте задежку до прихода ответа |
27.02.2020, 05:22 | #3 | |
Пользователь
Регистрация: 19.12.2012
Сообщений: 49
|
Цитата:
ComPort1.WaitForEvent(Events, Event.Handle, 5000); не помогает.. Просто есть офф софт, который отправляет команды и они уходят как: 1 2 3 4 А не как 1234 в моей программе.. |
|
27.02.2020, 05:53 | #4 |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
Понимаете, com-порту пофигу. Вопрос только в задержках.
Если железо умеет читать из порта по одному байту, вообще никаких проблем А тут явно оно вычитывает всё, что успело прибежать А Вы уверены, что софт не пишет, например, #13 после каждой команды? |
27.02.2020, 06:00 | #5 | |
Пользователь
Регистрация: 19.12.2012
Сообщений: 49
|
Цитата:
1 Если при отправке в свой программе я дописываю #13 То получаю Отправку вида: 1 [len=1] |
|
27.02.2020, 06:16 | #6 | |
Пользователь
Регистрация: 19.12.2012
Сообщений: 49
|
Цитата:
Отправил <CMD REGIME 192837465><NUL> Получил <CMD REGIME 192837465><NUL> Отправил XYZ ttt<NUL> Получил XYZ FALSE<NUL> Отправил XYZ 0<NUL> Получил XYZ FALSE<NUL> Если отправлять из моей программы с #13 Отправил <CMD REGIME 192837465><NUL> [len=23] Отправил XYZ ttt<NUL> [len=8] Отправил XYZ 0<NUL> [len=6] Получил <CMD REGIME 192837465><NUL> Если отправлять из моей программы без #13 Отправил <CMD REGIME 192837465><NUL>XYZ ttt<NUL>XYZ 0<NUL> Получил <CMD REGIME 192837465><NUL> |
|
27.02.2020, 10:02 | #7 |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
Так не отправляйте команду, пока не придёт ответ.
Ответы как читаются, асинхронно? Сделайте очередь, по приходу ответа смотрите, есть ли команда в очереди, если есть - отправляйте |
28.02.2020, 01:35 | #8 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
Amilman, у Вас протокол обмена с устройством, предоставленный изготовителем, есть в наличии?
Или проект основан на энтузиазме и каком-нить софте перехватчике пакетов?
I am not a wizard, I am just learning.
|
28.02.2020, 07:41 | #9 |
Пользователь
Регистрация: 19.12.2012
Сообщений: 49
|
Энтузиазм и софтина перехватчик Advanced Serial Port Monitor. Просто к нам в компанию пршел клиент с прибором который запоролен. А предыдущая компания просто не сообщает пароль для входа чтобы сбросить настройки прибора. Офф софтина предлагает ввести в ручную пин код от прибора и если он неверен, то прибор отключает свой COM на 1 минуту. Вот я хотел чтобы моя софтина перебрала пароли для входа в устройство автоматически.
|
28.02.2020, 15:49 | #10 |
Участник клуба
Регистрация: 21.11.2007
Сообщений: 1,063
|
Так а разве нет возможности связаться с техподдержкой изготовителя прибора?
Наверняка предусмотрен сброс на дефолт, типа как в роутерах. А так, сами представте. Нужно угадать протокол обмена, чтоб железка воспринимала строку как команду, а не как мусорные помехи на линии. Софт который будет генерить пароли методом перебора комбинаций реализовать возможно. Но представте сколько понадобится времени, с ожиданием в одну минуту перед вводом следующей комбинации. Жуть
I am not a wizard, I am just learning.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Лабораторная работа(очень простая) Структуры, работа с файлами | yurda | Фриланс | 2 | 11.06.2016 08:44 |
Работа с ems api: корректная работа только при явном указании города | mrdemkin | JavaScript, Ajax | 3 | 02.03.2015 18:23 |
Работа с webbrowser - Фреймы, работа с конкретным феймом в фрейме | NewDelphi | Фриланс | 2 | 08.10.2009 11:00 |