Spisu treści:

Transmisja bezprzewodowa NRF24L01 między Arduino: 10 kroków
Transmisja bezprzewodowa NRF24L01 między Arduino: 10 kroków

Wideo: Transmisja bezprzewodowa NRF24L01 między Arduino: 10 kroków

Wideo: Transmisja bezprzewodowa NRF24L01 między Arduino: 10 kroków
Wideo: Arduino i obsługa nRF24L01 2024, Lipiec
Anonim
Transmisja bezprzewodowa NRF24L01 między Arduino
Transmisja bezprzewodowa NRF24L01 między Arduino

NRF24L01 to bezprzewodowy moduł RF o niskiej mocy 2,4 GHz firmy Nordic Semiconductors. Może pracować z szybkością transmisji od 250 kbps do 2 Mbps. Jeśli pracuje na otwartej przestrzeni z mniejszą szybkością transmisji, może osiągnąć nawet 300 stóp. Jest więc używany w aplikacjach krótkiego zasięgu, takich jak automatyka domowa, zabawki, kontrolery gier i inne.

Moduł NRF24L01 może zarówno przesyłać, jak i odbierać dane. Wykorzystuje protokół SPI do komunikacji z mikrokontrolerami. Dzięki temu można używać modułu z Arduino na pinach komunikacyjnych SPI. Zobaczymy, jak połączyć ten moduł z Arduino i sterować diodą LED z innego Arduino. Przy rozstawie 1 Mhz w zakresie pracy 2400 Mhz – 2525 Mhz (2,40 Ghz – 2,525 GHz) daje możliwość posiadania sieci 125 niezależnie pracujących modemów na tym samym obszarze. Każdy kanał może mieć do 6 adresów i może komunikować się z maksymalnie 6 innymi jednostkami jednocześnie.

Krok 1: Cechy NRF24L01

Cechy:

  • Napięcie robocze: od 9 V do 3,6 V
  • Napięcie zasilania: 3 V
  • Napięcie pinów: tolerancja 5 V (nie ma potrzeby stosowania konwerterów poziomów)
  • Niedrogi jednoukładowy układ nadawczo-odbiorczy RF GFSK 2,4 GHz
  • Zasięg działania (otwarta przestrzeń): 300 stóp (może wzrosnąć do 3000 stóp za pomocą anteny zewnętrznej)

W tym samouczku będziemy wysyłać i odbierać dane za pomocą konfiguracji dwóch modułów NRF24L01. Jedna konfiguracja jest po stronie nadajnika, a druga po stronie odbiornika. Wysyłamy polecenia jako ciąg „ON” (niezależnie od tego, jaką wiadomość chcesz wysłać) po stronie nadajnika, po stronie odbiornika wydrukujemy tę samą wiadomość na monitorze szeregowym, która została wysłana z drugiej strony.

Aby dowiedzieć się, jak stworzyć projekt monitorowania dziecka za pomocą NRF24L01 - odwiedź tutaj

Krok 2: Warunki wstępne

Wymagane komponenty:

  • Arduino Uno – 2 szt. (może również używać Nano)
  • Bezprzewodowy moduł RF NRF24L01 – 2 przewody zworki

Biblioteki:

  • Biblioteka RF24 –
  • Biblioteka SPI

Krok 3: Szczegóły przypinania

Szczegóły przypinania
Szczegóły przypinania
  1. GND – uziemienie
  2. VCC – Zasilanie 3,3 V (1,9 V do 3,6 V)
  3. CE – Włącz chip
  4. CSN – wybór chipa nie
  5. SCK – zegar szeregowy dla magistrali SPI
  6. MOSI – Master Out Slave In
  7. MISO – Master w Slave Out
  8. IRQ – Pin przerwania (aktywny niski)

Moduł zużywa 1,9 V do 3,6 V, ale piny mogą wytrzymać do 5 V.

Krok 4: Połączenia SPI dla różnych płyt

Jeśli używasz Arduino Uno, Pro Mini, Nano lub Pro Micro, piny SPI są takie same jak na poniższym schemacie obwodu. Jeśli używasz Arduino Mega, sprawdź piny SPI, które są mapowane inaczej, zgodnie z projektem sprzętu. Sprawdź stronę referencyjną biblioteki SPI dla różnych pinów SPI na różnych typach płytek tutaj. Dodatkowo płyty Arduino mają oddzielne nagłówki ICSP dla kompatybilności z Sheilds.

Krok 5: Obwód po stronie nadajnika i po stronie odbiornika są takie same w tym przykładzie

Obwód po stronie nadajnika i po stronie odbiornika jest taki sam w tym przykładzie
Obwód po stronie nadajnika i po stronie odbiornika jest taki sam w tym przykładzie

W tym przykładzie obwód po stronie nadajnika i odbiornika jest taki sam.

Krok 6: Kod – strona nadajnika:

Krok 7: Odbiornik

Obwód odbiornika jest taki sam, jak nasz obwód nadajnika w naszym projekcie. Wykonaj więc połączenia zgodnie z obwodem nadajnika i upewnij się, że wgrałeś poprawny kod dla odbiornika.

Krok 8: Kod odbiorcy:

Krok 9: Wyjaśnienie:

Opis:

NRF24l01 może działać jako nadajnik i odbiornik. W powyższym kodzie po stronie nadajnika wysyłamy tekst „ON”, a ten sam zostanie wyświetlony po stronie odbiornika za pośrednictwem monitora szeregowego i włącza diodę LED podłączoną do styku 4. NRF24l01 można zidentyfikować po jego adresie. Jest wymieniony w ciągu liczbowym. Użyliśmy

stały adres bajtu[6] = "00001";

Użyliśmy tutaj „00001” jako adresu. Możesz przypisać dowolny ciąg liczb, aby ustawić adres. Dane są przesyłane przez potok odczytu/zapisu na NRF24l01. Jest to tymczasowy bufor przechowujący dane do wysłania lub odebrania.

Nadajnik – zapis danych do potoku:

radio.openWritingPipe(adres);

Odbiornik – odczyt danych z Rurociągu:

radio.openReadingPipe(0, adres);

Jest to prosta konfiguracja nadawania i odbioru dla modułu NRF. Alternatywnie możesz wysłać dane z czujnika od strony nadajnika i zgodnie z wartościami czujnika możesz wykonać pewne czynności po stronie odbiornika.

Krok 10: Projekt monitorowania dziecka za pomocą NRF24L01

Rozszerzoną wersję tego samouczka omówiono na naszym blogu. Zrób projekt monitorowania dziecka za pomocą modułu NRF24L01.

Odwiedź nasz blog na temat „Projekt monitorowania dziecka przy użyciu modułu NRF24L01”.

Więcej samouczków znajdziesz na stronie FactoryForward Blog

Kupuj online w FactoryForward India (Raspberry Pi, Arduino, czujniki, części do robotów, zestawy DIY) i nie tylko.

Zalecana: