NRF24L01相关宏定义及注释

来源:互联网 发布:面向对象java试题 编辑:程序博客网 时间:2024/05/18 14:22
/**********************************************************************************                       NRF24L01常量、指令、寄存器地址         ** 文    件:NRF24L01.h* 作    者:XX* 日    期:2016年9月19日*********************************************************************************/#ifndef _NRF24L01_H_#define _NRF24L01_H_/**********************************************************************************                              NRF24L01常量*********************************************************************************/#defineTX_ADR_WIDTH5  // 发送地址宽度 5字节#defineRX_ADR_WIDTH5  // 接收地址宽度 5字节#defineTX_PLOAD_WIDTH4  // 发送数据宽度 4字节#defineRX_PLOAD_WIDTH  4  // 接收数据宽度 4字节/**********************************************************************************                         NRF24L01相关命令宏定义*********************************************************************************/#define READ_REG      0x00  // 读寄存器指令#define WRITE_REG     0x20// 写寄存器指令#define RD_RX_PLOAD   0X61// 读接收数据指令 #define WR_TX_PLOAD   0xA0// 写待发数据指令#define FLUSH_TX      0xE1// 清空发送缓冲区#define FLUSH_RX      0xE2// 清空接收缓冲区#define REUSE_TX_PL   0xE3// 重复装载数据指令#define NOP      0xFF// 保留/**********************************************************************************                        NRF24L01寄存器地址宏定义*********************************************************************************/#define CONFIG        0x00// 配置收发状态,CRC校验模式以及收发状态响应方式#define EN_AA         0x01// 自动应答功能设置#define EN_RXADDR     0X02// 可用信道设置#define SETUP_AW      0x03// 收发地址宽度设置#define SETUP_RETR    0x04// 自动重发功能设置#define RF_CH        0x05// 工作频率设置#define RF_SETUP      0x06// 发射速率、功耗功能设置#define STATUS  0x07// 状态寄存器#defineOBSERVE_TX    0x08// 发送监测功能#defineCD  0x09// 载波检测寄存器地址#defineRX_ADDR_P0  0x0A// 频道0接收数据地址#defineRX_ADDR_P1  0x0B// 频道1接收数据地址#defineRX_ADDR_P2  0x0C// 频道2接收数据地址#defineRX_ADDR_P3  0x0D// 频道3接收数据地址#defineRX_ADDR_P4  0x0E// 频道4接收数据地址#defineRX_ADDR_P5  0x0F// 频道5接收数据地址#defineTX_ADDR  0x10// 发送寄存器地址#defineRX_PW_P0  0x11// 接收频道0接收数据长度#defineRX_PW_P1  0x12// 接收频道1接收数据长度#defineRX_PW_P2  0x13// 接收频道2接收数据长度#defineRX_PW_P3  0x14// 接收频道3接收数据长度#defineRX_PW_P4  0x15// 接收频道4接收数据长度#defineRX_PW_P5  0x16// 接收频道5接收数据长度#defineFIFO_STATUS  0x17// FIFO栈入栈出状态寄存器设置/**********************************************************************************                        NRF24L01控制函数*********************************************************************************/unsigned char SPI_RW(unsigned char byte);    unsigned char SPI_RW_Reg(unsigned char reg, unsigned char value);unsigned char SPI_Read(unsigned char reg);unsigned char SPI_Read_Buf(unsigned char reg, unsigned char *pBuf, unsigned char bytes);unsigned char SPI_Write_Buf(unsigned char reg, unsigned char *pBuf, unsigned char bytes);void RX_Mode(void);void TX_Mode(void);#endif


0 0
原创粉丝点击