2.4 GHz无线收发芯片A7105及其应用
扫描二维码
随时随地手机看文章
摘要:通过分析当前智能家居存在的诸如价格高、功能多而不实用等问题,本文进行了室内照明无线遥控系统的研究。采用2.4 GHz无线收发芯片A7105,设计了软硬件电路,以LED模拟照明灯,实现了无线遥控功能,并分析了本系统存在的问题及进一步的发展。最后对于本系统成本进行了分析,指出本系统具有低价位的突出优点,为进一步设计实用的室内照明无线遥控系统提供了可能。若后续研究成功后,定会有广阔的应用前景。
关键词:A7105;无线收发芯片;遥控;无线通信
随着计算机技术、通信技术与自动化技术的发展,照明控制技术有了很大的进步,逐步进入了智能控制时代。传统智能照明控制系统采用总线方式,具有布线麻烦、增减设备需要重新布线、系统可扩展性差、安装和维护成本高以及移动性能差等缺点。智能照明控制系统在逐步进人无线控制时代。文献报道了在ZigBee传感网技术的基础上提出了一种新型的室内智能照明控制系统,但实用的室内照明控制器必须是低价位的,目前基于ZigBee协议标准的无线收发芯片的价格,便宜的也在十几元,这就使得开关结点的价格过高。
AMICCOM(笙科)公司于2008年推出的一款2.4 GHz无线收发芯片A7105,该芯片低价位的突出特点为其在无线短距离消费市场赢得了巨大的优势。但与ZigBee系列的标准芯片相比,A7105的开发不具备标准协议,这使得其开发难度大大增加,这也是该芯片迟迟未能得到广泛应用的主要原因。本文采用经过二次开发后的A7105无线收发模块,设计了发送与接收端的软硬件电路。发送端通过按键控制来实现数据的发送,接收端接收到信号后,控制LED的亮灭,实现了无线控制功能,为进一步研究实用的室内照明无线遥控系统奠定了良好基础。
1 A7105及无线收发模块
A7105内含高灵敏度的接收器(1 Mbps@-93 dBm),在10 m以内的产品应用中可大幅度减低RF的输出功率(0~10 dBm),以避免射频产品对人体造成可能的损害,同时又能适应50 m一般环境的应用。A7105的所有参数可以通过SPI口配置内部寄存器来进行设置,最高的速率可达500 kb/s,适应4线或3线的SPI控制。另外射频数据的处理有2种模式可供选择:FIFO(利用RF内部的memory先储存要发射/接收的数据)和Direct(直接发射/接收)。A7105内建RSSI,温度传感器,可以用来侦测环境对RF IC的影响,而且也内建1路ADC,作为侦测电压使用。
A7105芯片的具体特点如下:1)频带为2 400~2 483MHz(ISM频带);2)FSK/GFSK调制;3)发射电流为19 mA(输出0 dBm);4)接收电流为16 mA;5)休眠电流<1 μA;6)内置RA振荡器;7)高灵敏度:-99 dBm@250 kb/s,-96 dBm@500kb/s;8)收发独立的64字节FIFO。
本文使用的是经过二次开发的以A7105为核心的无线收发模块。该模块集成了无线收发的基本元器件,A7105的SCS、SCK、SDI0、GPIO1、GPI02等管脚已预留接口,便于和微处理器相连。模块上带有PCB天线,如果想增大传输距离,也可以外置天线。该无线模块采用直流电源,工作电压为+3.3 V,最大工作电流不超过21 mA,电源可以和别的设备公用,但要注意电源的质量和接地的可靠性。为防止静电或强电击穿,在系统设备中使用时,需要可靠的接地,接地的同时需与市电完全隔离。
2 室内照明无线控制系统
室内照明无线控制系统由1个主遥控器和多个无线遥控终端(无线开关)组成。由于室内距离较短,故系统拓扑结构采用星型结构,如图1所示。各个无线开关用于控制室内各个照明灯具,在遥控器上有多个按键,用于控制室内的无线开关,从而实现对照明灯具的无线控制。
[!--empirenews.page--]
在主遥控器和各个无线开关终端中,核心元件均为A7105模块和AT89C2051单片机。在A7105模块中,已将A7105芯片及其正常工作所需的基本硬件电路制作完好,并留出了与微处理器相连的接口,因此A7105模块的推出为该芯片的应用提供了很大的方便。AT89C2051单片机内部有非易失性Flash存储器。
这为无线开关终端始终保存自身的地址信息提供了便利,不需额外增加硬件地址电路,从而降低了系统的成本。
在遥控器(发射电路)上有多个按键,当某个按键按下时,遥控器发送1个64位的地址信息。各个无线接收终端接收到该信息后,唤醒微处理器将接收到的地址信息与自身的地址进行对比,若相同,则启动继电器控制开关进行动作,同时将信息回馈给主控制器,以示接收成功;若不相同,节点则继续进入睡眠模式,等待下一次唤醒。
3 系统硬件电路设计
在本系统中,采用AT89C2051的P1口管脚与A7105无线收发模块进行数据传递。对于A7105无线收发芯片,其控制是通过SPI串行操作读出或写入数据的,SPI串行操作可以采用三线制或四线制。这里采用四线制,遥控器的电路如图2所示,接收电路如图3所示。在接收电路中,当接收到数据之后,通过P3.7的循环取反,实现对LED灯的亮灭控制。
[!--empirenews.page--]
由89C2051单片机的p1.0作为A7105模块的片选信号,P1.1为模块提供串行时钟信号。P1.2与模块的SDI引脚相连,负责地址信息由单片机输出和进行数据写操作时的数据写入A7105。P1.3管脚与模块的GI01相连,当进行数据的读操作时,由P1.2送出8位地址信息,数据则通过GI01管脚被读入单片机内部。采用四线制,需要对A7105中的GPI0x的控制寄存器进行设置,这里使用的GI01作为输出管脚,因此需要将GPI01 Pin Control Register(地址位0Bh)中的GPI01S3~GPI01S0四个二进制位设置为“0110”即可。四线制的SPI读写时序分别如图4和图5所示。
由于A7105的工作电压范围为1.9~3.6 V,AT89C2051的工作电压范围为2.7~6 V,所以在本实验系统中,将其电压统一为3 V,采用两节5号电池供电。在以后的实验中,可考虑采用低压差电压调节器LM1117。
4 系统软件设计
A7105无线收发芯片有两种工作模式:FIFO(利用RF内部的存储器先储存要发射/接收的数据)和Direct(直接发射/接收)模式。不同的工作模式可以由初始化相应的寄存器来设定。在本系统中,设置A7105工作在FIFO模式下,此时最大可以写入64个字节的数据,这里设置8个字节(64 bit)的数据作为接收模块的地址信息。
4.1 A7105的初始化
A7105芯片在上电之后,首先进行的就是初始化,下面结合初始化程序进行说明。
[!--empirenews.page--]
4.2 发射电路程序设计
发射电路在上电之后,首先对A7105无线收发模块进行初始化,之后进入按键检测状态。若有按键按下,则进行发送数据,之后进入等待接收来自接收电路的反馈信号。在电路初始化时,已将A7105的GI01管脚设置为高电平,进入等待接收数据后,如果有数据到来,则GI01管脚变为低电平。当数据到来时,将GPI01 Pin Control Register(地址位OBh)中的GI01I设置为1,可以让GI01管脚输出反向。发射电路的系统程序流程如图6所示。
4.3 接收电路程序设计
在接收电路中,MCU首先初始化A7105模块,和存储64位的地址信息,然后进入等待接收状态。当接收模块接收到发送电路发来的数据后,与自己内部储存的64位的地址信息进行对比,若相同,则发送确认信息,并控制P3.7管脚输出低电平,点亮LED,其主程序流程如图7所示。
5 结论
该系统采用89C2051和A7105无线收发模块,实现了LED的无线遥控,为进一步研究室内照明无线遥控系统奠定了基础。当然,本系统电路和实际使用的无线遥控系统还有一定差距,主要表现在以下三点:1)实用的室内无线照明系统的接收模块是通过继电器去控制220 V的交流电,本系统中仅以一个LED来模拟;2)实际中有多个无线接收模块,因此在主控制器中也应该有多个按键;3)本系统尚未考虑节能的问题。如果采用电池供电,必须考虑节能的问题,在没有数据传输时,均应考虑让单片机和无线收发模块进入体眠模式。如果能从220 V交流电中获取能量,则可以不考虑能量的问题,但会使得设计成本增加。
本系统的突出优点在于价格低,A7105无线收发模块批量购买,每片不足5元,AT89C2051单片机1元左右。若设计成实用的产品,则需增加继电器,目前普通继电器例如MK2P(JTX-2C)在5元左右,若批量购买,价格会更低。另需按键和外壳等,最终成本可以控制在15元以内。因此,若本系统能够成功应用于室内照明无线遥控,则出售价格会非常低,普通百姓能够承担得起,在国内将会拥有广阔的市场。