LoriQian的笔记 https://bbs.21ic.com/?656016 [收藏] [复制] [RSS]

日志

对2.4GHz无线数传模块 nRF2401A 的使用及测试 [转]

已有 1805 次阅读2012-7-5 07:02 |系统分类:单片机| NRF2401, 2.4GHz, STM32

转自:bbs.eeworld.com.cn/ID: nmzqdsg

*********************************



嗯,最近终于有时间对nRF2401A进行了全面的了解。最后定做和加工了一些板子出来,实际测试效果非常不错,距离轻松达到500米以上!



先来晒一下成品:






20111018_07c1763df0da0b07f6bcNgZyr1HPDLGO.jpg.thumb.jpg










下面的“大”个头是nRF2401A,上面的“小”家伙是nRF24L01+,都是一起做的板子






20111018_fb496761a886d537508alQiHoivigUMi.jpg.thumb.jpg










nRF2401A算是比较老的产品了,大家应该早有听说或使用过。

最为使用最广泛的2.4GHz无线数传模块之一,nRF2401A当然具备很多及优势,现在来简单介绍一下:

1.使用2.4GHz开放频段

   这里有点小注意:nRF2401A发射时的工作频率最高为2526MHz,接收时的最大工作频率为2524MHz。

2.高数据传输率,支持250kbps和1Mbps。

    这个速率已经和蓝牙差不多了,所以这也是nRF2401A经久不衰的一个原因啦。

3.低功耗设计

    工作电压范围 1.9~3.6V。工作在接收状态时的电流消耗为18mA,工作在发送模式功率为0dBm时消耗电流为13mA。

    嗯,看起来很适合使用电池进行供电的场合使用?

    没错,现在的无线键盘鼠标里面多数就是使用的nRF2401A和nRF24L01方案。

4.简单的操作方式,减少MCU的工作负担。

    nRF2401A除了同MCU之间使用简易的SPI通讯之外,还提供PWR_UP、DR1和DR2等直接操作引脚。

    通过对PWR_UP操作可快速完成“上电”和“休眠”模式的切换。

    而DR1、DR2可在nRF2401A完成数据接收后输出高电平,通知MCU准备读取接收数据。

5.省力的Shockburs传输模式

    这个“Shockburst”可是nRF2401A最吸引人的地方了,“Shockburst”是什么呢?

    通常的无线数传芯片在向空中发送数据包的时候需要先传送“前导字”,随后是“地址码”,接下来是“用户数据”,最后就是“CRC校验码”。

    当你使用“Shockburst”传输模式的时候,只需告诉nRF2401要发送数据的“地址”和“数据”就好啦,

    “前导”和“CRC”什么的全部由“Shockburst”帮你完成了!

    接收数据的时候也是一样,nRF2401A在收到一组数据后会检查“地址”和“CRC校验码”,

    错误时会丢弃,正确时会通知MCU进行读取工作,而在其它时间,MCU无需进行任何处理!MCU表示很轻松啊有木有!



就这些特点来说,nRF2401A特别适合初学无线数传和期望快速开发产品的朋友们使用。



——————华N——————丽O——————的V——————分A——————隔T——————线E——————



最后重点的来说谈谈说关于“通讯距离”的问题

很多初学者和使用过nRF2401A或者nRF24L01系列数传芯片的人都会很关心的问题,

    到底使用这些东西进行数据传输的时候的有效或者最大距离是多少?

    为什么我在实际使用的时候连5米都不到?

    有些模块还宣称1000到2000米的传输距离是真实的吗?

传输距离是无线数传芯片和模块的一个综合指标,它同时受到很多条件、因素和参数的影响。



        首先是天线,天线增益是一个硬性指标,通常来讲是增益越高传输距离越远。当然了,你总不能指望一个手持设备外面附带一个胳膊粗细,胳膊长短的高增益天线吧?所以不能仅仅指望使用更高的天线增益来增加距离。



        再来是无线数传芯片的输出功率。通常2.4GHz产品最大输出功率为0dBm,433MHz为10dBm。超过该数值一般会有两个问题:

        1.过大的输出功率会影响或干扰到其它工作在相近频率的设备,造成其它设备无法正常工作。

        2.增加输出所使用的PA电路过急剧的增加设备的电流消耗和发热量。使用PA的无线数传模块通常不再适合低功耗和移动设备使用。



        数据传输速率同

样也是影响通讯距离的关键因素。以nRF2401A为例,其同时支持250kbps和1Mbps的数传传输速率,当其它应用参数一致时,两种数据传输速率

实际测的通讯距离相差很大。低速率的250kbps通讯距离至少在高速率的1Mbps的2倍以上。这也是初学者容易犯错的地方,没有很大的数据量却贪图高

传输速率,结果却影响了传输距离。



         最后也是最重要的一点“电路设计”。无线数传模块设计,特别是高频无线数传模块设计,对

电路的设计和元件选用都有极高的要求。虽然像nRF2401A芯片已经有了很高的集成度,但还是需要对发送、接收型号进行匹配工作。这是无线数传模块的设

计核心。想像一下吧,给你再好的汽车,却只能在泥土路上行驶,想必一定感觉很不好。高频电路设计也一样,芯片输出时如果经过设计不合理的电路和元件,输出

功率在没到达天线的时候就已经损失过半,这样的情况搭配再高增益的天线和再低通讯速率也很难拉开通讯距离。

        如果你在实际使用中搭配了很拉风天线搭配最高的输出功率和低到可怜的传输速率之后还是只能得到几十米甚至几米之内……

        我在设计之初也被这个问题困扰了很久,电路的绘制和元件选用都是按照官方的参数进行的设计(国内好多模块应该都是这么Copy的),结果呢?很好,仅有几十米……

        在细致研究相关知识、重新设计、无数次的实际测试后…… 呵呵 注意如下两种模块都没有加PA电路哦






20111018_0b10723a0149eaabaee4AF3kQ4FRkPiu.jpg.thumb.jpg










        在宽阔路面上进行测试,nRF2401A和nRF24L01+模块,发射功率同为0dBm,数据传输速率为1Mbps,选用2dBi增益天线时测的稳定的数据传输距离为200米!

       如果仅将数据传输速率降低为250kbps,其余参数和天线不变的情况下,有效传输距离超过500米!

       到达700米时开始出现丢包现象,800米时丢包严重,接近1000米时完全失去接收数据。








20111018_17cd50e3b77fb9f44789dCGXb193Tpm1.jpg.thumb.jpg










       对于这个测试结果我已经很满意了,毕竟没有使用PA电路,仅仅使用芯片输出的0dBm信号就达到了这个距离。

       欢迎对无线数传应用敢兴趣的朋友与我联系,这样也有机会多向大家学习

路过

鸡蛋

鲜花

握手

雷人

发表评论 评论 (2 个评论)

回复 nj21ic 2012-7-6 08:02
很牛牛牛
回复 jinyuewei 2012-7-8 13:49
没用过,准备用字智能车上,先学习了,呵呵。