Передача данных по UART - фантомный байт FF

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Чт ноя 22, 2018 11:38:15

Сообщение [Me] »

Привет.
Обзавелся логическим анализатором (дешевым китайским клоном Saleae) и решил его проверить, посмотреть как выглядит передача данных по UART в сигналах.
Подключил ATmega32PU к компьютеру через переходник USB UART, повесил анализатор на ноги RX и TX, стал записывать семплы: пишу в терминале команду hello, микроконтроллер на нее отвечает. По записанным семплам вроде бы все как надо, только одно смутило - на Rx ногу в случайные промежутки времени приходит байт 0xFF - он никак не обрабатывается микроконтроллером, но тем не менее странно.
Подскажите отчего такое может быть?
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

мне кажется, такого в норме быть не должно. а байт 0xFF - это скорее всего кратковременное пропадание контакта в цепи - небось, на беспаечной макетке проводочками собрано все?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Чт ноя 22, 2018 11:38:15

Сообщение [Me] »

[uquote="ARV",url="/forum/viewtopic.php?p=3510216#p3510216"]мне кажется, такого в норме быть не должно. а байт 0xFF - это скорее всего кратковременное пропадание контакта в цепи - небось, на беспаечной макетке проводочками собрано все?[/uquote]

Да, собирал на макетке. Проверил сейчас провода, чтобы контакт был, во время записи не трогал их - убрал подальше от клавиатуры.
Вот заскринил то как это выглядит:
https://gyazo.com/983e1325315917f99213d8a589ed2e0f

Channel 0 (сверху) это то что приходит на вход (Rx)
Channel 1 (снизу) это то что уходит в ответ с МК (Tx)

В Channel 0 вначале отправляется команда hello, справа видны одиночные байты FF.
В Channel 1 таких вещей не наблюдается, возможно все дело в переходнике USB UART, может быть там что-то барахлит. Но не в микроконтроллере или логическом анализаторе - иначе мусор был бы и в channel 1.

Вот эти мусорные FF вблизи:
https://gyazo.com/88bae9532dfd3b15639d83ccf44fd085
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Очевидно же, это не FF-ки, а какие то всплески, которые анализатор считает за стартовый бит.
Разверните пошире этот провал и измерьте его длительность.

PS: А что за "долбёжка" снизу ? Это такой ответ длинный ? :)
Реклама
Эиком - электронные компоненты и радиодетали
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Чт ноя 22, 2018 11:38:15

Сообщение [Me] »

[uquote="Аlex",url="/forum/viewtopic.php?p=3510260#p3510260"]Очевидно же, это не FF-ки, а какие то всплески, которые анализатор считает за стартовый бит.
Разверните пошире этот провал и измерьте его длительность.

PS: А что за "долбёжка" снизу ? Это такой ответ длинный ? :)[/uquote]

Вот он в максимальном приближении: https://gyazo.com/422b85503bf9a588de0189f33524a3cf
Там указывается width, frequency, period. Всплеск очень маленький да.

Да, десяток текстовых строк для стресс-теста самописной uart-библиотечки.
Реклама
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

А когда в порт ничего не передаётся, всплески из него тоже летят ?

PS: Вообще, можно забить на них. Модуль в МК вряд ли их посчитает полезными.
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Аlex писал(а):Очевидно же, это не FF-ки, а какие то всплески, которые анализатор считает за стартовый бит
вот-вот. и никакие "убрал подальше и не трогал" не помогут - в беспаечных макетках постоянно что-то странное может вториться само по себе. убедился на себе, когда SD-карту осваивал.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Чт ноя 22, 2018 11:38:15

Сообщение [Me] »

[uquote="Аlex",url="/forum/viewtopic.php?p=3510284#p3510284"]А когда в порт ничего не передаётся, всплески из него тоже летят ?

PS: Вообще, можно забить на них. Модуль в МК вряд ли их посчитает полезными.[/uquote]

Когда ничего не передается, то никаких FF нет совсем.
Еще нюанс, мк работает на внутреннем генераторе частоты 1мгц и для передачи по UART включена опция x2, не знаю возможно здесь есть какая-то связь (но скорее всего нет)

Эти FF игнорируются мк, иначе он сообщил бы, что команда неверна - он принимает только hello, на другие запросы ругается :)
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Значит косяк переходника. Забейте :)
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Чт ноя 22, 2018 11:38:15

Сообщение [Me] »

Печально.
Переходник на PL2303TA, если что, вот такой: https://arduino.ua/prod2499-usb-uart-pe ... -s-kabelem
Беда с этими дешевыми китайскими переходниками )
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

да ничего с ним не беда! нормальный переходник, и логический анализатор нормальный, хоть и самый дешёвый клон китайский. у меня такого добра навалом. а вот контакты - это бич. кстати, на логическом анализаторе шлейфики тоже того самого говняного китайского качества, и тожемогут создавать кратковременные обрывы, воспринимаемые какими-то сигналами.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Если бы проблема была в контакте, то при отсутствии активности тоже были бы провалы. А их нет.
Это явно переходник мудрит. Но, это вовсе не беда. Ничего страшного в этом нет. Просто забейте и работайте дальше :)
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Было,налетал...
1) Повесить на RX пуллап/пуллдаун
2) Исключить длинные параллельные проводники - шлейф с анализатора(разделить на одиночные),беспаечную макетку - выкинуть на.
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Кстати, да, попробуйте подтянуть непосредственно вход анализатора к + сопротивлением. Уберётся ли эта гадость.
Родился
Аватара пользователя
Сообщения: 6
Зарегистрирован: Чт ноя 22, 2018 11:38:15

Сообщение [Me] »

С подтягивающим резистором определенно эффект есть - примерно 90% всех ff убирается, но кое-что остается.
Зато когда я убрал принимающий провод (RX) от USB UART и оставил только передающий (TX) и два проводка от анализатора, мистические ff пропали полностью на 100%.
Такие дела.
В принципе такой результат меня устраивает :)
Всем спасибо за советы.
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

Длинные параллельные проводники - наводки на пины с высоким сопротивлением.
Именно с этим и столкнулся ARV на макетках с SD карточками.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

dosikus писал(а):Именно с этим и столкнулся ARV на макетках с SD карточками
нет, как я и писал, столкнулся я с тем, что в беспаечной макетке проводки контачат далеко не всегда хорошо. длинных проводков у меня там не было, тем более параллельных - вы вообще видели на такой макетке параллельные проводники?!
пока адаптер карточки не припаял к проводкам - работало через раз.
а вот на логическом анализаторе параллельные проводнички запросто могут наводить сигналы на соседние входы - это тоже пройдено горьким опытом...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Сообщение dosikus »

ARV, если разберешь эту хрень ты сам все увидишь.
Не ты первый попал на эти грабли, не забуду скину ссылку на чтиво.
А на счет фантомных сигналов на шлейфах - иследуйте вменяемые шлейфы, как они организованы.
В них сигналы чередуются с GND...
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18785
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

и что я там могу увидеть? неужели что-то, что опровергло бы тезис о ненадежности контакта в этой макетке?!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Мудрый кот
Сообщения: 1808
Зарегистрирован: Вт авг 15, 2017 10:51:13

Сообщение jcxz »

Кстати - сам лог. анализатор (который самый дешёвый, на CY7C68013A) может быть причиной всяких чудес. Сталкивался с тем, что при нормально работающей схеме (быстрый SPI), подключение лог.анализатора полностью рушило обмен. А если подключить его через буфер-повторитель на дополнительном чипе, то сразу всё становилось == ок. Даже для своего экземпляра л.анализатора собрал такой повторитель и теперь подключаюсь только через него.
Видимо входы такого лог.анализатора могут иметь или низкое сопротивление или повышенную ёмкость.
Ответить

Вернуться в «Разные вопросы по МК»