реклама на сайте
подробности

 
 
 
Closed TopicStart new topic
Sergey-Ufa
сообщение Aug 21 2014, 05:19
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 27-10-13
Из: Уфа
Пользователь №: 78 917



Доброго всем дня!
Давно занимаюсь связью устройств на микроконтроллерах с компьютером. Софт для МК и ПК пишу сам, хотя и не профессиональный программист. Много лет никаких проблем со связью не было. Но потом начались глюки. Прибор лет 6 проработавший без проблем с разными компьютерами вдруг отказался работать с ноутбуком через адаптер USB-COM, хотя через этот же адаптер нормально работает другой прибор заводского изготовления. Команды с ноутбука на прибор проходят, а данные с прибора на ноут нет. Переустановил софт на новейший стационарный комп с нормальным СОМ-портом - точно такая же история. СОМ-порт проверил подключением того же заводского прибора. Только когда нашли старенький 12 летний комп все пошло нормально. Через некоторое время аналогичный случай уже с другим прибором с точно такими же результатами. Данные от компа идут, а в комп нет. Из трех компьютеров все заработало только с одним. На всех моих приборах стоят драйвера MAX232 или ADM232.
Когда то краем уха слышал, что на новых компах СОМ-порты якобы работают с зауженным диапазоном логических уровней, но что-то верится с трудом. Кто что может подсказать?

Сообщение отредактировал Sergey-Ufa - Aug 21 2014, 05:22
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Aug 21 2014, 06:09
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Взять вольтметр и измерить напряжение на 3 ноге разъема. По стандарту должно быть -6...-12 В. По тому же стандарту приемник должен воспринимать -3...-12 В, однако все встречавшиеся приемники срабатывали уже при напряжении в районе +1 В.
Попадались китайские USB-переходники с выходом TTL. Там отрицательных напряжений на ногах нет. Но даже если у вас такой, то это не ваш случай, потому что ваш прибор передачу компьютера слышит. Вас не слышит компьютер, хотя у вас вроде как все должно быть хорошо с передатчиком.

Для начала попробуйте замкнуть 2 и 3 ноги вашего переходника и проверьте, что компьютер слышит хотя бы сам себя при помощи любой терминальной программы (Putty, Br@y terminal и т.д.). Хотя... У вас и комп со стационарным COM-портом не принимает... На нем тоже эхо проверить надо - может в нем порт банально сгоревший. Также проверьте провод - понимаю, что банально, но вдруг в нем жила переломана.

Второй момент - а какой номинал конденсаторов у вас установлен в обвязке MAX/ADM232? Они расчитаны на конденсаторы 1 мкФ, однако на это мало кто обращает внимание. Примером тому служит большинство схем в интернете, где нарисованы конденсаторы 0.1 мкФ. На конденсаторы 0.1 мкФ расчитана идентичная по цоколевке микросхема MAX/ADM202. Мне вообще непонятно, зачем люди используют MAX/ADM232 после появления MAX/ADM202.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Sergey-Ufa
сообщение Aug 21 2014, 07:55
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 27-10-13
Из: Уфа
Пользователь №: 78 917



Сергей Борщ, а ведь насчет конденсаторов мысль у вас здравая. Сейчас прошелся по даташитам и действительно обнаружил, что 0,1 мкф допускает только MAX232A и ADM232A, а у меня в основном стоят MAX232CPE Как то раньше не обращал на это внимания. Может действительно для отдельных экземпляров СОМ-портов не хватает напряжения для надежной фиксации уровня. Спасибо за идею!
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Aug 21 2014, 08:25
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Sergey-Ufa @ Aug 21 2014, 10:55) *
Может действительно для отдельных экземпляров СОМ-портов не хватает напряжения для надежной фиксации уровня.
Но компьютер же слышит ваш прибор, значит уровня хватает. Не работает связь в обратную сторону, на которую конденсаторы не влияют. Я бы для начала убедился, что COM-порты действительно исправны. Хотя бы проверкой на это при замыкании линий приема и передачи.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
Sergey-Ufa
сообщение Aug 22 2014, 05:30
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 27-10-13
Из: Уфа
Пользователь №: 78 917



Цитата(Сергей Борщ @ Aug 21 2014, 12:25) *
Но компьютер же слышит ваш прибор, значит уровня хватает.

Так как раз наоборот: прибор слушается компьютера, а комп не видит данных с прибора.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Aug 22 2014, 09:00
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Sergey-Ufa @ Aug 22 2014, 08:30) *
Так как раз наоборот
Да, что-то меня переклинило. Как победите - не забудьте сообщить, в чем была причина.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
toweroff
сообщение Aug 22 2014, 10:31
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



У меня был такой случай - плата делалась под MAX3232, потом начали впаиваться ST3232 -- и начались непонятные глюки. Оказалось, что по привычке давней емкость на 2й ноге с положительным напряжением подвешивалась на VCC. Какие-то микросхемы могут работать с этой емкостью как на VCC, так и на GND, но, в основном, все сейчас хотят GND (да и в разводке гораздо проще)
Так вот после соединения емкости на землю все заработало как часы
Go to the top of the page
 
+Quote Post
Sergey-Ufa
сообщение Aug 25 2014, 03:09
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 27-10-13
Из: Уфа
Пользователь №: 78 917



Цитата(Сергей Борщ @ Aug 22 2014, 13:00) *
Как победите - не забудьте сообщить, в чем была причина.

Сейчас приборчик вкалывает круглосуточно в чужой организации и заниматься экспериментами с ним возможности нет. Но как появится результат обязательно сообщу. Спасибо!
Go to the top of the page
 
+Quote Post
Sergey-Ufa
сообщение Sep 8 2014, 12:21
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 27-10-13
Из: Уфа
Пользователь №: 78 917



Цитата(Сергей Борщ @ Aug 22 2014, 12:00) *
Как победите - не забудьте сообщить, в чем была причина.

Сергей, хочу сообщить, что я победил! Заменил 4 кондея по 0,1 мкф на такую же керамику, но по 1 мкФ. С компом, который не желал слышать прибор, связь устойчива, полет нормальный. Еще раз спасибо! Тема закрыта.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Sep 8 2014, 12:47
Сообщение #10


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Чудес не бывает, вот и чудненько wink.gif.

P.S. Тему вы можете закрыть сами. Вам, как автору темы, эта функция доступна слева внизу.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st June 2025 - 08:00
Рейтинг@Mail.ru


Страница сгенерированна за 0.01452 секунд с 7
ELECTRONIX ©2004-2016