无线传输方式也从传统的U段、V段无线扩音发展到今天的红外线、蓝牙和2.4 GHz频段的无线数字传输方式。传统的模拟信号无线扩音设备发射器的使用会受到同频、邻频或外界电波干扰,扩音的回输较大,而且高频电波辐射大,扩音回输会对人的耳膜造成一定的伤害。音频在数字信号传输过程中受干扰的可能性小、抗干扰能力强。数字无线扩音系统可广泛应用于教学、会场、现代办公、家居生活等领域。
工作于2.4 GHz的ISM。频段有4亿个可用地址码,可通过跳频询址技术保证在同一场所同时使用而不串频。发射信号的频带宽度大于所传信息必需的最小带宽,而频带的展宽是通过扩展功能实现,与所传信息数据无关,并只有发射器和接收器知道,在接收端则用相同的扩频码进行相关解调来解扩及恢复所传信息数据。数据被所有的跳频点所携带,如果噪音没有影响到所有的跳频点,信息就可以被修复,一定条件下可以有多个系统在同一频率范围内共存。文中介绍使用ATmega8MCU和nRF24L01射频收发器件进行开发的无线智能跳频数码扩音器设计方案。利用智能跳频询址技术,使发射机可更迅速地自动被接收机识别,任意发射机可以匹配任意接收机,匹配后自动锁定直至发射机关闭或者离开无线电覆盖范围。在无障碍物的直线传输条件下输出功率为5 W、发射和接收有效距离≤60 m。
1 系统分析与设计
系统由MCU、发射和接收系统构成。音频信号由发射端的前端信号处理电路放大后送往MCU内部A/D进行采样,MCU将采样所得数据打包通过RF模块发送出去。接收端MCU从RF模块读取数据包,并将其送至MCU内部的TIMER1进行PWM调制,然后输出至外部低通滤波器,最后还原得到相应的音频信号。系统原理如图1所示。
1.1 主控MCU模块
MCU选用AVR系列的ATmega8,其是基于增强AVR RISC结构的低功耗8位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmega8的数据吞吐率达1 MIPS/MHz,16 MHz时性能达16 MIPS,因此可缓减系统在功耗和处理速度之间的矛盾。工作电压2.7~5.5 V,内部集成8路10位ADC、SPI串行接口、16位带PWM调制输出的定时器、512 Byte的EEPROM。其内部资源能满足发射端和接收端MCU的要求。
1.2 RF模块
nRF24L01是一款新型单片射频收发器件,工作于2.4~2.5 cHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。可进行地址及CRC检验功能。nRF24L01功耗低,在以-6 dBm的功率发射时,工作电流9 mA;接收时,工作电流12.3 mA,多种低功率工作模式使节能设计更方便。收发双方传输信号的载波按照预定规律进行离散变化,以避开干扰、完成传输。总之,跳频技术FHSS不是抑制干扰而是容忍干扰。由于载波频率是跳变,具有抗高频及部分带宽干扰的能力,当跳变的频率数目足够多和跳频带宽足够宽时,其抗干扰能力较强。利用载波频率的快速跳变,具有频率分集的作用,从而使系统具有抗多径衰落的能力。利用跳频图案的正交性可构成跳频码分多址系统,共享频谱资源,并具有承受过载的能力。
1.3 音频放大
如图2所示,该电路U5A、R8、C17、R7、R14、R9、R16、R13负责麦克风输入信号的放大,放大倍数为10倍。其中R8给麦克风提供直流偏置,经过C17耦合至运放U5A。R7、R14、R9用于给运放提供一个虚拟地。如果有3.5 mm的音频信号接头插入J5时,后续电路会断开和前级放大的连接,从而实现MIC声音和外部音频输入的切换。U5B、R11、R15、R17、R19、C21负责输入MIC和外部音频信号的放大,放大倍数为5倍,原理与前级放大相似。运放选用LMV358,LMV358是一款Rail to Rail双运放,工作电压在2.7~5 V,增益带宽乘积为1 MHz,工作电流140μA,适合电池供电。
1.4 电源稳压
LDO选用PAM3101,为正向线性稳压器系列,其特色是低静态电流和低压降,是电池供电应用的理想选择。小体积SOT--23和SOT-89封装对于便携式和发射设备具有吸引力。热关闭和电流限制可防止器件在极端的工作环境下失效。
2 系统接口设计
2.1 发射端系统接口
如图3所示,ATmega8通过SPI与NRF24L01连接。在对NRF24L01初始化之前,必须对IO口进行初始化,方向寄存器DDR设置如图上的箭头所示。ATmega8工作频率为16 MHz,故通过设置SPCR、SPSR寄存器让SPI工作于时钟加倍模式,可使SPI时钟频率达8 MHz。内部A/D工作时钟通过64分频后为250 kHz;单次转换周期为52μs;在连续转换模式下,采样频率约为20 kHz、8 bit精度。每次完成转换后将触发ADC中断。电源部分作为电路的重要组成部分,其性能好坏直接影响输出音质。由于发射端RF模块工作于发射状态时瞬间电流较大,如果模拟器件和RF模块使用同一LDO,则输出音频会受到严重干扰,故模拟器件和数字器件各自使用独立LDO,力求将影响减到最小。
2.2 接收端系统接口
如图4所示,ATmega8与NRF24L01连接方式与发射端相同,IO方向设置也与其相同。为了防止NRF24L01返回ACK时造成的电源波动,模拟器件和数字器件都各自使用独立LDO。由于ATmega8的IO口较少,内部数个硬件接口使用同一个IO,导致接口冲突。SPI的MOSI和Timer2的OC2共用PB3,SS与Timer1的OC1B共用PB2,最后只有16 bit的Timer1OC1A可使用。通过修改TCCR1A寄存器让Timer1工作在8bit PWM模式,工作频率为62.5 kHz。修改OCR1则可以改变OC1B上输出的PWM占空比。Timer2在比较匹配模式下工作,每隔52μs中断一次,并修改缓冲区的数据送至Timer1,让其改变PWM占空比,经过低通滤波器滤去PWM高频成分后,最终得到音频信号。
3 主控软件流程
3.1 发射端软件流程
MCU上电复位后,首先会对SPI接口进行初始化,再进行IO设置。接着再对外设NRF24L01和Timer0初始化。完成对NRF24L01的初始化后,紧接着就是对接收机的搜索。流程图内附有简略算法。与接收机建立握手后就开始对A/D初始化,并开始对音频信号进行采样,将数据保存至A、B两个缓冲区,一旦A缓冲区溢出后新采样的数据就传输至B缓冲区,并将A缓冲区的数据打包发送。紧接着进入接收模式并等待接收端返回ACK。与此同时采集的数据将保存到B缓冲区内。当收到ACK后将进入下一个循环周期。如果10 min内不断发送数据且没有收到ACK则认为和接收端的连接已经中断,这时将进入待机状态。定时器每10 ms触发中断,对当前连接状态通过红绿LED进行显示。正常状态时绿色LED长亮,一旦出现丢包现象则只有红LED长亮,用于告知发射端和接受端的距离过远或信号受到障碍物阻挡、干扰。
3.2 接收端软件流程
接收端的软件实现流程为发射端的逆过程。首先对ATmage8的IO、SPI、定时器、NRF24L01进行初始化,其设置与发射端一致。接着设置NRF24L01为接受状态,MCU将搜索发射端握手信号和空闲频道,如果搜索不到握手信号时将在空闲频道上等待发射主动搜索到该频道。完成信号握手后接收端将会一直等待发射端发送数据包,并把数据包内的数据移至缓冲区,10 min后收不到数据包则进入待机状态。Timer2工作
于比较匹配模式,一旦TNCT2等于OCR2时,MCU会对TNCT2硬件清零,从而产生一个周期为52μs的比较匹配中断,并利用这个中断去从缓冲区读取音频数据至Timer1用于输出PWM占空比。与此同时,timer也将产生一个10 ms的中断用于LED显示连接状态,实现原理与发射端的一致。
4 性能测试
无线智能跳频数码扩音器实现射频频率在2.4~2.5 CHz的数码传输。在无遮挡直线传输的条件下,有效距离达60 m。收、发机可自动应答和重发。频响为100 Hz~10 kHz。信噪比>45 dB。在125个可选工作频道中自动跳频,频道切换时间极短。发射器工作状态电流最大为12 mA,静待状态电流最大为0.06 mA,输出功率5 W,数据速率为2 Mbit·s-1。
5 结束语
无线智能跳频数码扩音器设计方案,是利用ATmega8 MCU和nRF24L01射频收发器件,以及智能跳频询址技术进行开发的,在可选工作频道中自动跳频,频道切换时间极短。在无障碍物的直线传输条件下实现输出功率为5 W、发射和接收有效距离在60 m以内。ATmega8 MCU的应用虽然降低了该扩音器的成本,但ATmega8 MCU的性能限制,使扩音效果存在音频爆音现象。处理的方法有不少,其中可采用窄带高频及中频选频滤波,外加噪声数码抑制电路,有效避免脉冲杂音,多种增强主音源,最大限度抑制了背景噪音,提高了传音质量。