Skocz do zawartości

Komunikacja szeregowa - 3 arduino


Pomocna odpowiedź

Witajcie,

Mam taki problem.

Spinam Arduino Mega z dwoma innymi(Uno i Nano). Mega robi za mastera, a uno i nano jako slave.

Master wysyła informację, uno lub nano ją wykonują, a następnie przesyłają informację zwrotną. Układ pierwsze był bez diody, ale problem w tym, że w takim układzie bez diód informacji zwrotnej nie dostaję. Ale jak tylko odepnę jeden ze slave(ów) to już informacja zwrotna wraca.

 

Układ spiąłem tak: mega-uno-nano.jpg

Układ zasilany jest na ten moment z usb kompa do Mega, a dwa pozostałe zasilam już z mega.

Dioda którą użyłem do blokowania wyjść Tx przed „niewłaściwą kierunkowo” transmisją to jakaś 1N4xxx. Ale problem w tym, że coś jest nie tak. Bo po podpięciu diod jak w układzie nie dostaję informacji zwrotnej - tak jakby go dioda nie przepuszczała. Czy czasem nie użyłem za dużej diody? Może macie propozycję jakiej diody konkretnie użyć - jej symbol lub parametry?

 

Pozdrawiam

Leszek

 

Link to post
Share on other sites

Czemu nie możesz użyć I2C? Czemu nie skorzystasz z wielości interfejsów uartu płytki mega? Czy jest to konieczne wykorzystać tylko jeden czy możesz sobie uprościć znacząco zadanie?

Edytowano przez BananWszyscy
Link to post
Share on other sites
21 minut temu, BananWszyscy napisał:

Czemu nie możesz użyć I2C? Czemu nie skorzystasz z wielości interfejsów uartu płytki mega? Czy jest to konieczne wykorzystać tylko jeden czy możesz sobie uprościć znacząco zadanie?

Użyłem uarta bo potrzebuję komunikacji na odległość tak do 8~10 metrów, dlatego I2C odpuściłem. Nie wykorzystuję dodatkowych uartów, bo mega ma być sercem do którego będą podłączone przyciski do sterowania, oraz diody LED do sygnalizacji, ale oprócz tego teraz jest dwa slave, a docelowo może być ich 5 lub 6.

Link to post
Share on other sites

No dobra, myślę, że wiesz, jak działa dioda, jaka jest jej charakterystyka i jak działa cały ten interfejs uart...
Jedną z metod jest wymuszenie na pinach tx slave'ów przejście w stan wysokiej impedancji "wybudzanie" ich tylko wtedy, gdy mają coś nadać (musisz zatroszczyć się, żeby jeden tylko był aktywny)

Możesz użyć układu typu max485.

http://www.gammon.com.au/forum/?id=11428 taki link na przykład

https://forum.arduino.cc/t/connection-multiple-arduinos-via-rs485/103488/16

 

Link to post
Share on other sites
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Ekhm... co ma wspólnego bycie sercem z wykorzystaniem kilku sprzętowych uartów? Mają sobie spać?

BTW diody mają wiele zastosowań, ale  demultiplexing urządzeń podłączonych do jednego uarta do nich nie należy.

Link to post
Share on other sites
5 godzin temu, ethanak napisał:

Ekhm... co ma wspólnego bycie sercem z wykorzystaniem kilku sprzętowych uartów? Mają sobie spać?

BTW diody mają wiele zastosowań, ale  demultiplexing urządzeń podłączonych do jednego uarta do nich nie należy.

Wyobrażałem sobie, że zrobię to jako magistralę i kolejne nano będą dopinane bez problemu, w sensie pamiętania na którym sprzętowym uarcie dany nano jest.

Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.