NRFL分别发送段数据.doc
文本预览下载声明
#ifndef __DEFINE_H__
#define __DEFINE_H__
#include reg52.h
#include intrins.h
//hard pin mapping
sbit MISO =P0^3; //从SPI数据输出脚
sbit MOSI =P0^4; //从SPI数据输入脚
sbit SCK =P0^5;
sbit CE =P0^6;
sbit CSN =P0^7;
sbit IRQ =P0^2;
sbit LED2 =P2^7;
sbit LED1 =P2^6;
sbit KEY1 =P1^0;
sbit KEY2 =P1^1;
/*
#endif //_DEF_
// nRF24L01.h
#ifndef __NRF24L01_H__
#define __NRF24L01_H__
#define TX_ADR_WIDTH 5 // 5 bytes TX address width //Page54
#define RX_ADR_WIDTH 5 // 5 bytes RX address width //Page54
#define TX_PLOAD_WIDTH 4 // 20 bytes TX payload //Page46
#define RX_PLOAD_WIDTH 4 // 20 bytes RX payload //Page46
typedef unsigned char BYTE;
typedef unsigned char uchar;
//****************************************************************//
/* SPI(nRF24L01) commands //SPI指令格式 Page45 8.3.1 */
#define READ_REG 0x00 // Define read command to register //读配置寄存器
#define WRITE_REG 0x20 // Define write command to register //写配置寄存器
#define RD_RX_PLOAD 0x61 // Define RX payload register address //读RX有效数据
#define WR_TX_PLOAD 0xA0 // Define TX payload register address //写TX有效数据
#define FLUSH_TX 0xE1 // Define flush TX register command //清楚TX FIFO寄存器,应用于发射模式下
#define FLUSH_RX 0xE2 // Define flush RX register command //清楚RX FIFO寄存器,应用于接收模式下
#define REUSE_TX_PL 0xE3 // Define reuse TX payload register command //重新使用上一次的有效数据
#define NOP 0xFF // Define No Operation, might be used to read status register //空操作
//***************************************************//
// SPI(nRF24L01) registers(addresses)
#define CONFIG 0x00 // Config register address //Page53
#define EN_AA 0x01 // Enable Auto Acknowledgment register address //Page53
#define EN_RXADDR 0x02 // Enabled RX addresses register address //Page53
#define SETUP_AW 0x03 // Setup address width register address //Page54
#define SETUP_RETR 0x04 // Setup Auto. Retrans register a
显示全部