系统级RF芯片nRF24E1收发原理与应用编程
void Init_Receiver(void){
unsigned char b;
CS=1;//打开配置方式
for(b=0;b<rconf.n;b++){ //b<15
SpiReadWrite(rconf.buf[b]); //发送接收器配置字
}
CS=0; //关配置方式
CE=1; //使能收发功能
}
(3)接收函数
void Receiver(void){
unsigned char b;
CS=1; //打开配置方式
for(b=0;b<rconf.n;b++){
SpiReadWrite(rconf.buf[b]); //发送接收器配置字
}
CS=0; //关配置方式
for(;;){
b=ReceivePacket(); //接收数据包
…………//接收后的处理函数等,可自己扩展
}
}
(4)发送函数
void Transmitter(void){
unsigned char b;
CS=1; //开配置方式
for(b=0;b<tconf.n;b++){
SpiReadWrite(tconf.buf[b]);//发送发送器配置字
}
CS=0; //关配置方式
b=KeyByte; //读取数据
TransmitPacket(b); //发送数据
}
(5)其它
nRF24E1程序除了主要的初始化配置函数、接收器配置函数、接收函数和发送函数外,还有接收包处理函数、发送包处理函数、接收器配置字和发射器配置字等。Keil C51 V7.01及其以且的版本都支持nRF24E1,因此,编程非常方便。由于nRF24E1只有512字节的ROM,所以,在使用过程中,要扩展片外存储器(Nordic公司推荐使用25320)。应用中,当VDD上电后,芯片通过SPI接口自动从片外存储器读取数据到片内4KB和RAM中以便程序运行时使用。
《系统级RF芯片nRF24E1收发原理与应用编程(第4页)》