完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
/* ******************************************************************************** * NRF24L01常量、指令、寄存器地址 * * 文 件:NRF24L01.h * 作 者:XX * 日 期:2016年9月19日 ******************************************************************************** */ #ifndef _NRF24L01_H_ #define _NRF24L01_H_ /* ******************************************************************************** * NRF24L01常量 ******************************************************************************** */ #define TX_ADR_WIDTH 5 // 发送地址宽度 5字节 #define RX_ADR_WIDTH 5 // 接收地址宽度 5字节 #define TX_PLOAD_WIDTH 4 // 发送数据宽度 4字节 #define RX_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 // 状态寄存器 #define OBSERVE_TX 0x08 // 发送监测功能 #define CD 0x09 // 载波检测寄存器地址 #define RX_ADDR_P0 0x0A // 频道0接收数据地址 #define RX_ADDR_P1 0x0B // 频道1接收数据地址 #define RX_ADDR_P2 0x0C // 频道2接收数据地址 #define RX_ADDR_P3 0x0D // 频道3接收数据地址 #define RX_ADDR_P4 0x0E // 频道4接收数据地址 #define RX_ADDR_P5 0x0F // 频道5接收数据地址 #define TX_ADDR 0x10 // 发送寄存器地址 #define RX_PW_P0 0x11 // 接收频道0接收数据长度 #define RX_PW_P1 0x12 // 接收频道1接收数据长度 #define RX_PW_P2 0x13 // 接收频道2接收数据长度 #define RX_PW_P3 0x14 // 接收频道3接收数据长度 #define RX_PW_P4 0x15 // 接收频道4接收数据长度 #define RX_PW_P5 0x16 // 接收频道5接收数据长度 #define FIFO_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 (void); #endif |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1744 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1607 浏览 1 评论
1046 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
721 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1664 浏览 2 评论
1920浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
708浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
557浏览 3评论
583浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
541浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-16 23:46 , Processed in 0.530492 second(s), Total 44, Slave 38 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号