KAmodRPi Pico RS485/RS232 (PL): Difference between revisions
From Kamamilabs.com - Wiki
| (6 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
__jzpdf__ | __jzpdf__ | ||
==== Opis ==== | ==== Opis ==== | ||
<b>KAmodRPi Pico RS485/RS232 - moduł RS485/RS232 do Raspberry Pi Pico</b> | <b>KAmodRPi Pico RS485/RS232 - moduł RS485/RS232 do Raspberry Pi Pico</b><br> | ||
Moduł jest przeznaczony do szeregowej transmisji danych pomiędzy płytkami z serii Raspberry Pi Pico a urządzeniami zewnętrznymi, które dysponują interfejsem RS-485 lub klasycznym portem RS-232C (urządzenia z portem UART TTL 5/3,3 V lub podobnym nie są obsługiwane). Interfejsy są sterowane, jak klasyczne interfejsy UART, wyłącznie sygnałami TX i RX, bez dodatkowych linii sterujących. 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. | Moduł jest przeznaczony do szeregowej transmisji danych pomiędzy płytkami z serii Raspberry Pi Pico a urządzeniami zewnętrznymi, które dysponują interfejsem RS-485 lub klasycznym portem RS-232C (urządzenia z portem UART TTL 5/3,3 V lub podobnym nie są obsługiwane). Interfejsy są sterowane, jak klasyczne interfejsy UART, wyłącznie sygnałami TX i RX, bez dodatkowych linii sterujących. 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. | ||
<center> | <center> | ||
| Line 43: | Line 43: | ||
[[File:KAmodRPi_Pico_RS485_RS232_sch.png|none|900px|thumb|center]] | [[File:KAmodRPi_Pico_RS485_RS232_sch.png|none|900px|thumb|center]] | ||
</center> | </center> | ||
<br> | |||
<hr> | <hr> | ||
==== | ==== Kontrolki sygnalizujące ==== | ||
<center> | <center> | ||
{| class="wikitable" style="width: 1000px;" | {| class="wikitable" style="width: 1000px;" | ||
| Line 57: | Line 58: | ||
|- | |- | ||
| style="text-align: center;"|<b>RX</b> 232 | | style="text-align: center;"|<b>RX</b> 232 | ||
| style="text-align: left;"|Miganie diody LED oznacza odbieranie danych z magistrali RS232 | | style="text-align: left;"|Miganie diody LED oznacza odbieranie danych przez RPi Pico z magistrali RS232 | ||
|- | |- | ||
| style="text-align: center;"|<b>TX</b> 232 | | style="text-align: center;"|<b>TX</b> 232 | ||
| style="text-align: left;"|Miganie diody LED oznacza nadawanie danych na magistralę RS232 | | style="text-align: left;"|Miganie diody LED oznacza nadawanie danych przez RPi Pico na magistralę RS232 | ||
|- | |- | ||
| style="text-align: center;"|<b>A</b> 485 | | style="text-align: center;"|<b>A</b> 485 | ||
| style="text-align: left;"|Miganie diody LED oznacza odbieranie danych z magistrali RS485 | | style="text-align: left;"|Miganie diody LED oznacza odbieranie danych przez RPi Pico z magistrali RS485 | ||
|- | |- | ||
| style="text-align: center;"|<b>B</b> 485 | | style="text-align: center;"|<b>B</b> 485 | ||
| style="text-align: left;"|Miganie diody LED oznacza nadawanie danych na magistralę RS485 | | style="text-align: left;"|Miganie diody LED oznacza nadawanie danych przez RPi Pico na magistralę RS485 | ||
|} | |} | ||
</center> | </center> | ||
| Line 73: | Line 74: | ||
[[File:KAmodRPi_Pico_RS485_RS485_leds.png|none|700px|thumb|center]] | [[File:KAmodRPi_Pico_RS485_RS485_leds.png|none|700px|thumb|center]] | ||
</center> | </center> | ||
<br> | |||
<hr> | <hr> | ||
| Line 80: | Line 82: | ||
[[File:KAmodRPi_Pico_RS485_RS232_res.png|none|700px|thumb|center]] | [[File:KAmodRPi_Pico_RS485_RS232_res.png|none|700px|thumb|center]] | ||
</center> | </center> | ||
<br> | |||
<hr> | |||
====Złącza==== | ====Złącza==== | ||
Latest revision as of 09:11, 25 March 2026

Opis
KAmodRPi Pico RS485/RS232 - moduł 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 dysponują interfejsem RS-485 lub klasycznym portem RS-232C (urządzenia z portem UART TTL 5/3,3 V lub podobnym nie są obsługiwane). Interfejsy są sterowane, jak klasyczne interfejsy UART, wyłącznie sygnałami TX i RX, bez dodatkowych linii sterujących. 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
- 1× 3-torowe rozłączalne złącze typu Phoenix MC 3,81 mm (RS-232: RX, TX, GND)
- 1× 3-torowe rozłączalne złącze typu Phoenix MC 3,81 mm(RS-485: A, B, GND)
- 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
- Interfejs RS485 half-duplex z automatycznym wykrywaniem kierunku transmisji
- Interfejs RS232 full-duplex, sterujący liniami RXD i TXD
- Zasilanie: 3,3 V DC + 5 V DC (pobierane bezpośrednio z modułu Raspberry Pi Pico)
- Wymiary PCB: 52 x 23 mm
Wyposażenie standardowe
| Kod | Opis |
|---|---|
| KAmodRPi Pico RS485/RS232 |
|

Schemat elektryczny

Kontrolki sygnalizujące
| Kontrolka | Funkcja |
|---|---|
| PWR | Świecenie diody LED PWR oznacza obecność zasilania |
| RX 232 | Miganie diody LED oznacza odbieranie danych przez RPi Pico z magistrali RS232 |
| TX 232 | Miganie diody LED oznacza nadawanie danych przez RPi Pico na magistralę RS232 |
| A 485 | Miganie diody LED oznacza odbieranie danych przez RPi Pico z magistrali RS485 |
| B 485 | Miganie diody LED oznacza nadawanie danych przez RPi Pico na magistralę RS485 |

Przycisk reset
Przycisk RES służy do natychmiastowego ponownego uruchomienia mikrokontrolera dołączonego modułu RPI Pico poprzez chwilowe zwarcie pinu RUN do masy (GND)

Złącza
| Interfejs | Element | Funkcja |
|---|---|---|
| RS232 | Złącze Phoenix MC 3,81 mm |
Złącze interfejsu RS-232 (full-duplex) styk 1 – RX; styk 2 – GND; styk 3 – TX |
| RS485 | Złącze Phoenix MC 3,81 mm |
Złącze interfejsu różnicowego RS-485 (half-duplex) styk 1 – B+; styk 2 – GND; styk 3 – A+ |

Podłączenie
Moduł jest kompatybilny ze wszystkimi modułami z serii Raspberry Pi Pico, z wlutowanymi złączami szpilkowymi, czyli:
- Raspberry Pi Pico
- Raspberry Pi Pico W
- Raspberry Pi Pico 2
- Raspberry Pi Pico 2 W
Przed podłączeniem modułu KAmod RPi Pico RS-485/RS-232 należy odłączyć zasilanie od płytki Raspberry Pi Pico.
W przypadku płytek z samodzielnie wlutowanymi złączami szpilkowymi należy upewnić się, że sygnały opisane na połączonych płytkach są ze sobą zgodne.
| 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. |

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, tx=Pin 0, rx=Pin 1
- Interfejs RS-485: UART1, tx=Pin 4, rx=Pin 5
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)