Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: RS232 и помехи
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
CrushAlexandr
Привет всем!

Имеется простенькое устройство на megа162. Используются оба ее USART-ы через преобразователь уровней MAX232CPE с кондерами 1мкф, вобщем все как обычно.
Для упрощения, устройство подключено к PC по обоим RS232.

Проблема: в работе 0го усарта наблюдаются странные глюки - влияние канала передачи на канал приема. Если "навстречу" передаваемому от меги к PC байту идет какой-то байт, то на приемной стороне (PC) происходит искажение данных.
Упрощаем программу - мега постоянно шлет какой-то байт, например, 0xAA. Смотрим, на PC этот байт отлично и устойчиво принимается. Шлем навстречу байт 0xFF. Тоже всё хорошо. Шлем на встречу байт 0x00. А от меги приходит вместо 0xAA, например, 0xAF. Т.е. нулевые биты по приемному каналу меги искажают передаваемые биты, причем устанавливают их в 1, с не-100%й вероятностью.

Мегу менял (глупо конечно на зеркало пенять,но мало ли). MAX232 поменять пока руки не дошли, да и опять же врядли в ней дело.
Пробовал отключить receiver в меге, помехи остаются. Т.е. проблема "вне" меги - шнур PC-устройство, MAX232, дорожки до меги.

с 1м каналом USART проблем не наблюдается, несмотря на то что он на плате разведен куда как хуже (дорожки раза в три длиннее и от MAX232 до меги и от MAX232 до разъема).

Идеи?
bodja74
У меня усар0 на меге162 тоже передает какую то муть smile.gif
в моем случае хуже ,я даже передать ничего путнего не могу.
а усарт1 работает как часы ,может чего там хитрое в настройках ,пока детально не разбирался.
Ладно ,посмотрим чем закончиться. smile.gif
IceS
Цитата(CrushAlexandr @ Sep 28 2007, 19:01) *
Пробовал отключить receiver в меге, помехи остаются. Т.е. проблема "вне" меги - шнур PC-устройство, MAX232, дорожки до меги.
Идеи?

Залип из флюса где-нибудь?
SpyBot
А что осциллограф показывает?
Ещё можно попробовать попринимать данные чем-то другим (не PC), да хоть вторым уартом smile.gif
Dog Pawlowa
Цитата(CrushAlexandr @ Sep 28 2007, 18:01) *
Идеи?

Есть моменты, когда не идеи нужны, а осциллограф smile.gif
Сергей Борщ
Цитата(CrushAlexandr @ Sep 28 2007, 18:01) *
Идеи?
Забыли подать питание на MAX.
defunct
Попробуйте прикоснуться пинцетом к TX ножке UART0, слать 0xAA и не отпускать пинцет на момент передачи данных с PC. Расскажете результат.
Какой корпус у чипа (AI/AU)?
vesago
Чикните сигналы со стороны ттл макса232, закоротите их и посмотрите как идет эхо в гипере. А вообще 9 vs 10 проблема не в меге. Может конечно и макс подгорел, но скорее где сопля. Такого рода признаки бывают, когда приемник плохо заперт - нет 0...- напряжения или коротит.
shamray
Присоединяюсь к мнению о некачественном монтаже платы. Кстати, вожможна не только сопля, а и непропай. В общем тестр и осцилограф должен помочь.
CrushAlexandr
Всем огромное спасибо за идеи, но пока проблема осталась.
Что делал:
Еще раз проверил плату на залипы и непропои. Не наблюдается. Да и сама плата заводского изготовления, в паяльной маске.
Прозвонил цепи RX и TX как ТТЛ так и RS232 стороны на предмет замыкания с соседними дорожками, и на всяк случ с землей и питанием. Всё в порядке.
Питание MAX232 проверил, в норме.
Отключил шнур "комп-устр-во" от устройства, замкнул шнуру RX и TX. Эхо отличное, 100% правильное. Шнур и комп можно считать оправданными.
Помучал пинцетом и RX и TX ножки на меге. Ничего не изменяется, глюки во время передачи данных "комп-> устройство" сохраняются. Копрус меги - PU (PDIP). (По кр. мере так написано в товарном чеке и на самой меге).
Вынул мегу из панельки, замкнул RX и TX на ТТЛ стороне MAX232 (прямо на MAX232). Помехи есть. Например, шлю 0x64, получаю или 0x7f или 0x5f или 0x77 с явным преобладанием последнего.
При аналогичных махинациях с 1м каналом усарт - отличное эхо, никаких искажений.

Стал менять пары RX-TX: (при отключенной меге и закороченных соответствующих ТТЛ ножках макса). Результаты такие (обозначения по каналам MAX232).
R1IN->T1OUT - помехи
R2IN->T1OUT - отлично
R1IN->T2OUT - помехи
R2IN->T2OUT - отлично

Т.е. проблема остается либо в R1IN МАКС232 либо в печатной плате (хотя там проблем не видать :/ ).
По идее еще бы поменять макса и стало бы ясно, но пока некогда.

З.Ы. осцилографом не располагаю.
vvs157
Цитата(CrushAlexandr @ Sep 30 2007, 18:44) *
З.Ы. осцилографом не располагаю.

К сожалению без него вы вряд ли разберетесь.
zhevak
Цитата(CrushAlexandr @ Sep 30 2007, 20:44) *
Еще раз проверил плату на залипы и непропои. Не наблюдается. Да и сама плата заводского изготовления, в паяльной маске.

Не факт! У меня была одна заводская плата. Красивая, зеленая... но под зеленой маской то-оненький волосок меди между дорожками, еле разглядишь. Удалось увидеть только когда локализовал место замыкания до 1 кв.см. методом обрезания дорожек и разглядывания на просвет мощной лампы...

И все-таки я Вам рекомендую осциллограф. Хотя бы на время одолжите у кого-нибудь.

А когда справитесь с проблемой, незабудьте сообщить, где собака порылась.
Kuzmi4
Согласен с zhevak - было тоже траблы с платой заводского производства...Так что лучше проверить..
А можно нескромный вопрос - кондёр на максе стоит между питанием и землёй - прямо возле лапок???
alexander55
Цитата(CrushAlexandr @ Sep 28 2007, 19:01) *

Самое правильное посмотреть осциллографом.
Очень вероятно: проверьте земляной провод в кабеле связи и пропаяйте в местах соединений его.
AlexCrush
С осцилографом эт я обязательно - как только так сразу. А кабель и земляной провод я исключил из подозрения - ведь проблем при приеме через R2IN нет, только через R1IN. При этом земляной провод был подключен также.
На этой неделе будут новые платы, посмотрим есть ли там такая фигня (это была тестовая). А может и максу раньше перепаяю.
О результатах сообщу.


Цитата(Kuzmi4 @ Oct 1 2007, 14:47) *
Так что лучше проверить..
А можно нескромный вопрос - кондёр на максе стоит между питанием и землёй - прямо возле лапок???

Стоит "в голове" у макса, над 16-м выводом - до него 2 мм, до 15го вывода, соответственно, миллиметра 3.5. То есть близко.
Maik-vs
Меняйте MAX. Не скажу за 232, а в 485-х максах - насмотрелся... Как бы подсажены уровни, или как бы большая ёмкость кабеля... Поменяешь его - и уровни в порядке, и ёмкость куда делась.
fsb
кажется мне, что не хватает пары кондеров на ногах V+ и V- у MAX232.
CrushAlexandr
Кондеры на V+ и V- наличествуют. Уровни на V+ и V- правильные (около +9.9 и -9.9в соответственно).
Кроме того это не объясняет корректную работу канала R2IN.
Всё же менять макса надо, авось седня руки дойдут. А вот если не поможет, то думать...
vvs157
Цитата(CrushAlexandr @ Oct 1 2007, 17:13) *
Всё же менять макса надо, авось седня руки дойдут. А вот если не поможет, то думать...

Без осциллографа то, что Вы делаете больше похоже на телевизионную передачу "Угадай мелодию" или поиск черной кошки в темной комнате без уверенности, что она там есть. Более того, не зная, что там на самом деле, даже устранив проблему, Вы не будете уверены, что по прошествии какого-нибудь времени она не возникнет вновь.
AlexCrush
Цитата(vvs157 @ Oct 1 2007, 23:54) *
Без осциллографа то, что Вы делаете больше похоже на телевизионную передачу "Угадай мелодию" или поиск черной кошки в темной комнате без уверенности, что она там есть. Более того, не зная, что там на самом деле, даже устранив проблему, Вы не будете уверены, что по прошествии какого-нибудь времени она не возникнет вновь.

Вы правы, и я это отлично понимаю. Но пока нет возможности.
AlexCrush
З.Ы. AlexCrush и CrushAlexander - это я. На работе один аккаунт, дома другой, от обоих пароли не помню :D
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.