当前位置:首页 > 通信技术 > 通信技术
[导读]1 nRF24L01芯片的介绍  nRF24L01是单片射频收发芯片,工作于2.4~2.5 GHz ISM频段。工作电压为1.9~3.6 V,有多达125个频道可供选择。可通过SPI写入数据,最高可达10 Mb/s,数据传输率最快可达2 Mb/s,并且有自动

1 nRF24L01芯片的介绍

  nRF24L01是单片射频收发芯片,工作于2.4~2.5 GHz ISM频段。工作电压为1.9~3.6 V,有多达125个频道可供选择。可通过SPI写入数据,最高可达10 Mb/s,数据传输率最快可达2 Mb/s,并且有自动应答和自动再发射功能。和上一代nRF2401相比,nRF2401数据传输率更快,数据写入速度更高,内嵌的功能更完备。

  芯片内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融进了增强式ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。芯片能耗非常低,以-6 dBm的功率发射时,工作电流只有9 mA,接收时工作电流只有12.3 mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。

  1.1 nRF24L01引脚介绍

  芯片引脚排列见图1。

各引脚具体功能如下:CE为发射和接收的使能端;CSN为SPI的使能端;SCK为SPI时钟输入;MOSI为SPI数据主输从人端;MISO为SPI数据主人从输端;IRQ为中断输出;VDD为电源端,接3 V直流电源;VSS为参考接地端;XC1,XC2为晶振端;VDD_PA给功率放大器供电1.8 V;ANT1,ANT2为天线接口端;IREF为参考电流端。

  1.2 nRF24L01的指令结构

  nRF24L01所有的配置字都由配置寄存器来定义,这些配置寄存器可通过SPI口访问。

  1.2.1 SPI接口设置

  SPI接口由SCK,MOSI,MISO及CSN组成。

  (1)在配置模式下单片机通过SPI接口配置nRF24L01的工作参数。
  (2)在发射或接收模式下单片机SPI接口发送或接收数据。

  和SPI接口的指令共有8个,使用每个指令时必须使CSN变低,用完后将其变高。单片机的控制指令从nRF24L01的MOSI引脚输入,而nRF24L01的状态信息和数据信息是从其MISO引脚输出并送给单片机的。利用SPI传数时,他是先传低位字节,再传高位字节,并且在传每个字节时是从高位字节传起的。指令分别是;读寄存器指令,格式是000A AAAA;写寄存器指令,格式是001AAAAA(A AAAA代表寄存器在内存中的地址;读Payload指令;写Payload指令;清发射堆栈指令;清接收堆栈指令;发射数据再利用;空操作。

  1.2.2 中断
 
  当nRF24L01的中断源(TX_DS,RX_DR,MAX_RT)被置高时(TX_DS为发送成功标志位,RX_DR为接收数据成功标志位,MAX_RT为自动重发超上限标志位),就会使IRQ引脚置低。可以向状态寄存器写1来清这些中断标志位。通过设置CONFIG寄存器的某些位来屏蔽掉这些中断源,默认情况下,这三个中断源都是允许的。

  1.2.3 内存区

  下面介绍nRF24L01的内存区,一共24个寄存器,以下选取几个重要的加以介绍。

  0号寄存器:第7位是保留位;第6位到第4位分别是TX_DS,RX_DR,MAX_RT屏蔽位,置高能屏蔽相应的中断源;第3位是CRC使能位;第2位是选择CRC长度;第1位是PWR_UP位,高电平为使芯片上电;第0位是发射、接收选择位,高电平是发射,低电平是接收。

  1号寄存器:第7和第6位是保留位,第5到第0位是使能通道5到通道0的自动应答,高电平有效。

  2号寄存器:第7和第6位是保留位,第5到第0位是使能接收通道地址5到地址0,高电平有效。

  4号寄存器:第7位到第4位是设置自动重发的时间,第3位到第0位是设置自动重发的次数。

  7号寄存器是状态寄存器,第7位是保留位,第6位是RX_DR位(1:接收堆栈中有了数据),第5位是TX_DS位(1:数据成功发送到接收方),第4位是MAX_RT位(1:达到重发射上限,产生超时中断),第3到第1位是标志哪个通道接收数据,第0位是发射堆栈状态位。

  1.3 nRF24L01的功能描述

  nRF24L01可以通过设置CE和状态寄存器来选择他的工作状态,如表1所示。

 配置为发射模式的nRF24L01将会利用增强式ShockBurst技术来发射数据包。发送设备在发完数据后将自动转为接收状态来等待接收方的应答信号。若发送设备未接收到应答信号,他将自动重发这包数据(自动重发开启的情况下)直到接收这包数据或者重发次数超过了在寄存器SETUP_RETR_ARC设置的所允许的最大重发次数。如果是第二种情况,他将在STATUS寄存器里的MAX_RT位反映出来,并且给出中断。

  当nRF24L01收到应答信号时,他将认为该包数据成功发送到接收方,并把这包数据从发射堆栈中清除,同时IRQ变低,STATUS寄存器里的中断标志位TX_DS置高。

  用增强式ShockBurst技术来发射数据可以有以下好处:极大地降低了电流损耗;系统开销低;极大地降低了数据在空气中的碰撞率。

  2 系统设计

  2.1 硬件设计

  本系统采用的单片机是PIC16F877,将单片机的PORTC的0~5配置成通用I/O引脚,分别与nRF24L01的IRQ,CE,CSN,SCK,MOSI,MISO连接,控制nRF24L01的工作方式,采用单片机标准的SPI接口。系统上电时,PIC16F877首先对nRF24L01进行写配置寄存器操作,然后使nRF24L01进入发射状态,将要发送的数据写入nRF24L01,激活无线发射。然后检测nRF24L01的IRQ引脚,由于关闭了自动重发射功能,因此如果引脚电平变低,即说明产生发送成功中断,数据发送成功,然后从接收端读出数据即可。

  2.2软件设计

  程序流程图如图3所示。程序编程的基本思路是,系统上电首先配置nRF24L01的寄存器,本系统只对其中几个寄存器进行了重新配置,关闭自动重发射功能是想对发送失败次数进行统计,其他的均采用默认值,如:通信速率2 Mb/s,输出功率0 dBm等。

nRF24L01写配置子程序如下:

3 结 语

  本文介绍了利用PIC16F877和nRF24L01芯片设计的无线数据传输系统,成本低,体积小,传输速率高,具有良好的通用性和可靠性,可供监测和工业控制系统电路设计参考使用。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

广州2023年9月22日 /美通社/ -- 日前,国际独立第三方检测、检验和认证机构德国莱茵TÜV大中华区(以下简称"TÜV莱茵")顺...

关键字: 研讨会 中国汽车 汽车产业 指令

深圳2023年8月10日 /美通社/ -- 近日,源自德国的第三方检测认证机构TÜV南德意志集团 (NB 0123) (以下简称"TÜ...

关键字: 网络安全 指令 BSP ST

(全球TMT2023年7月20日讯)7月19日,第二十届中国制造业数字化转型高峰论坛在西安举行。中之杰智能与现场嘉宾共同分享企业转型方法,探索数智化最佳实践,为制造业高质量发展集势聚能。中之杰智能打造了颠覆性创新产品...

关键字: 建模 双模 中国制造业 指令

单片机的功能是由指令系统体现的。所以,寻址方式和指令系统是衡量微型机的重要指标。

关键字: 单片机 指令 寻址方式

单片机将中央处理器(CPU)、存储和输入输出集成在一个芯片上。可以说,单片机就是微机,只是它的功能和我们平时用的电脑不一样,不是我们用的。像电脑一样强大。计算机可以一个一个地运行应用程序,单片机可以根据工程师的指令编写可...

关键字: 单片机 寄存器 指令

对新手PLC编程入门,或刚毕业的大学生,或多或少对PLC编程有所了解。学习PLC编程常见的方法就是通过相关的辅导书籍来学习,当然,随着PLC培训班的兴起,去PLC编程培训学校学习也是一种很好的学习方法。

关键字: plc 算术运算 指令

ARM微处理器的指令集是加载/存储型的,也即指令集仅能处理寄存器中的数据,而且处理结果都要放回寄存器中,而对系统存储器的访问则需要通过专门的加载/存储指令来完成。ARM微处理器的指令集可以分为跳转指令、数据处理指令、程序...

关键字: ARM 处理器 指令

在指令“MOV A,#12H”中,立即数#12H是源操作数,紧随操作码74H之后存放在ROM中。该指令执行时,单片机先从ROM中读取操作码74H,对操作码74H解码后,确定要进行的操作是将一个8位立即数送入累加器A,接下...

关键字: 单片机 指令 寻址方式

汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。在...

关键字: 汇编语言 指令 单片机

北京2023年1月3日 /美通社/ -- 近日,由中国消费品质量安全促进会(简称“中消会”)和亚马逊共同举办的2022年出口消费品安全合规年度总结大会,暨跨境电商质量安全治理专业委员会筹备启动大会在线上圆满举行。会议回顾...

关键字: 亚马逊 SAFETY 中国制造 指令
关闭
关闭