Các thanh ghi trong nRF24L01

Một phần của tài liệu thiết kế và thi công mạch đo và cảnh báo nhiệt độ dùng sóng rf, giao tiếp máy tính và lưu trữ dùng mmc (Trang 38 - 48)

2. LÝ THUYẾT

2.3.11Các thanh ghi trong nRF24L01

Bảng 2.9 Register CONFIG

Addresss Register Bit Reset value

Type Description

00 CONFIG Thanh ghi cấu hình

MASK_RX_DR 6 0 R/W Phản ánh ngắt tạo ra bởi RX_DR:

‘0’: Ngắt không được thể hiện ra chân IRQ pin.

‘1’: Ngắt được thể hiện ra chân IRQ pin, chân IRQ chuyển xuống mức ‘0’.

MASK_TX_DS 5 0 R/W Phản ánh ngắt tạo ra bởi TX_DS:

‘0’: Ngắt không được thể hiện ra chân IRQ pin.

‘1’: Ngắt được thể hiện ra chân IRQ pin, chân IRQ chuyển xuống mức ‘0’. MASK_MAX_R T 4 0 R/W Phản ánh ngắt tạo ra bởi MAX_RT: ‘0’: Ngắt không được thể hiện ra chân IRQ pin.

‘1’: Ngắt được thể hiện ra chân IRQ pin, chân IRQ chuyển xuống mức ‘0’.

EN_CRC 3 1 R/W Cho phép kiểm tra CRC CRCO 2 0 R/W Chếđộ mã hóa CRC: ‘0’: 1 byte. ‘1’: 2 byte. PWR_UP 1 0 R/W ‘0’: Tăt nguồn. ‘1’ : Mở nguồn. PRIM_RX 0 0 R/W Chọn chếđộ RX/TX: ‘0’: Chếđộ TX. ‘1’: Chếđộ RX> Bảng 2.10 Register EN_AA

Addresss Register Bit Reset value

Type Description

01 EN_AA Thanh ghi kích hoạt chế độ tự động xác nhận ACK.

ENAA_P5 5 1 R/W Cho phép tự động xác nhận ACK trên kênh truyền dữ liệu P5.

ENAA_P4 4 1 R/W Cho phép tự động xác nhận ACK trên kênh truyền dữ liệu P4.

ENAA_P3 3 1 R/W Cho phép tự động xác nhận ACK trên kênh truyền dữ liệu P3.

ENAA_P2 2 1 R/W Cho phép tự động xác nhận ACK trên kênh truyền dữ liệu P2.

ENAA_P1 1 1 R/W Cho phép tự động xác nhận ACK trên kênh truyền dữ liệu P1.

ENAA_P0 0 1 R/W Cho phép tự động xác nhận ACK trên kênh truyền dữ liệu P0.

Bảng 2.11 Register EN_RXADDR

Addresss Register Bit Reset value

Type Description

02 EN_RXADDR Cho phép chọn địa chỉ

RX_ADDR Reserve 7:6 00 R/W Chỉ cho phép ‘00’.

ERX_P5 5 0 R/W Cho phép chọn kênh truyền dữ

liệu P5.

ERX_P4 4 0 R/W Cho phép chọn kênh truyền dữ

liệu P4.

ERX_P3 3 0 R/W Cho phép chọn kênh truyền dữ (adsbygoogle = window.adsbygoogle || []).push({});

liệu P3.

ERX_P2 2 0 R/W Cho phép chọn kênh truyền dữ

liệu P2.

ERX_P1 1 1 R/W Cho phép chọn kênh truyền dữ

liệu P1.

ERX_P0 0 1 R/W Cho phép chọn kênh truyền dữ

liệu P0.

Bảng 2.12 Register SETUP_AW

value

03 SETUP_AW Cài đặt độ rộng của địa chỉ(Cho tất cả các kênh truyền) cho các thanh ghi TX_ADDR và RX_ADDR. Reserve 7:2 00 0000 R/W Chỉ cho phép ’00 0000’. AW 1:0 11 R/W ‘00’: Không hợp lệ. ‘01”: 3 byte. ‘10’: 4 byte. ‘11’: 5 byte. Nếu độ rộng byte nhỏ hơn 5 byte thì các byte nhỏ trong thanh ghi TX_ADDR và RX_ADDR sẽđược dùng.

Bảng 2.13 Register SETUP_RETR

Addresss Register Bit Reset value

Type Description

04 SETUP_RETR Cài đặt chếđộ tựđộng gửi lại. ARD 7:4 0000 R/W Khoảng delay giữa các lần gửi:

‘0000’: Đợi 250 uS. ‘0001’: 500 uS. ‘0010’: 750 uS. …….. ‘1111’: 4000 uS. ARC 3:0 0011 R/W Số lần gửi lại: ‘0000’: Không gửi lại. ‘0001’: Gửi lại 1 lần. ‘0010’: Gửi lại 2 lần. ……… ‘1111’: Gửi lại 15 lần. Bảng 2.14 Register RF_CH

Addresss Register Bit Reset value

05 RF_CH Chọn kênh RF

Reserved 7 0 R/W Chỉ cho phép mức ‘0’. RF_CH 6:0 000 0010 R/W Chọn kênh tần số hoạt động.

Bảng 2.15 Register RF_SETUP

Addresss Register Bit Reset value

Type Description

06 RF_SETUP Cài đặt RF

Reserve 7:5 000 R/W Chỉ cho phép mức ‘000’. PLL_CLOCK 4 0 R/W Sử dụng để khóa tín hiệu.Chỉ

sử dụng để kiểm tra

RF_DR 3 1 R/W Tốc độ truyền dữ liệu trong không khí:

‘0’: 1 Mbp. ‘1’: 2 Mbp.

RF_PWR 2:1 1 R/W Cài đặt công suất ngõ ra trong chếđộ TX: ‘00’: -18 DBm. ‘01’: -12 DBm. ‘10’: -6 DBm. ‘11’: 0 DBm. LNA_HCURR 0 1 R/W Bảng 2.16 Register STATUS

Addresss Register Bit Reset value

Type Description

07 STATUS Thanh ghi trạng thái. (adsbygoogle = window.adsbygoogle || []).push({});

Reserve 7 0 R/W Chỉ cho phép mức ‘0’.

RX_DR 6 0 R/W Bị tác động khi một dữ liệu mới

được đưa RX FIFO. Viết ‘1’ để xóa.

TX_DS 5 0 R/W Tác động khi một gói dữ liệu

đưa tới TX FIFO. Nếu

Bit này chỉ được set khi nhận được ACK. Viết ‘1’ để xóa. MAX_RT 4 0 R/W Bị tác động khi số lần tự động gửi lại được hoàn thành. Viết ‘1’ để xóa.

RX_P_NO 3:1 111 R Chọn kênh được dùng để đọc dữ liệu trong chếđộ RX FIFO. ‘000’-‘101’: Kênh dữ liệu được chọn.

‘110’: Không sử dụng. ‘111’: Chếđộ RX FIFO rỗng. TX_FULL 0 0 R Báo đầy trong chếđộ TX FIFO.

‘0’: Còn chỗ để chứa dữ liệu trong chếđộ TX FIFO.

‘1’: TX FIFO đầy.

Bảng 2.17 Register OBSERVE_TX

Addresss Register Bit Reset value

Type Description

08 OBSERVE_TX Thanh ghi quan sát truyền dữ

liệu.

PLOS_CNT 7:4 0000 R Đếm số gói dữ liệu bị thất lạc. ARC_CNT 3:0 0000 R Đếm số gói dữ liệu được truyền

lại.

Bảng 2.18 Register CD

Addresss Register Bit Reset value Type Description 09 CD Reserved 7:1 000 0000 R CD 0 0 R Phát hiện sóng truyền tới.

Addresss Register B it Reset value Type Description 0A RX_ADDR_P0 3 9: 0 0xE7 E7E7 E7E7 R/W Địa chỉ của kênh dữ liệu P0. Lớn nhất là 5 byte ( LSByte

được viết đầu tiên, số lượng Byte được cài đặt bởi SETUP_AW). 0B RX_ADDR_P1 3 9: 0 0xC2 C2C2 C2C2 R/W Địa chỉ của kênh dữ liệu P1. Lớn nhất là 5 byte ( LSByte

được viết đầu tiên, số lượng Byte được cài đặt bởi SETUP_AW).

0C RX_ADDR_P2 7: 0

0xC3 R/W Địa chỉ của kênh dữ liệu P2. Lớn nhất là 5 byte ( LSByte

được viết đầu tiên, số lượng Byte được cài đặt bởi SETUP_AW).

0D RX_ADDR_P3 7: 0

0xC4 R/W Địa chỉ của kênh dữ liệu P3. Lớn nhất là 5 byte ( LSByteđược viết đầu tiên, số

lượng Byte được cài đặt bởi SETUP_AW).

0E RX_ADDR_P4 7:

0 (adsbygoogle = window.adsbygoogle || []).push({});

0xC5 R/W Địa chỉ của kênh dữ liệu P4. Lớn nhất là 5 byte ( LSByte

được viết đầu tiên, số lượng Byte được cài đặt bởi SETUP_AW).

0F RX_ADDR_P5 7: 0

0xC6 R/W Địa chỉ của kênh dữ liệu P5. Lớn nhất là 5 byte ( LSByte

được viết đầu tiên, số lượng Byte được cài đặt bởi SETUP_AW).

Bảng 2.20 Register TX_ADDR

Addresss Register Bit Reset value Typ e Description 10 TX_ADDR 39:0 0xE7 E7E7 E7E7 R/W Địa chỉ truyền TX_ADDR. Bảng 2.21 Register RX_PW_P0 à RX_PW_P0

Addresss Register Bit Reset value Typ e Description 11 RX_PW_P0 Reserved 7:6 00 R/W Chỉ cho phép mức ‘00’.

RX_PW_P0 5:0 00 0000 R/W Số lượng byte dữ liệu trong thanh ghi RX_PLD nhận được trong chếđộ RX của kênh P0. 0 : Không dùng. 1: 1 Byte. 2: 2 Byte. ………… 32: 32 Byte. 12 RX_PW_P1 Reserved 7:6 00 R/W Chỉ cho phép mức ‘00’.

RX_PW_P1 5:0 00 0000 R/W Số lượng byte dữ liệu trong thanh ghi RX_PLD nhận được trong chếđộ RX của kênh P0. 0 : Không dùng. 1: 1 Byte. 2: 2 Byte. ………… 32: 32 Byte. 13 RX_PW_P2 Reserved 7:6 00 R/W Chỉ cho phép mức ‘00’.

RX_PW_P2 5:0 00 0000 R/W Số lượng byte dữ liệu trong thanh ghi RX_PLD nhận được trong chếđộ RX của kênh P0. 0 : Không dùng. 1: 1 Byte. 2: 2 Byte. ………… 32: 32 Byte. 14 RX_PW_P3 Reserved 7:6 00 R/W Chỉ cho phép mức ‘00’.

RX_PW_P3 5:0 00 0000 R/W Số lượng byte dữ liệu trong thanh ghi RX_PLD nhận được trong chếđộ RX của kênh P0. 0 : Không dùng. 1: 1 Byte. 2: 2 Byte. ………… 32: 32 Byte. 15 RX_PW_P4 Reserved 7:6 00 R/W Chỉ cho phép mức ‘00’.

RX_PW_P4 5:0 00 0000 R/W Số lượng byte dữ liệu trong thanh ghi RX_PLD nhận được trong chếđộ RX của kênh P0. 0 : Không dùng. 1: 1 Byte. 2: 2 Byte. ………… 32: 32 Byte. 16 RX_PW_P5 Reserved 7:6 00 R/W Chỉ cho phép mức ‘00’.

RX_PW_P5 5:0 00 0000 R/W Số lượng byte dữ liệu trong thanh ghi RX_PLD nhận được trong chếđộ RX của kênh P0. 0 : Không dùng. 1: 1 Byte. 2: 2 Byte. ………… 32: 32 Byte. Bảng 2.22 Register FIFO_STATUS

Addresss Register Bit Reset value

Type Description

17 FIFO_STATUS Thanh ghi trạng thái FIFO. Reserve 7 0 R/W Chỉ cho phép mức ‘0’.

Bảng 2.23 Register ACK_PLD

Addresss Register Bit Reset value Type Description

N/A ACK_PLD 255:0 X W Được viết bởi các lệnh trong chế độ SPI.

Bảng 2.24 Register RX_PLD

Addresss Register Bit Reset value Type Description

N/A RX_PLD 255:0 X R Được đọc bởi các lệnh trong chế độ SPI.

Bảng 2.25 Register TX_PLD

Addresss Register Bit Reset value Type Description

N/A TX_PLD 255:0 X W Được viết bởi các lệnh trong chế độ SPI.

TX_REUSE 6 0 R

TX_FULL 5 0 R Cờ báo đầy trong chếđộ TX FIFO: ‘1’: Dữ liệu đưa vào đã đầy trong thanh ghi TX_PLD.

‘0’: Dữ liệu đưa vào chưa đầy trong thanh ghi TX_PLD.

TX_EMPTY 4 1 R Cờ báo trống trong chế độ TX FIFO: (adsbygoogle = window.adsbygoogle || []).push({});

‘1’: Thanh ghi TX_PLD trống. ‘0’: Thanh ghi TX_PLD có dữ liệu. Reserve 3:2 0 R/W Chỉ cho phép mức ‘00’.

RX_FULL 1 0 R Cờ báo đầy trong chếđộ RX FIFO: ‘1’: Dữ liệu đưa vào đã đầy trong thanh ghi RX_PLD.

‘0’: Dữ liệu đưa vào chưa đầy trong thanh ghi RX_PLD.

RX_EMPTY 0 1 R Cờ báo trống trong chế độ RX FIFO:

‘1’: Thanh ghi RX_PLD trống. ‘0’: Thanh ghi RX_PLD có dữ liệu.

Một phần của tài liệu thiết kế và thi công mạch đo và cảnh báo nhiệt độ dùng sóng rf, giao tiếp máy tính và lưu trữ dùng mmc (Trang 38 - 48)