浅谈RF收发芯片nRF24E1及其在无线键盘中的应用

时间:2011-08-26

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

  nRF24E1收发器是Nordic VLSI推出的系统级射频芯片。采用先进的0.18μm CMOS工艺、6×6mm的36引脚 QFN封装,以nRF2401 RF芯片结构为基础,将射频、8051MCU、9输入10位ADC、125通道、UART、SPI、PWM、RTC、WDT全部集成到单芯片中,内部有电压调整器(工作电压1.9~3.6V,推荐工作电压为3.3V)和VDD电压监视,通道开关时间小于200μs,数据速率1Mbps,射频输出分贝数0dB,不需要外接SAW(声表)滤波器。

  1 nRF24E1简介

  1.1 微处理器

  微处理器用一片或少数几片大规模集成电路组成的中央处理器。这些电路执行控制部件和算术逻辑部件的功能。微处理器与传统的中央处理器相比,具有体积小,重量轻和容易模块化等优点。微处理器的基本组成部分有:寄存器堆、运算器、时序控制电路,以及数据和地址总线。微处理器能完成取指令、执行指令,以及与外界存储器和逻辑部件交换信息等操作,是微型计算机的运算控制部分。它可与存储器和外围电路芯片组成微型计算机。

  nRF24E1微处理器的指令系统与工业标准8051的指令系统兼容,但二者的指令执行时间稍有不同。通常,nRF24E1的每条指令执行时间为4~20个时钟周期,而工业标准8051的每条指令执行时间为12~48个时钟周期。nRF24E1比工业标准8051增加了ADC、SPI、RF接收器1、RF接收器2和唤醒定时器5个中断源;3个与8052一样的定时器。nRF24E1内含有1个与8051相同的UART,在传统的异步通信方式下,可用定时器1和定时器2作为UART(串口)的波特率发生器。nRF24E1功能模块图如图1所示。

  微处理器中有256B的数据RAM和512B的ROM。上电复位或软件复位后,处理器自动执行ROM中引导区中的代码。用户程序通常是在引导区的引导下,从E2PROM加载到1个4KB的RAM中(该RAM也可作存储数据用)。如果应用中不用掩膜ROM(即内含的ROM),程序代码必须从外部非易失性存储器中加载。比较常见的是通过SPI接口扩展E2PROM,型号推荐为25320。

  与标准8051相比,因nRF24E1的微控制器增加了一些新的功能,因此也相应地增加了一些特殊功能寄存器来对这些新增的功能进行控制。nRF24E1的微控制器中,P0和P1口的寄存器也和标准8051的有所不同,其他特殊功能寄存器与标准8051的相同。

  1.2 PWM和SPI接口

  nRF24E1有一个可编程控制的PWM输出,使用时,通过程序可改变DIO9(即P0.7)的功能,并可编程决定PWM工作于6位、7位或8位。脉冲宽度调制是一种模拟控制方式,其根据相应载荷的变化来调制晶体管栅极或基极的偏置,来实现开关稳压电源输出晶体管或晶体管导通时间的改变,这种方式能使电源的输出电压在工作条件变化时保持恒定,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。PWM控制技术以其控制简单,灵活和动态响应好的优点而成为电力电子技术广泛应用的控制方式,也是人们研究的热点。由于当今科学技术的发展已经没有了学科之间的界限,结合现代控制理论思想或实现无谐振软开关技术将会成为PWM控制技术发展的主要方向之一。

  SPI的3个口与GPIO(DIN0、DIO0、DIO1)和RF收发器重用。SPI硬件不产生任何片选信号,通常,用GPIO的位(P0口)作为外部SPI设备的片选口。3种SPI的处理流程大同小异,以目前使用多的SPI-4为例来说明SPI的原理。它在发送接口和接收接口都有各自的数据通道和流控状态信息通道,其数据通道和流控状态信息通道是独立的并且是点对点通信。数据是以包的形式发送,根据数据包中的内嵌地址可支持高达256个端口,以下分别说明基本协议及数据通道和流控状态信息的处理过程。

  1.3 RTC唤醒定时器、WTD和RC振荡器

  nRF24E1内有一个低功耗的RC振荡器,当VDD≥1.8V时,可连续工作,和应用程序无关。RTC唤醒定时器和WTD(看门狗)为2个16位可编程定时器,它们的工作时钟为RC振荡器的LP_OSC。唤醒定时器和看门狗的定时时间约为300μs~80ms,默认值为10ms。

  1.4 A/D转换器

  nRF24E1内有9通道10位ADC,线性转换时间为每10位48个CPU指令周期。A/D转换器的9个输入可通过软件进行选择,通道0~7可以把对应引脚AIN0~AIN7上的电压值转换为数字值,通道8用于对nRF24E1工作电压的监控。

  1.5 无线收发器

  nRF24E1收发器通过内部并行口或内部SPI口与其他模块进行通信,其功能与单片射频收发器nRF2401相同。DuoCeiver接收器输出的数据准备信号,可通过程序使其成为微处理器的中断信号或通过GPIO口传给CPU。nRF2401工作于开放的2.4G~2.5GHz频段。收发器由1个完整的频率合成器、1个功率放大器、1个调节器和2个接收器组成。

  2 无线键盘的基本知识

  无线键盘是键盘盘体与电脑间没有直接的物理连线,通过红外线或无线电波将输入信息传送给特制的接收器。准确的来说就是蓝牙设备。无线键盘是键盘盘体与电脑间没有直接的物理连线,通过红外线或无线电波将输入信息传送给特制的接收器。准确的来说就是蓝牙设备。(如无线鼠标、耳机等)

  无线键盘大部分都由电池供电,所以需要用到许多节能技术。基于节能的目的,许多无线键盘没有使用有线键盘上的“Num Lock”、“Caps Lock”、“Scroll Lock”这3个LED指示灯。另外,无线键盘应该合理有效地使用RF模块,从键盘到PC的RF数据包可能包含多达8个的击键信息。键盘扫描矩阵约每秒钟扫描500次,一般每个扫描周期内,所检测到的击键不多于1个。

  对于只需要发送数据的键盘,使用nRF24E2即能满足一般键盘的需要。如果要求键盘不仅能够发送信息而且还要接收PC机反馈信息,则需要使用nRF24E1来做键盘中的无线模块。双向收发更利于实现密码编制、数据包重发和当系统关闭时键盘处于节能状态。

  3 nRF24E1在无线键盘中的应用

  3.1 键盘扫描矩阵

  nRF24E1与无线键盘的接口方式如图2所示。普通PC键盘的按键是104个,而图2所示的键盘矩阵为8行20列,多可定义160个按键开关。设计过程中,其中的某些按键可以不进行定义。每个按键布置在行列交接处,当按键被按下时,与该按键相接的行和列即被短接。为了进行键盘矩阵扫描,nRF24E1按时序把列扫描信号送到移位寄存器。列扫描信号由1个“0”和19个“1”组成,“0”在移位寄存器中逐位往后移,每移动1次,键盘行的状态就被扫描1次。

  在键盘扫描的过程中,按键可能会出现抖动,因此编写软件时应该考虑到去抖动问题。常用的去抖动方法:一旦系统检测到某按键被按下,则延时30~50ms后再去检测该按键。

  3.2 系统软件

  nRF24E1有4KB的片内RAM,这对于键盘软件已经够用。系统上电后,E2PROM中的程序自动到该4KB的RAM中,MCU即可直接对RAM中的代码进行读写。

  键盘软件的功能:

  (1)提供移位寄存器所需要的列扫描信息。

  (2)读出行扫描值。

  (3)检测按键被按下和去抖动。

  (4)发送扫描到的被按下按键的信息到PC。

  (5)节能状态循环。

  无线键盘应该使用节能技术以延长电池的寿命。nRF24E1片内nRF2401的ShockBurstTM技术是为用户节能设计的,所以设计人员在编写软件时可以不考虑节能问题。但是,设计人员应该考虑在系统空闲时怎样进一步减小电流。

  nRF2401的晶振为16MHz时,其片内的8051内核工作电流为3mA。由于键盘是周期性工作的,相对工作时间来说,键盘的空闲时间很长。所以,当键盘不工作时,有必要把片内8051设为空闲状态,且片内8051空闲状态的工作电流只有2μA,用此来减小电池消耗。系统在空闲状态和工作状态时的任务分述如下。

  空闲状态:

  (1)完成所有的键盘扫描(约需要0.5ms)。

  (2)如果有按键被按下,则进入工作状态。

  (3)把8051设为空闲状态,同时RTC的唤醒时间设为20ms。

  (4)空闲状态循环。

  工作状态:

  (1)每秒钟扫描键盘500次。

  (2)发送所有的按键信息给PC。

  (3)如果10秒钟内没有按键被按下,则进入空闲状态。

  (4)工作状态循环。

  一般来说,按照上述方法考虑电池节能的问题,可以使电池的寿命提高约40倍。所以,在系统软件设计时,进行电池节能的考虑至关重要。

  4  结  论

  实践证明,nRF24E1非常适合用来实现无线键盘与PC机之间的通信,其优点:

  (1)nRF24E1内嵌8051,更易于减小体积。

  (2)采用了ShockBurstTM技术,使编程更方便。

  (3)更易于实现安全的键盘信息发送。

  (4)2.4GHz的收发频段为开放频段。

  (5)电池监管更方便,并且功耗低。

  (6)nRF24E1具有的GPIO使得扩展其他功能,如LED指示等更加容易。


  
上一篇:基于FPGA的图像预处理系统的设计
下一篇:浅谈卫星定位接收机载波跟踪的设计与实现

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料