王朝网络
分享
 
 
 

基于nRF24E1无线传输的设计与应用

王朝厨房·作者佚名  2007-01-04
宽屏版  字体: |||超大  

西南石油学院 于珍珠 何志敏 梅大成

引言

随着科技的进步,越来越多的无线技术正快速应用到各种产品中。nRF24E1是挪威Nordic公司推出的一款单片2.4GHz无线收发芯片,采用 0.18 m CMOS技术制造,以增强型51为内核,9路10bitADC,采样率可达100K,具有125个频道,传输速率可达1Mbps,内置CRC校验并支持多点通信。1.9~3.6V低功耗工作,内置电压监视和复位电路,多种省电模式可供选择,待机电流仅为2 A。nRF24E1可广泛应用于无线水表、煤气、电表;无线智能传感器;无线数据采集装置;无线身份识别智能卡;无线火警探头;无线耳机、麦克风;无线鼠标、无线键盘;PDA手持终端等短距离无线通信场所。

概述

nRF24E1功能介绍

nRF24E1结构框图如图1所示。

微处理器

nRF24E1 微处理器的指令系统与工业标准的8051相兼容,但两者的执行时序稍有不同。通常,nRF24E1片内微控制器、的指令周期为4到20个指令周期,而工业标准的8051为12~48个时钟周期。nRF24E1的中断控制器支持ADC、SPI、RF接收器1、RF接收器2、唤醒定时器、5个中断源。 nRF24E1拥有3个与8052一样的定时器。在传统的异步通信方式下,与8051兼容的UART可用作定时器1和定时器2的波特率发生器。 nRF24E1的CPU集成了2个数据指针,以便于和外部RAM进行数据传递。晶振直接为nRF24E1的微控制器提供了时钟来源。

nRF24E1的微控制器中有256字节的数据RAM和512字节的ROM。上电复位或经软件初始化后,处理器自动加载ROM引导区中的代码。用户程序通常是在引导区的引导下,从外部串口EEPROM加载到1个4KB的RAM中,这个4KB的RAM也可作存储数据用。如果不使用掩膜ROM(即内含的ROM),程序代码必须从外部非易失性存储器中加载。这时,默认的启动引导区使用 SPI接口的“通用25320”EEPROM。为了控制标准8051没有的功能,nRF24E1增加了一些特殊功能寄存器,如RADIO(P2)、 ADCCON、ADCDATAH、PWMCON、PWMDUTY、RSTREAS等。其P0和P1也和标准8051有所不同,其它大部分的SFRs均与标准8051相同。

PWM

nRF24E1有一个可编程PWM输出,它和DIO9共同复用P0.7引脚,并可软件编程决定PWM工作于6、7或8位。

SPI(串行外设接口)

SPI的3个口(SDI、SCK和SDO)与GPIO(DIN0、DIO0和DIO1)共同复用P1口的三个引脚(P1.0、P1.1、P1.2)。SPI硬件不产生任何片选信号,通常用GPIO位(P0口)来作为外部SPI设备的片选口。

端口逻辑

nRF24E1有1个输入,10个输出引脚。P0(DIO2~DIO9)和P1(DIO0、DIO1、DIN0)默认配置为GPIO(通用输入输出端口)。多数GPIO在程序控制下可复用,这些复用功能包括两个外部中断,UART RXD和TXD,一个SPI主机端口,三个定时器和PWM输出。

RTC唤醒定时器、WTD(看门狗)和RC振荡器

nRF24E1内有一个低功耗的RC振荡器。该振荡器在VDD≥1.8V时,会持续工作。RTC唤醒定时器和WTD(看门狗)是2个16位的可编程定时器,它们的工作时钟为RC振荡器的LP_OSC。唤醒定时器和看门狗的定时时间约为300 s~80ms,其默认值为10ms。唤醒定时器由用户软件控制启动和停止。看门狗在复位后被禁止,再次复位后才能被激活。

A/D转换器

nRF24E1 内有9通道10位ADC,线性转换时间为每10位48个CPU指令周期。A/D转换器可在ARFE输入和内部1.22V的带隙参考之间进行软件选择。转换器的9个输入可由软件进行选择。通道0~7可以转换对应引脚AIN0~AIN7上的电压值,通道8用于对nRF24E1工作电压的监控。A/D转换器默认配置为10位,为满足需要,可通过软件使其工作于6位、8位或12位方式。

无线收发器

nRF24E1 收发器通过内部并行口或内部SPI口与其他模块进行通信,同单片射频收发器nRF2401具有相同的功能。DuoCeiver接收器输出的数据准备信号,可通过程序使其作为微处理器的中断或通过GPIO口传给CPU。nRF24E1工作于全球开放的2.4~2.5GHz频段。收发器由1个完整的频率合成器、1个功率放大器、1个调节器和2个接收器组成。输出功率、频道和其它射频参数可通过对RADIO寄存器(SFR 0xA0)编程进行控制。发射模式下,射频电流消耗仅为10.5mA,接收模式下为18mA。为了节能,可通过软件程序控制收发器的开/关。

硬件设计

nRF24E1收发核心电路如图2所示。

由于本设计要求PCB板越小越好而且成品要密封,所以如何供电成了这次设计的难点。若使用电池则有持续时间短、占用面积大和易震动脱落等缺点。 nRF24E1电源电压是1.9~3.6V,且功耗很低。MAX2323及串口EEPROM25AA320均可工作在3.0V,因此在该设计中摒弃了由电池供电的做法,而采用了从串口取电源作为整个电路的供电系统。其串口取电源电路如图3所示。

软件设计

nRF24E1具有增强型8051内核,Keil C51支持nRF24E1开发,因此利用C51开发经验即可编出高效优质的代码。此程序是经Keil C51 V7.05编译并调试通过,篇幅有限,仅列出主要功能函数。

(1)初始化程序如下:

void Init(void){

//配置I/O口

P0_ALT=0x06; // P0.1为RXD,P0.2为TXD

P0_DIR=0x09; // P0.0和P0.3设为输入

P1_DIR=0x03; // P1.0和P1.1设为输入

PWR_UP=1; //开Radio,读时不用,写时为电源

SPICLK=0; //SPI时钟为XTAL/8

SPI_CTRL=0x02; //把SPI与收发通道1(CH1)相连

//串口通讯初始化

TH1 = 0x0F3; // 晶振为16MHz,波特率为19200(当T1M=1且SMOD=1时)

CKCON |= 0x10; // T1M=1 (计数器时钟为CPU时钟的1/4)

PCON = 0x80; // SMOD=1 (双倍波特率)

SCON = 0x52; // 采用串口模式1,使能接收器

TMOD = 0x20; // 使用计数器1,8位计数值自动重载

TCON = 0x40; // 启动计数器

}

(2)接收器配置函数

void Init_Receiver(void){

unsigned char b;

CS = 1; //打开配置方式

Delay100us(0);

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; //打开配置模式

Delay100us(0);

for(b=0;b<rconf.n;b++){

SpiReadWrite(rconf.buf[b]); //发送接收器配置字

}

CS = 0; //关配置模式

for(;;){

b = ReceivePacket(); //接收数据包

PutChar(b); //串口通信函数,将接收到的数据通过串口传送

}

}

(4)发送函数

void Transmitter(void){

unsigned char b;

CS = 1;

Delay100us(0);

for(b=0;b<tconf.n;b++){

SpiReadWrite(tconf.buf[b]); //发送发送器配置字

}

CS = 0;

for(;;){

b= ReadADC(); // 读A/D转换结果

PutChar(b);

TransmitPacket(b); // 发送数据包

}

}

此程序除了以上函数外,还有串口通讯函数、读A/D转换结果函数、接收包处理函数和发送包处理函数等。

结论

本设计电路简单,易于实现。经实际调试应用完全可用于点对点及点对多点的无线数据传输,收到了良好的效果。1Mbps完全满足一般无线传输的要求。若进行批量生产时可将程序写进nRF24E1的内部RAM中,从而省去了外部串口EEPROM,节约了成本。

本文摘自《世界电子元器件》

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
>>返回首页<<
推荐阅读
 
 
频道精选
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有