Komunikacja GPIO-UART-Arduino

12

Próbowałem bez powodzenia, aby Raspberry Pi rozmawiało z Arduino. Używam konwertera 3,3 V na 5 V do zamiany napięć. Umieściłem diodę LED na pinie UART TX i wygląda na to, że odwraca dane. Jeśli to prawda, jaki obwód jest mi potrzebny do komunikacji z Arduino?

Używam konwertera poziomów logiki Cool Components . Jest to tranzystor dla napięcia od 3,3 V do 5 V i rezystor dla napięcia od 5 V do 3,3 V.

Setithing
źródło

Odpowiedzi:

3

Możesz także użyć pojedynczego M -kanałowego rozszerzenia MOSFET dla każdego pinu, jeśli masz kilka takich w pobliżu. Zobacz post Raspberry Pi i urządzenia I2C o innym napięciu lub str. 43 w specyfikacji magistrali I²C . Ponieważ potrzebujesz tylko dwóch szpilek, może to po prostu załatwić sprawę.

teraquendya
źródło
Zastosowałem to podejście, łącząc moje Pi z moim Arduino. Ten wpis na blogu zawiera zdjęcia tablicy powierniczej
Stefan Mohr
2

Używam CD4050 do konwersji poziomu z 5 V na 3,3 V, a także do działania jako bufor do ochrony mojego Raspberry Pi. Arduino powinien widzieć 3,3 V jako logiczne maksimum, więc nie powinieneś musieć konwertować z 3,3 V na 5 V (stoję tutaj, zgodnie ze stroną Arduino, każde napięcie powyżej 3 V jest uważane za logicznie wysokie).

Oto krótki przykład użycia CD4050, Raspberry Pi GPIO UART i Arduino: http://www.andremiller.net/content/raspberry-pi-and-arduino-via-gpio-uart

Wszelkie komentarze są mile widziane, działa, ale mogłem zrobić to źle :)

Andre Miller
źródło
1

Właściwie natknąłem się na ten sam problem i rozwiązałem go, uruchamiając atmega328 barebone z bootloaderem Arduino na 3,3 wolta, ale na 8 MHz. 8 MHz może powodować problemy, jeśli masz ścisłe wymagania dotyczące czasu. Ja sam planuję używać Arduino tylko do generowania PWM dla taśmy led rgb, więc jest w porządku, jeśli częstotliwość PWM wynosi połowę normalnej. Moje dotychczasowe testy wykazały, że Arduino może dobrze odebrać wiadomość.

Gus Reiter
źródło
1

Jest jedno proste rozwiązanie, w którym możesz usunąć dowolne zewnętrzne źródło zasilania Arduino i podłączyć pin GPIO Raspberry Pi 1 do 5 V pin Arduino za pomocą przewodu połączeniowego, w ten sposób główne zasilanie Arduino wyniesie 3,3 V, a wszystkie jego piny będą miały 3,3 V zamiast 5 V. Teraz możesz bezpośrednio podłączyć piny Uart do Pi i Arduino. Pracował dla mnie.

Tirath Singh
źródło