Actions

KAmodRPi Pico RS485/RS232 (PL): Difference between revisions

From Kamamilabs.com - Wiki

Line 34: Line 34:
<hr>
<hr>
==== Elementy obsługowe ====
==== Elementy obsługowe ====
=====<span style="color:#FFFFFF; background:#FF6633">Diody LED</span>=====
=====<span style="color:#FFFFFF; background:#ff9900 ">Diody LED</span>=====


=====<span style="color:#FFFFFF; background:#009999 ">Wskaźnik napięcia zasilającego</span>=====
=====<span style="color:#FFFFFF; background:#009999 ">Wskaźnik napięcia zasilającego</span>=====

Revision as of 06:32, 24 March 2026

Opis

KAmodRPi Pico RS485/RS232 - moduł UART-RS485/RS232 do Raspberry Pi Pico Moduł jest przeznaczony do szeregowej transmisji danych pomiędzy płytkami z serii Raspberry Pi Pico a urządzeniami zewnętrznymi, które wyposażone są w interfejs zgodny ze standardem RS-485 lub z klasycznym portem RS-232C (urządzenia z portem UART TTL (5 V), 3,3 V lub podobnym nie są obsługiwane).
Moduł znajdzie zastosowanie w instalacjach przemysłowych, automatyce budynkowej, systemach wbudowanych, serwisie urządzeń elektronicznych, a także podczas prototypowania i testowania urządzeń wyposażonych w łącze szeregowe typu RS-485 lub RS-232.


Podstawowe cechy i parametry

  • 1x 3-torowa listwa rozłączalna (RS-232: RX, TX, GND)
  • 1x 3-torowa listwa rozłączalna (RS-485: A, B, GND)
  • Zasilanie: 3,3 V DC + 5 V DC (pobierane bezpośrednio z modułu Raspberry Pi Pico)
  • Diody LED sygnalizujące obecność napięcia zasilania modułu oraz kierunki transmisji na obydwu portach szeregowych
  • Wbudowane zabezpieczenia ESD na wszystkich liniach portów RS-232 oraz RS-485
  • Wymiary PCB: 52 x 23 mm

Wyposażenie standardowe

Kod Opis
KAmodRPi Pico RS485/RS232
  • Zmontowany i uruchomiony moduł
File:F.jpg

Schemat elektryczny


Widok płytki drukowanej


Elementy obsługowe

Diody LED
Wskaźnik napięcia zasilającego
Wskaźnik nadawania (RS-232) przez RPi Pico
Wskaźnik odbioru (RS-232) przez RPi Pico
Wskaźnik nadawania (RS-485) przez RPi Pico
Wskaźnik odbioru (RS-485) przez RPi Pico
Przycisk reset
Złącza
Złącze interfejsu RS-232 (full-duplex)
Złącze interfejsu różnicowego RS-485 (half-duplex)

Podłączenie

Moduł jest kompatybilny ze wszystkimi modułami z serii Raspberry Pi Pico, czyli:

  • Raspberry Pi Pico (-H)
  • Raspberry Pi Pico W (-H)
  • Raspberry Pi Pico 2 (-H)
  • Raspberry Pi Pico 2 W (-H)

Przed podłączeniem modułu KAmod RPi Pico RS-485/RS-232 zaleca się odłączyć zasilanie od płytki Raspberry Pi Pico.
W przypadku stosowania płytki RPi Pico/2/W/2W w wersji bez fabrycznie wlutowanych złączy szpilkowych (tj. bez dopiska -H), do której listwy goldpin zostały wlutowane samodzielnie, należy upewnić się, że wtyki są umieszczone po właściwej stronie płytki modułu (luty powinny znajdować się po stronie obsadzonej elementami).

Uwaga! Płytkę KAmod RPi Pico RS-485/RS-232 należy podłączyć w sposób pokazany na poniższej fotografii, tj. stroną z gniazdem RS-232 w kierunku złącza Micro USB modułu Raspberry Pi Pico.

<foto.jpeg> Urządzenie zewnętrzne należy podłączyć do modułu KAmod RPi Pico RS-485/RS-232 wybierając odpowiedni port (RS-232 lub RS-485), w zależności od obsługiwanego przez nie standardu komunikacji szeregowej. W każdym przypadku masa urządzenia musi być podłączona do środkowego zacisku listwy rozłączalnej danego portu.

Obydwa interfejsy są kontrolowane przez niezależne bloki peryferyjne procesora znajdującego się na płytce RPi Pico.

  • Interfejs RS-232: UART0
  • Interfejs RS-485: UART1

Z tego względu możliwe jest jednoczesne komunikowanie się płytki RPi Pico z dwoma różnymi urządzeniami zewnętrznymi. Należy jednak upewnić się, że potencjał masy obydwu urządzeń zewnętrznych oraz urządzenia, z którego RPi Pico pobiera zasilanie (np. komputera) jest jednakowy. W przeciwnym wypadku może dojść do uszkodzenia modułu lub któregoś z pozostałych urządzeń!



Testowanie modułu

Aby przetestować moduł można zastosować poniższy skrypt w języku MicroPython. Po wgraniu kodu do pamięci modułu Raspberry Pi Pico (zawierającego uprzednio wgrany firmware z interpreterem MicroPythona) i uruchomieniu, moduł będzie odsyłał wszystkie dane odebrane na wybranym porcie poprzez ten sam interfejs (RS-232 lub RS-485).

from machine import UART, Pin
import time

# --- Konfiguracja UART0 ---
uart0 = UART(0, baudrate=115200, tx=Pin(0), rx=Pin(1))

# --- Konfiguracja UART1 ---
uart1 = UART(1, baudrate=115200, tx=Pin(4), rx=Pin(5))

print("UART echo running...")

while True:
    # UART0
    if uart0.any():
        data = uart0.read()
        uart0.write(data)   # echo

    # UART1
    if uart1.any():
        data = uart1.read()
        uart1.write(data)   # echo

    time.sleep(0.001)