Differences
This shows you the differences between two versions of the page.
— |
hu:arduino:nrf24 [2022/04/21 15:02] () |
||
---|---|---|---|
1: | 1: | ||
+ | ~~META: | ||
+ | keyword | ||
+ | ~~ | ||
+ | ====== nRF24L01 ====== | ||
+ | |||
+ | Sok helyen KY-067 néven emlegetett kommunikációs modul a Nordic Semiconductor [[hu: | ||
+ | |||
+ | |||
+ | |||
+ | ===== Az nRF24L01 modulok közös jellemzői ===== | ||
+ | **Technikai jellemzők: | ||
+ | * [[hu: | ||
+ | * Automatikus nyugtázás funkció | ||
+ | * Cím és [[hu: | ||
+ | * 1 vagy 2Mbps (on air) adatátviteli sebesség | ||
+ | * [[hu: | ||
+ | * Enhanced ShockBurst ™ hardver-protokoll-gyorsító, | ||
+ | * 125 választható RF csatorna (2400..2525 Mhz ISM, csatornánként 1 MHz) | ||
+ | * Minden modul 6 másikkal tarthat egyidejűleg kapcsolatot | ||
+ | * frekvenciaugrás alkalmazása | ||
+ | * 5V-os jelbemenetek | ||
+ | * Tápfeszültség: | ||
+ | |||
+ | A modulok az Arduino felől [[hu: | ||
+ | |||
+ | ===== Az NRF24 IC-k típusai ===== | ||
+ | ^ Modul Id ^ Modul (felülről) ^ Modul (alulról) ^ Modul IC^megjegyzés | | ||
+ | |0830AE|{{: | ||
+ | |1405FJ|{{: | ||
+ | |1242AF|{{: | ||
+ | |1408AF|{{: | ||
+ | |1322DQ|{{: | ||
+ | |1331AF|{{: | ||
+ | |||
+ | {{ : | ||
+ | ===== NRF24L01 + PA + LNA modul (8 pin) ===== | ||
+ | A modul az IC-t integráló panelon kívül egy [[hu: | ||
+ | |||
+ | * 250 Kb-os adatátviteli sebesség mellett az átviteli távolság akár 1100 méter is lehet | ||
+ | * 1 Mb adatátviteli sebesség mellett az átviteli távolság akár 750 méter is lehet | ||
+ | |||
+ | ==== Pinout ==== | ||
+ | {{: | ||
+ | |||
+ | |1|**Ground**|Ground|Grund|Arduino pin| | ||
+ | |2|**Vcc**|Power|Tápfeszültség: | ||
+ | |3|**CE**|Chip Enable|Az SPI kommunikáció engedélyezése|**D7**| | ||
+ | |4|**CSN**|Ship Select Not|A bemenetet HI-ra kell állítani, különben tiltja az SPI kommunikációt|**D8**| | ||
+ | |5|**SCK**|Serial Clock|Az SPI-hez szükséges órajel|**D13**| | ||
+ | |6|**MOSI**|Master Out Slave In|Adatok fogadására szolgáló pin|**D11**| | ||
+ | |7|**MISO**|Master In Slave Out|Adatok küldésére szolgáló pin|**D12**| | ||
+ | |8|IRQ|Interrupt|(opcionális) interrupt pin, " | ||
+ | |||
+ | ===== nRF24L01 + SI24R1 receiver modul (8 pin) ===== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Ez a modul a nyák-on integrálja az antennát is, mely egyfelől olcsóbb, másfelől viszont a hatótávolsága is kisebb - 100..250 m - mint a külső antennás moduloké. Szerencsére a csatlakozófelületük (mármint a lábkiosztásuk) megegyezik. | ||
+ | |||
+ | Az alapértelmezett beállítások szerint az SI24R1 nagyjából 2 ~ 3dBm kimeneti teljesítményt ad le. A 0x06 (RF_SETUP) regiszter legalacsonyabb bitértékének az 1-re állításával ez az érték 7dBm-re emelhető. | ||
+ | |||
+ | ==== Pinout ==== | ||
+ | {{: | ||
+ | |||
+ | |1|**Ground**|Ground|Grund|Arduino pin| | ||
+ | |2|**Vcc**|Power|Tápfeszültség: | ||
+ | |3|**CE**|Chip Enable|Az SPI kommunikáció engedélyezése|**D7**| | ||
+ | |4|**CSN**|Ship Select Not|A bemenetet HI-ra kell állítani, különben tiltja az SPI kommunikációt|**D8**| | ||
+ | |5|**SCK**|Serial Clock|Az SPI-hez szükséges órajel|**D13**| | ||
+ | |6|**MOSI**|Master Out Slave In|Adatok fogadására szolgáló pin|**D11**| | ||
+ | |7|**MISO**|Master In Slave Out|Adatok küldésére szolgáló pin|**D12**| | ||
+ | |8|IRQ|Interrupt|(opcionális) interrupt pin, " | ||
+ | ===== nRF24L01B (10 pin) ===== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | A modul vezetékezése eltér a többitől. Ennek 10 csatlakozója van, 2 Vcc-vel és 2 GND-vel. A többi modulnál használt adapterek (pl. YL-105) itt nem alkalmazhatók ! | ||
+ | |||
+ | ===== nRF24L01 - Arduino Nano vezetékezés ===== | ||
+ | {{: | ||
+ | |||
+ | **Arduino Uno/Nano - nRF24L01** | ||
+ | |||
+ | 3,3V - Vcc \\ | ||
+ | GND - GND \\ | ||
+ | D13 - SCK \\ | ||
+ | D12 - MISO \\ | ||
+ | D11 - MOSI \\ | ||
+ | D10 - CSN \\ | ||
+ | D9 - CE \\ | ||
+ | \\ | ||
+ | \\ | ||
+ | \\ | ||
+ | \\ | ||
+ | \\ | ||
+ | \\ | ||
+ | {{ : | ||
+ | ===== nRF24L01 + (alapmodul) illesztőmodul YL-105 ===== | ||
+ | en: Socket Adapter Module Board For 8 Pin NRF24L01+ Wireless Transceiver \\ | ||
+ | |||
+ | Ez az illesztőmodul megoldja a 3.3V/5V illesztési problémát azáltal, hogy a tápja és a jelek szintje is 5V-os, a 3.3V konverziót " | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ===== nRF24L01 szoftver ===== | ||
+ | https:// | ||
+ | |||
+ | ==== nRF24L01 tesztprogram ==== | ||
+ | |||
+ | Az eredeti kódot kiegészítettem 2 LED-del. Ezek jelzik, mikor küld vagy fogad a modul. A LED-eket a 9-es pinre kell kötni, egy 100 ohmos ellenállással, | ||
+ | === nRF24L01 küldés === | ||
+ | <code c> | ||
+ | /* | ||
+ | * Arduino Wireless Communication Tutorial | ||
+ | * | ||
+ | * | ||
+ | * by Dejan Nedelkovski, | ||
+ | * | ||
+ | * Library: TMRh20/ | ||
+ | */ | ||
+ | #include < | ||
+ | #include < | ||
+ | #include < | ||
+ | RF24 radio(7, 8); // CE, CSN | ||
+ | const byte address[6] = " | ||
+ | void setup() { | ||
+ | pinMode(9, OUTPUT); | ||
+ | radio.begin(); | ||
+ | radio.openWritingPipe(address); | ||
+ | radio.setPALevel(RF24_PA_MIN); | ||
+ | radio.stopListening(); | ||
+ | } | ||
+ | void loop() { | ||
+ | digitalWrite(9, | ||
+ | const char text[] = "Hello World"; | ||
+ | radio.write(& | ||
+ | delay(20); | ||
+ | digitalWrite(9, | ||
+ | delay(1000); | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | === nRF24L01 fogadás === | ||
+ | <code c> | ||
+ | /* | ||
+ | * Arduino Wireless Communication Tutorial | ||
+ | * | ||
+ | * | ||
+ | * by Dejan Nedelkovski, | ||
+ | * | ||
+ | * Library: TMRh20/ | ||
+ | */ | ||
+ | #include < | ||
+ | #include < | ||
+ | #include < | ||
+ | RF24 radio(7, 8); // CE, CSN | ||
+ | const byte address[6] = " | ||
+ | void setup() { | ||
+ | Serial.begin(9600); | ||
+ | pinMode(9, OUTPUT); | ||
+ | radio.begin(); | ||
+ | radio.openReadingPipe(0, | ||
+ | radio.setPALevel(RF24_PA_MIN); | ||
+ | radio.startListening(); | ||
+ | } | ||
+ | void loop() { | ||
+ | digitalWrite(9, | ||
+ | if (radio.available()) { | ||
+ | char text[32] = ""; | ||
+ | radio.read(& | ||
+ | Serial.println(text); | ||
+ | digitalWrite(9, | ||
+ | delay(20); | ||
+ | } | ||
+ | } | ||
+ | </ |