2.4. Lý thuyết về vi điều khiển STM32
2.4.5. Module thu phát sóng vô tuyến NRF24L01
2.4.5.1. Đặc tính kỹ thuật
Module có thể sử dụng 125 kênh khác nhau cho phép có một mạng gồm 125 modem hoạt động độc lập ở một nơi. Mỗi kênh có thể có tối đa 6 địa chỉ hoặc mỗi đơn vị
có thể liên lạc với tối đa 6 đơn vị khác cùng một lúc.
NRF24L01 module thu phát không dây 2.4GHz cho bạn giải pháp kết nối không dây nhanh và chi phí thấp.
NRF24L01 có các đặc tính kỹ thuật như sau:
- Điện áp làm việc: 1.9V - 3.6V
- Đầu vào dữ liệu tương thích với điện áp 5V (5V tolerance).
- Có thể lựa chọn 3 mức tốc độ kết nối là 2Mbit/s, 1Mbit/s và 250Kbit/s. Tốc độ càng thấp, thì khả năng thu phát càng xa, bù lại dữ liệu truyền / giây bị giảm
xuống
- Số kênh kết nối: 6 kênh
- Phương thức giao tiếp : SPI
- Tiêu thụ dòng thấp. Tại tốc độ truyền 2Mbit/s, dòng tối đa là 12mA. Chế độ nghỉ, module 2.4Ghz tiêu thụ 32uA.
- Nhiệt độ hoạt động: -40 đến 80 độ C
- Thạch anh ngoại: 16 Mhz
29
Hình 2.36 Sơ đồ khối NRF24L01
Gồm các khối:
- PA (Power Amplifiers): khuếch đại công suất ngõ ra khi module NRF24L01 đóng vai trò là module gửi
- LNA (Low Noise Amplifiers): là bộ khuếch đại điện tử khuếch đại tín hiệu công suất rất thấp mà không làm giảm đáng kể tỷ lệ tín hiệu trên tạp âm của nó. Bộ
khuếch đại sẽ tăng công suất của cả tín hiệu và nhiễu có ở đầu vào của nó.
30
Bảng 2.2 Tên và chức năng các chân của NRF24L01
STT
chân
Tên chân Chức năng chân Mô tả
1 CE Digital Input Kích hoạt chế độ hoạt động TX và RX
2 CSN Digital Input Chip Select SPI
3 SCK Digital Input Xung Clock SPI
4 MOSI Digital Input Dữ liệu tớ ngõ vào SPI
5 MISO Digital Output Dữ liệu tớ ngõ ra SPI
6 IRQ Digital Output Chân ngắt
7 VDD Power Chân nguồn (+1.9V đến +3.6V)
8 VSS Power Chân GND
9 XC2 Analog Output Thạch anh chân 2
10 XC1 Analog Input Thạch anh chân 1
11 VDD_PA Power Output Nguồn ra 1.8V
12 ANT1 RF Giao tiếp Antena 1
13 ANT2 RF Giao tiếp Antena 2
14 VSS Power Chân GND
15 VDD Power Chân nguồn (+1.9V đến +3.6V)
16 IREF Analog Input Dòng so sánh ngưỡng
17 VSS Power Chân GND
18 VDD Power Chân nguồn (+1.9V đến +3.6V)
19 DVDD Power Nguồn nội
20 VSS Power Chân GND
Bảng 2.3 Bảng đia chỉ thanh ghi của NRF24L01
Address
(Hex)
Tên thanh ghi Bit Giá trị
Reset
Loại Mô tả
03 SETUP_AW Cài đặt độ dài địa chỉ
Không dùng 7:2 000000 R/W Chỉ “000000” được phép dùng
AW 1:0 11 R/W Giá trị độ rộng TX/RX
‘00’ không được phép
‘01’ 3bytes
‘10’ 4 bytes
‘11’ 5 bytes
Độ dài tối ta là 5 bytes thấp nhất là 3 bytes
04 SETUP_RETR Thiết lập chế độ truyền lại khi
lỗi
31
𝐴𝐷𝐷𝑎 7:4 0000 R/W Thời gian truyền lại khi lỗi
‘0000’ đợi 250𝜇𝑠
‘0001’ đợi 500𝜇𝑠
‘0010’ đợi 750𝜇𝑠
…
‘1111’ đợi 4000𝜇𝑠 Thời gian truyền được quyết định từ khi kết thúc truyền cho đến khi lần truyền tiếp theo xảy ra
ARC 3:0 0011 R/W Đếm số lần thực hiện truyền lại
‘0000’ truyền lại ngắt kết nối
‘0001’ Lần thứ 1 truyền lại lỗi của AA …
‘1111’ Lần thứ 15 truyền lại lỗi của AA
05 RF_CH Kênh RF
Không xài 7 0 R/W Chỉ cho ‘0’ được phép
RF_CH 6:0 0000010 R/W Chọn tần số trong băng thông
trong khoảng từ 2.4Ghz đến 2.4Ghz + 125 Mhz
06 RF_SETUP Cài đặt thanh ghi RF
CONT_WAVE 7 0 R/W Cho bit 7 lên 1 cho phép truyền
liên tục Không dùng 6 0 R/W Chỉ ‘0’ được cho phép RF_DR_LOW 5 0 R/W Cài đặt tốc độ truyền gói tin là
250Kbps
PLL_LOCK 4 0 R/W Dùng để kiểm tra
RF_DR_HIGH 3 1 R/W ‘00’ 1Mbps
‘01’ 2Mbps
‘02’ 250Kbps
‘11’ Không dùng.
RF_PWR 2:1 11 R/W Cài đặt công suất truyền cho
TX ‘00’: -18dBm
‘01’: -12dBm
‘10’: -6dBm
‘11’: 0dBm 0A RX_ADDR_P0 39:0 0xE7E7E
7E7E7
R/W Set địa chỉ nhận thứ 0
MAX: 5 byte MIN: 3 byte
32
0B RX_ADDR_P1 39:0 0xC2C2C
2C2C2
R/W Set địa chỉ nhận thứ 0
MAX: 5 byte MIN: 3 byte
0C RX_ADDR_P2 7:0 0xC3 R/W Chỉ tính byte LSB, còn những
byte còn lại MSB giống với những byte còn lại của P1 0D RX_ADDR_P3 7:0 0xC4 R/W Chỉ tính byte LSB, còn những
byte còn lại MSB giống với những byte còn lại của P1 0E RX_ADDR_P4 7:0 0xC5 R/W Chỉ tính byte LSB, còn những
byte còn lại MSB giống với những byte còn lại của P1 0F RX_ADDR_P5 7:0 0xC6 R/W Chỉ tính byte LSB, còn những
byte còn lại MSB giống với những byte còn lại của P1
10 TX_ADDR 39:0 0xE7E7E
7E7E7
R/W Địa chỉ vận chuyển chỉ được
dùng khi là mode PTX và phải giống địa chỉ RX_ADDR_P0
để bắt tay nếu là chế đố PTX với Enhanced ShockBurst™ được thiết lập
11 RX_PW_P0
Không dùng 7:6 00 R/W Chỉ ‘00’ được phép RX_PW_P1 5:0 0 R/W Có 32 bytes nhưng chỉ sử dụng
từ bytes 1 đến 32
12 RX_PW_P1
Không dùng 7:6 00 R/W Chỉ ‘00’ được phép RX_PW_P1 5:0 0 R/W Có 32 bytes nhưng chỉ sử dụng
từ bytes 1 đến 32
13 RX_PW_P2
Không dùng 7:6 00 R/W Chỉ ‘00’ được phép RX_PW_P2 5:0 0 R/W Có 32 bytes nhưng chỉ sử dụng
từ bytes 1 đến 32
14 RX_PW_P3
Không dùng 7:6 00 R/W Chỉ ‘00’ được phép RX_PW_P3 5:0 0 R/W Có 32 bytes nhưng chỉ sử dụng
từ bytes 1 đến 32
15 RX_PW_P4
Không dùng 7:6 00 R/W Chỉ ‘00’ được phép RX_PW_P4 5:0 0 R/W Có 32 bytes nhưng chỉ sử dụng
từ bytes 1 đến 32
33
16 RX_PW_P5
Không dùng 7:6 00 R/W Chỉ ‘00’ được phép
RX_PW_P5 5:0 0 R/W Có 32 bytes nhưng chỉ sử dụng
từ bytes 1 đến 32
17 FIFO_STATUS Trạng thái thanh ghi FIFO
Không dùng 7 0 R/W Chỉ ’0’ được phép TX_REUSE 6 0 R Giải phóng cho trống bộ nhớ TX_FULL 5 0 R TXFIFO full flag:1 báo tràn
TXFIFO full:0 bộ nhớ còn khả dụng
TX_EMTY 4 1 R Cờ TXFIFO trống nếu:
1: TXFIFO trống 0: dữ liệu bên trong TX_FIFO
Hình 2.37 Ảnh thực tế Module NRF24L01
Ở NRF24L01 còn có chế độ đa nhận MultiCeiver™ là đặc tính dùng trong chế độ
RX mang lại khả năng thiết lập 6 gói dữ liệu song song với địa chỉ tương ứng
Các gói dữ liệu có kênh logic trong kênh RF vật lý, mỗi data này chứa một địa chỉ vật lý mà nó đã sở hữu
34