Jump to content
IgnatiusF

Индикация передачи данных по интерфейсам (I2C, UART)

Recommended Posts

Всем привет!

Делаю образовательную плату для собственной практики, и захотелось мне сделать наглядную визуализацию работу интерфейсов на плате при помощи светодиодов. Чтобы на каждую линию.

Из идей (для I2C):
1. Помимо подтяжки резисторами добавить светодиоды, присоединенные катодами в линиям.
2. Сделать это при помощи биполярного транзистора или полевого.

Первый вариант, по моим ощущениям, как надо работать не будет. Если использовать резисторы (при напряжении 3.3 В и падении 2.5 В) больше кОма, то явно ничего видно не будет на светодиоде, а в случае малого номинала будет долгий спад сигнала.
А второй попробовать решил и нарисовал вот такой вариант:

Скрытый текст

I2C.png.1898369ff769e57124cdd082bfb08fbd.png

FDV304P - полевой транзистор с P-каналом. Выбрал самый дешевый.
KPT-2012PBC-A - светодиод 0805, предположительное падение напряжения - 2.5 В, ток потребления 20 мА.
Блоки по изображают работу портов I2C.

Для UART схема подключения мне видится такой же.

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

Помогите выбрать оптимальный вариант подключения светодиодов:)
Всем спасибо!

Share this post


Link to post
Share on other sites

Нормальные герои всегда светодиоды включают в цепь стока/коллектора транзисторного ключа.


Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

Share this post


Link to post
Share on other sites

Приглашаем на вебинар «Новинки и уникальные решения Molex. На что обратить внимание и почему»

15 апреля приглашаем на вебинар, который будет интересен разработчикам и инженерам-схемотехникам, интересующимся тенденциями рынка, новыми перспективными решениями для соединений «провод-провод», «провод-плата», «плата-плата». Для инженеров КИПиА и IT будут освещены уникальные решения Molex для «удлинения» интерфейсов HDMI, DisplayPort и USB даже в условиях сильного зашумления, а также семейство бесконтактных датчиков Contrinex. Помимо этого, будет уделено внимание дальнейшему развитию направления антенн, где Molex имеет ряд интересных и уникальных решений.

Подробнее

А частота шин какая?

Светодиоды успеют что нибудь показать?

Share this post


Link to post
Share on other sites

В чем вопрос вообще ? 2 минуты нужно чтобы этот вариант проверить в железе или вы хотите спросить разрешение от гуру?)

6 минут назад, 100482 сказал:

А частота шин какая?

А не всеравно? будет светится с той же частотой. 

На юарт вообще вешают тупо через резистор и не чо работает ) 

Share this post


Link to post
Share on other sites
                     

Выбираем преобразователь для портативных устройств

Портативные устройства могут различаться по типам элементов питания, а также по разным функциям. В статье на примере 3-х устройств демонстрируется, как многоканальные SIMO-преобразователи помогают эффективно реализовывать потенциал системы питания и первичного элемента, а также гибко подстраиваться под требуемый функционал.

Читать статью

24 минуты назад, Bass85 сказал:

А не всеравно? будет светится с той же частотой. 

Вот вчера делал инкубатор, датчик работает на 100кгц. Интересно это глазом заметно будет?

Цитата

Незаметными для людей с высокочувствительным зрением становятся только частоты смены кадра и мерцания порядка 1000 Гц. Именно от 1 кГц (1000 кадров в секунду) – предел восприятия, преодолеть который большинство человеческих глаз не может.

23 часа назад, IgnatiusF сказал:

ток потребления 20 мА

У меня светодиоды 0805 корпуса горят от 3В с резистором 1кОм 3/1000 это 3мА. И достаточно ярко. Даже с 1мА они светились, и похоже так же...

 

31 минуту назад, Bass85 сказал:

На юарт вообще вешают тупо через резистор и не чо работает ) 

У меня работает на самодельном программаторе, подтверждаю)

23 часа назад, IgnatiusF сказал:

для собственной практики, и захотелось мне сделать наглядную визуализацию работу интерфейсов

Я купил за 300 рублей лог. анализатор на 24 МГц на 8 портов. вот это отличная визуализация, уже не раз помогла в моих проектах)) 

Share this post


Link to post
Share on other sites
23 hours ago, IgnatiusF said:

выбрать оптимальный вариант

Перезапускаемый одновибратор на 555АГ3. 

Share this post


Link to post
Share on other sites
5 часов назад, 100482 сказал:

А частота шин какая?

Частота, допустим, будет 100 кГц.

5 часов назад, Bass85 сказал:

..2 минуты нужно чтобы этот вариант проверить в железе..

Сделал бы в железе, но железа пока не хватает даже для таких простых вещей. Точнее может и хватает, но с имеющимся будет проблемно это проверить

4 часа назад, DrobyshevAlex сказал:

..лог. анализатор на 24 МГц на 8 портов. вот это отличная визуализация..

Анализатор это круто и использовать, конечно, буду, но задача в другом. Наблюдать "в живую" работу всех шин.

5 часов назад, Bass85 сказал:

На юарт вообще вешают тупо через резистор и не чо работает ) 

Через резистор - ну вот даже не знаю, рекомендуемый номинал резисторов для I2C вообще 20 кОм (где-то прочитал), а при токе потребления светодиода 1 мА надо резистор тогда 800 Ом. Может работать как-то и будет, но так сильно нарушать установленные рекомендации я не хочу.
+ на светодиодах будет сильное падение напряжения, так что обязательно придется ставить доп. резисторы, что повлечет еще большее уменьшение общего сопротивления. (Хотя, при падении 2.5 В может быть даже особо не повлияет на работу шины?:huh:)

4 часа назад, _abk_ сказал:

Перезапускаемый одновибратор на 555АГ3. 

Одновибратор - звучит интересно, только не 555АГ3 - она же все место займет со своими-то габаритами. Ну, и как я понял, на каждые 2 провода придется по 1 микросхеме. Многовато, да и нет задачи видоизменять сигнал. Пусть светодиод моргает как есть.

Ну, в общем решил так - как-нибудь умудрюсь проверить работу с резисторами, благо есть stm32 на переходнике с двумя i2c. Чтоб отдать и принять. Осталось только взять где-нибудь из под левой пятки 3.3 В для питания.

Edited by IgnatiusF

Share this post


Link to post
Share on other sites
7 минут назад, IgnatiusF сказал:

Частота, допустим, будет 100 кГц....

.

.

.

.

Пусть светодиод моргает как есть....

Ага, на 100кГц. Если Вы не терминатор, то и просто 100 Гц Вам не увидеть!:D

35-40 Гц для живого человека предел верхний!

Share this post


Link to post
Share on other sites
53 минуты назад, IgnatiusF сказал:

Одновибратор - звучит интересно, только не 555АГ3

Та это вообще в порядке бреда имея контроллер ставить такую дичь)  если не хотите проверять то ставьте мелкий смд транзистор нпн на базу резистор кил на 10 и все у вас будет работать. 

Share this post


Link to post
Share on other sites
2 часа назад, IgnatiusF сказал:

будет 100 кГц

 

2 часа назад, IgnatiusF сказал:

Наблюдать "в живую"

Завидую вашему зрению)) Эта информация не даст ничего больше чем просто рандомное изменение яркости светодиода) Это чисто как гирлянда)

2 часа назад, IgnatiusF сказал:

она же все место займет со своими-то габаритами

ну поставьте любую сборку транзисторную, где в одном смд корпусе например 8 транзисторов.

А вообще на каждый диод по 1-му sot-23 транзистору не так и много места, они все рядом будут 

Вон я делал для гирлянды линию проводите одну массы сквозь npn транзисторы и на каждый через резисторную сборку заводите от ваших шин управление. и через резисторную сборку выводите на светодиоды.

Скрытый текст

424321111_2020-01-2019_50_33.png.ebefbda55285b84e16fe01ff49f0b6eb.png

Скрытый текст

A-RA.jpg.260e804f0c70b8f3eb5edcfa43da4294.jpg

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

1 час назад, Bass85 сказал:

на базу резистор кил на 10

если нужно через 10к то транзистор и не нужен :) 

3.1В 10К резистор. Прекрасно горит.

 

Скрытый текст

eWPOZStoC5A.jpg

 

 

где будет падение напряжения я не понимаю, я  нуб в схемах. по мне оно будет на диоде за резистором и не повлияет на линии данных.

Edited by DrobyshevAlex

Share this post


Link to post
Share on other sites
22 часа назад, IgnatiusF сказал:

..задача в другом. Наблюдать "в живую" работу всех шин.

22 часа назад, malenich сказал:

Ага, на 100кГц. Если Вы не терминатор, то и просто 100 Гц Вам не увидеть!:D

20 часов назад, DrobyshevAlex сказал:

Завидую вашему зрению)) Эта информация не даст ничего больше чем просто рандомное изменение яркости светодиода) Это чисто как гирлянда)

Да, выразился, видимо, не правильно. Под "Наблюдать "в живую" работу всех шин" я подразумевал наблюдение того, какие шины, коих в проекте как минимум штук 12, когда и как часто работают. То есть как конкретно эти светодиодики мигают мне до лампочки:lol:

21 час назад, Bass85 сказал:

..ставьте мелкий смд транзистор нпн на базу резистор кил на 10 и все у вас будет работать. 

Ну тут, думаю, не особо много разницы полевой или биполярный ставить. Хотя на полевой можно и резистор даже не ставить, так что, скорее всего, я буду смотреть в его сторону, либо в сторону светодиодов через резисторы с необходимым номиналом. Но это, опять же, надо проверить как будет работать:)

Share this post


Link to post
Share on other sites
27 минут назад, IgnatiusF сказал:

Да, выразился, видимо, не правильно. Под "Наблюдать "в живую" работу всех шин" я подразумевал наблюдение того, какие шины, коих в проекте как минимум штук 12, когда и как часто работают.

А не смущает тот факт, что 99% времени ВСЕ диоды будут гореть что во время работы шины, что без оной? Идея бредовая на 200%. Что мешает сделать индикацию средствами МК? Идет передача - диод горит, закончилась - погас.

Share this post


Link to post
Share on other sites

@BARS_ , Не 99%, все 99,99%, но вопрошающему на это:

32 минуты назад, IgnatiusF сказал:

....То есть как конкретно эти светодиодики мигают мне до лампочки....

Т.Е. Ему нужен просто индикатор включения.:)

Share this post


Link to post
Share on other sites
41 минуту назад, BARS_ сказал:

Что мешает сделать индикацию средствами МК? Идет передача - диод горит, закончилась - погас.

Во-первых, на это уйдет слишком большое количество портов обоих микроконтроллеров, или еще хуже, поставить несколько микросхем расширителей на SPI или I2C. Место, разводка, деньги.
Во-вторых, что мне даст эта "программная мигалка" в случае, если будет косяк в программе и шина на самом деле просто работать не будет? Порт, тактирование, настройка I2C, dma и т.п? Я все-таки начинающий программист МК, ошибки будут. 

Так что эта идея мне кажется даже более бредовой.

36 минут назад, malenich сказал:

Т.Е. Ему нужен просто индикатор включения.:)

А почему бы и нет? Хочу видеть, что шина работает, и не по программным проверкам-перепроверкам, а на самом деле. Все таки, мне скорее нужен индикатор состояния. В случае с SPI шиной MOSI MISO могут оставаться как в высоком состоянии, так и в низком после передачи. Как говорится, мелочь, а приятно наблюдать. Вам-то может - более опытным электронщикам это и не особо интересно, а мне как начинающему видеть эти мелочи хочется, чисто для собственного представления. 

41 минуту назад, BARS_ сказал:

..99% времени ВСЕ диоды будут гореть что во время работы шины, что без оной?

36 минут назад, malenich сказал:

@BARS_ , Не 99%, все 99,99%..

Вот вы знаете, как это будет выглядеть, я вот нет. Мой первый проект был вообще без единого средства индикации чего либо, и об этом я пожалеть успел уже в самом начале работы с ним. Теперь желаю все видеть.

Без хотелок ничего не делается.

Edited by IgnatiusF

Share this post


Link to post
Share on other sites
39 минут назад, BARS_ сказал:

что 99% времени ВСЕ диоды будут гореть что во время работы шины, что без оной?

тогда нужно на оборот php транзистор. а если без транзистора, то светодиод на плюс подключать, а с шины прижатие к массе брать, чтобы во время простоя не горели. Вот только тут надо подумать будет ли работать и какие номиналы ставить подтяжки к питанию линии. хотя думаю обычные, так как падение на светодиоде особо помех не внесет.

Share this post


Link to post
Share on other sites

Ну, что на счет этого, то и понятно, что биполярный pnp или полевой pn брать надо, как раз эту схему и представлял наверху.
И светодиоды если подключать катодом к шине, то загораться они будут только в момент опускания шины к земле, то есть во время передачи^_^

Share this post


Link to post
Share on other sites
7 минут назад, IgnatiusF сказал:

Во-вторых, что мне даст эта "программная мигалка" в случае, если будет косяк в программе и шина на самом деле просто работать не будет?

А что даст тупо горящий диод? А шины еще и такие вредные, что большая часть даже в нерабочем режиму будет находиться в высоком уровне. А вот работоспособность шины покажет только осцилл или логический анализатор, цена которому 300р на али.

 

9 минут назад, IgnatiusF сказал:

Хочу видеть, что шина работает, и не по программным проверкам-перепроверкам, а на самом деле

И как ты это хочешь увидеть? Ну горит диод. Пин настроен на выход и выдает высокий уровень? Пин настроен на работу с SPI/UАRT/... Пин тупо пробило? КАК это может помочь?

 

6 минут назад, IgnatiusF сказал:

И светодиоды если подключать катодом к шине, то загораться они будут только в момент опускания шины к земле, то есть во время передачи

Отлично, только вот тут тоже целый список причин свечения будет. Да и толку знать, что по шине идут данные, если они могут быть тупо неправильными?

 

13 минут назад, IgnatiusF сказал:

Место, разводка, деньги.

Какое место? Какая разводка? Купи на али плату с МК и кучей PLSок, логический анализатор и не ипи мозх. Для начинания большего и не требуется.

Share this post


Link to post
Share on other sites
6 минут назад, BARS_ сказал:

А что даст тупо горящий диод?

Даст мне удовлетвориться его работой. К тому же не просто тупо горящий, а только во время передачи данных.

7 минут назад, BARS_ сказал:

..работоспособность шины покажет только осцилл или логический анализатор, цена которому 300р на али.

20.01.2020 в 22:29, IgnatiusF сказал:

..Анализатор это круто и использовать, конечно, буду..

 

9 минут назад, BARS_ сказал:

И как ты это хочешь увидеть? Ну горит диод. Пин настроен на выход и выдает высокий уровень? Пин настроен на работу с SPI/UАRT/... Пин тупо пробило? КАК это может помочь?

Отлично, только вот тут тоже целый список причин свечения будет.

Тут по большей части все просто - светодиод горит постоянно - что-то не работает:D
А чтобы не горел постоянно из-за косяков подключения, нужно правильно выполнить подключение,. Чтобы светодиоды горели только когда шина прижатом к земле состоянии. Поэтому я и задал вопрос.

14 минут назад, BARS_ сказал:

Какое место? Какая разводка? Купи на али плату с МК и кучей PLSок, логический анализатор и не ипи мозх. Для начинания большего и не требуется.

Микросхема использует место на плате. То самое, которое я лучше бы сэкономил для размещения всех остальных компонентов. Разводка потребуется для расширителей портов, потому что я располагаю в непосредственной близости самих шин. Если они будут мигать гирляндочкой где-то с краю платы в одной кучке, это будет не так удобно, как расположенные вблизи шин. Вот это и будет требовать дополнительной разводки. Лишний геморой.

Ну нафиг мне не нужны готовые платы. Ну вот честно. Я практикуюсь создавать собственное устройство. Обычное программирование мне вообще никак не вканывает. А если делать что-то самостоятельно, то максимально качественно и удобно, но опять же, для себя удобно, а не для кого-то другого. "Мозхи не ипу", сижу библиотеки кастомные для платы рисую, попутно уже все решив со схемотехникой благодаря этой теме уже постов 10 назад.

Share this post


Link to post
Share on other sites
14 минут назад, IgnatiusF сказал:

Ну нафиг мне не нужны готовые платы.

соглашусь) тоже не юзаю готовые с первого дня знакомства с электроникой)) вон решил плис поковырять и то сам сделал, даже есть готовые разводки, бери печатай и паяй, но я и развел себе сам :D https://terraideas.ru/article/otladochnaya-plata-na-max-ii-epm240t100-21

Хотя 1 stm32f103 лежит на всякий случай, 3-4 раза юзал, это когда экран какой нить вешал чтобы проверить работает ли, и пробовал получиться ли датчик запустить на дма. воткнул в макетку пару проводов и проверил, а потом собрал уже устройство)

Но вот никогда не ставил светодиодики моргать от протоколов, бесполезное это) режим дебаг + лог анализатор только поможет, а так можете их просо от не555 пускать для красоты, пусть мигают))

 

Share this post


Link to post
Share on other sites
5 минут назад, IgnatiusF сказал:

Даст мне удовлетвориться его работой.

Прочти еще раз, ВНИМАТЕЛЬНО, список причин свечения диода.

 

6 минут назад, IgnatiusF сказал:

только во время передачи данных.

Ну ок, он будет ВСЕГДА погашен, ибо мигание даже на килогерцовых скоростях передачи данных ты не увидишь.

 

7 минут назад, IgnatiusF сказал:

светодиод горит постоянно - что-то не работает

Не проканает. Ты не увидишь изменений яркости даже если что-то будет работать. Возьми, выдай сигнал на частоте 100КГц и прицепи на него диод. Сразу поймешь всю абсурдность своей идеи. И ведь Килогерцы - это I2C. В том же SPI уже МЕГАгерцы. И как там поможет диод?

 

8 минут назад, IgnatiusF сказал:

Чтобы светодиоды горели только когда шина прижатом к земле состоянии

Это будет длиться микросекунды. Что ты хочешь при этом увидеть? 

 

9 минут назад, IgnatiusF сказал:

Микросхема использует место на плате.

Человек либо учится, либо тупо лепит платы, не умея с ними работать. Нахрена лепить какую-то плату, если надо НАУЧИТЬСЯ работать с МК? А для этого на 500% хватает платы с МК и все.

 

10 минут назад, IgnatiusF сказал:

Я практикуюсь создавать собственное устройство.

10 минут назад, IgnatiusF сказал:

А если делать что-то самостоятельно, то максимально качественно и удобно,

Максимально качественно и удобно возможно лишь при наличии знаний и никак иначе. Пока знаний НЕТ, надо сидеть и учиться на готовых платах. А суда по тому, что появилась эта тема, МК на этих платах должен появиться еще очень не скоро.

 

14 минут назад, IgnatiusF сказал:

Разводка потребуется для расширителей портов

Что мешает взять МК в корпусе 100 ног? Вот серьезно, я еще давно сделал маленькую, компактную плату на STM32F103V. Там стоят PLS на все порты и напряжения питания, само питание, USB, разъем для Micro SD, две кнопки, 3 диода и кварцы. ВСЕ. На этой плате вполне успешно был обкатан не один проект. Недавно сделал ровно такую же плату, но с 429 камнем. Проверил железо, потом запилил плату. Иначе платы можно пилить очень долго и много, а толку будет ноль.

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
Только что, DrobyshevAlex сказал:

тоже не юзаю готовые с первого дня знакомства с электроникой

Я юзал, это платы от самих STM. Потом свои запилил, ибо программатор на плате мне нафиг не нужен, тем более ST-Link.

Share this post


Link to post
Share on other sites
1 час назад, BARS_ сказал:

Я юзал, это платы от самих STM

Ну у меня это хобби) Инкубатор там теще сделать, или себе какую нить фигню... я купил f030 по 40р и делаю) я не настолько богат чтобы платки от самих стм покупать))я думаю я за все время не потратил столько денег на стм мк сколько одна платка оригинальная стоит)

Share this post


Link to post
Share on other sites
8 часов назад, BARS_ сказал:

Прочти еще раз, ВНИМАТЕЛЬНО, список причин свечения диода.

Ну ок, он будет ВСЕГДА погашен, ибо мигание даже на килогерцовых скоростях передачи данных ты не увидишь.

Не проканает. Ты не увидишь изменений яркости даже если что-то будет работать. Возьми, выдай сигнал на частоте 100КГц и прицепи на него диод. Сразу поймешь всю абсурдность своей идеи. И ведь Килогерцы - это I2C. В том же SPI уже МЕГАгерцы. И как там поможет диод?

Это будет длиться микросекунды. Что ты хочешь при этом увидеть? 

Ну вот проверю это на железе, тогда и переделаю. Если дело только в частоте, то можно и сглаживание поставить. Или придумать что-либо ещё.

8 часов назад, BARS_ сказал:

Человек либо учится, либо тупо лепит платы, не умея с ними работать. Нахрена лепить какую-то плату, если надо НАУЧИТЬСЯ работать с МК? А для этого на 500% хватает платы с МК и все.

Максимально качественно и удобно возможно лишь при наличии знаний и никак иначе. Пока знаний НЕТ, надо сидеть и учиться на готовых платах. А суда по тому, что появилась эта тема, МК на этих платах должен появиться еще очень не скоро.

Вам даже не показалось возможным, что кому-то легче учиться, имея наглядные примеры? Я и вправду неохотно воспринимаю информацию без наглядного представления что и зачем.

С МК я работать уже умею, точнее изучил все основные принципы, и уже запрограммировал один из них на некотором уровне. С точки зрения ДШ уже тоже все, что хотел прочитал.

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

Может и ошибусь при разводке платы, но сильно боком мне это не выйдет, изучу проблему, переразведу и закажу новую исправленную. Немного денег уйдет, но дело того стоит.

8 часов назад, BARS_ сказал:

Что мешает взять МК в корпусе 100 ног? Вот серьезно, я еще давно сделал маленькую, компактную плату на STM32F103V. Там стоят PLS на все порты и напряжения питания, само питание, USB, разъем для Micro SD, две кнопки, 3 диода и кварцы. ВСЕ. На этой плате вполне успешно был обкатан не один проект. Недавно сделал ровно такую же плату, но с 429 камнем. Проверил железо, потом запилил плату. Иначе платы можно пилить очень долго и много, а толку будет ноль.

Да ничего не мешает, уже взял. Один на 100 ног, и в связку с ним ещё на 64. Для полного счастья. Скорее всего косяки будут, но мой путь "джедая" начнется с первого боя. Плохой опыт - на мой взгляд ни чуть не хуже, чем хороший, должно быть и то и то. Я изучаю гораздо быстрее, когда я заинтересован в информации и уже имею не абстрактное представление об изучаемом. И я очень долго и не спешно усваиваю информацию, когда плохо представляю конечный результат. Так что долго - понятие относительное. Я старательный в плане творчества, все успею. Но, конечно же, никому я подобный путь не предлагаю, тут все зависит от человека.

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...