Komunikujeme bezdrátově s NRF24L01 – 1. část – zapojení

V tomto článku si vysvětlíme způsob jak jak komunikovat bezdrátovými moduly NRF24L01a NRF24L01+RF+LNA. Já jsem dostal k zapůjčení ptshop.cz moduly oba, ale do ruky mi přišel nejdříve, a také se mi nejvíce líbil typ NRF24L01+RF+LNA. Z popisu parametrů mě nejvíce zaujal dosah a to až 2100m (na volném prostranství). K testování jsem tedy nejprve sáhl po modulu s malou šroubovací anténou.

 

nrf24L01-black

NRF24L01

large_190_nRF24L01-LN-PA-1

nRF24L01p+ PA+ LNA s 2dB anténou

 

Aby jsem mohl s těmito moduly pracovat, stáhl jsem si knihovnu RF24 (z této adresy) a po rozbalení a nakopírování do složky “libraries” jsem se pustil do testování. Nejprve otázka, jak si tyto moduly připojíme k Arduinu. Zapojení je jednoduché na obrázku níže je schéma zapojení obou modulů. Je totiž stejné.

Zapojení pinů na modulu

 

U těchto modulů používáme napájení 3,3V. Vyšší napětí by mohlo modul zničit. Pozor na to, že na obrázku je připojovací konektor zespodu, tak nezapomeňte přemýšlet zrcadlově. Sám jsem to při zapojování popletl. Napájení 3,3V a zem (GND) je jasné. Protože modul používá komunikaci SPI tak zapojení na Arduino UNO a MEGA2650 bude rozdílné. Tabulka pinů kde je sběrnice SPI na obou Arduinech je níže. V tabulce nás bude zajímat MISO, MOSI a SCK. (CE a CS se nastavuje v programu)

Typ deskyMOSIMISOSCKSS(Master)SS(Slave)
Arduino Uno11/ICSP 412/ICSP 113/ICSP 3-10
Arduino Mega 1280/256051/ICSP 452/ICSP 153/ICSP 3-53

Takže u mne je to zapojeno takto (Arduino UNO, Arduino UNO CH340):

  • 1 – GND
  • 2 – 3.3V
  • 3 – pin 9
  • 4 – pin 10
  • 5 – pin 13 (SCK)
  • 6 – pin 11 (MOSI)
  • 7 – pin 12 (SCK)
  • 8 – nezapojeno

 

Výstup z modulu na pinu 8 (IRQ) využívat nebudeme a proto ho necháme nezapojen. Já jsem pro vyzkoušení komunikace vybral Arduino UNO a druhé Arduino UNO CH340. Po zapojení 7 vodičů do Arduina, můžeme začít testovat. Po tom co jsem nahrál knihovnu a restartoval ArduinoIDE jsem se podíval na příklad, který je tam uveden jako základní. I pro mě bylo značně složité se v kódu vyznat a uvádět ho sem ani nebudu. Pro začátek jsem napsal program, který jen otestuje, zda je modul k Arduinu správně připojen. Máte ho tedy zde:

Tento program nic nedělá kromě toho, že stáhne z modulu data o nastavení. Nezapomeňte nastavit rychlost v SerialMonitor na 57600 nebo si nastavte rychlost v kódu programu.

 Výsledek, tedy v případě, že jsme vše zapojili správně vypadá takto:p_okPokud jste nepostupovali správně výsledek vypadá jako zde:

p_false

Doufám, že jste se zapojením neměli problémy a připravíme si zapojené takto dva moduly do dvou Arduin a začneme experimentovat. :-). Ale to až v dalším díle.

5 Komentářů

  1. tomajstr

    Kdy bude další díl? Už s těmito moduly experimentuji dost dlouho a neúspěšně.

    1. Jarda

      na webu: http://www.instructables.com/id/Arduino-NRF24L01-USING-RF-Module/
      je pekný popis, komunikaci s nRF24L01 jsem dle toho rozchodil bez problémů

  2. Jarda_1Jarda_1

    1.část NRF24L01 je z 26.8.2015, kdy lze očekávat dalěí díl?

    1. Administrátor (Autor)

      Už se na něm pracuje, ale jsem teď hodně pracovně vytížen.

  3. speko

    Zdravim piny u Arduina Mega mate zle označené spravne by malo byť SCK (SPI) pin 52, MOSI (SPI)pin 51, MISO (SPI)pin 50.

Napsat komentář

Translate »