公务员期刊网 论文中心 正文

音频通信下的手机外设方案设计

音频通信下的手机外设方案设计

摘要:本文主要针对手机音频外设的兼容性方案进行优化分析。当前主流的手机外设主要通过数据口(microUSB、Type-C、Lightning)、蓝牙、音频口与手机连接并完成数据通信,但是数据接口方面安卓及苹果接口标准不一,蓝牙通信功耗较高并且操作流程复杂,而音频接口标准相对统一并且功耗低,预计未来基于音频口的手机外设具有巨大的发展空间。

关键词:智能手机;音频通信;低功耗设计;UART编码;曼彻斯特编码;FSK编码;数字滤波算法

1音频通信外设硬件电路设计

1.1电源电路设计

基于音频通信的手机外设一般要求体积小,重量轻便,外观可设计成时尚的钥匙扣形状。由于外设体积及重量的限制一般使用锂电池不使用大电池,因此对于功耗的控制要求非常高。对于这个问题,我们的方案设计是在外设插入到手机音频口之后,并且接收到音频口输出的特定脉冲波形以后打开外设电源,在外设拔出以后关闭电源,这样可以大大的降低系统功耗,提高锂电池的使用寿命。如图1所示,当外设插入手机音频口后,外设电路通过电容C149滤除左声道SPK_L管脚的偏置电压,再通过二极管D16滤除负半周期波形,最后通过接地电容C150实现电平的稳定输入,从而实现在外设接入手机音频口后同时左声道有稳定脉冲信号输入时V_SW管脚与地导通,触发打开外设电源。当外设插入手机音频口后,TX(MIC)管脚对地存在偏置电压,因此在外设上电后可通过拉高POWER_ON管脚接管电源维持电路,维持系统上电状态,无需通过SPK_L管脚持续提供脉冲波形来维持上电状态,从而提高整体系统稳定性。如图2所示。当外设从手机音频口拔出后,TX(MIC)管脚对地无偏置,系统无法通过POWER_ON管脚继续维持上电状态,同时外设从音频口拔出后SPK_L管脚同样无输出,V_SW管脚与地不导通,从而实现外设从手机音频口拔出后硬件下电关机。

1.2音频通信电路设计

如图3所示,目前手机与音频外设进行数据上下行通信主要有两种方式,一种是通过音频接口与音频外设进行数据通信,一种是通过空中音频传输。空中音频传输方式:主流手机的音频采样率在44.1kHz,按一个信号周期2个采样点计算,手机能支持的最高音频信号频率在20kHz左右。人耳能听见的声音频率范围在20Hz~20kHz,因此空中音频静默通信成为可能,但是由于空中噪声干扰相对较大,目前暂不建议使用该方案。音频口通信方式:手机与音频外设通过4段式的耳机接口进行有线连接,实现数据上下行通信。目前国际通用的耳机接口标准主要有两个,一个是OMTP标准(国标),一个是CTIA标准(美标),两个国际标准的区别主要在于麦克管脚与地管脚的顺序不同,外设硬件可以通过自适应电路方案实现两个标准的兼容。如图4所示。无论手机是欧标接口还是美标接口GND与MIC之前存在压差,利用两个MOS管实现欧标与美标的兼容。当输入端M2为GND、M1为MIC时,MOS管1导通,MOS管2截止,M2与地导通,M1与TX导通。当输入端M2为MIC、M1为GND时,MOS管2导通,MOS管1截止,M1与地导通,M2与TX导通。综合显示,音频通信硬件电路选择音频口与手机进行连接,并通过自适应电路实现国际与美标的兼容,成本低同时具有较广的适应性。

1.3安全加密电路设计

由于音频通信数据内容容易被外部通过有线或者无线监听探测后破解,本方案的重点,在系统内部集成ESAM安全加密芯片,并在设备出厂时对ESAM芯片进行初始化,灌装一机一密的加密秘钥,同时外设上下壳采用超声处理确保秘钥安全。传输数据内容在发送之前需要先通过ESAM芯片进行加密处理(AES、DES、RSA算法),再通过音频信号进行传输,从而确保数据传输安全。

2音频通信波形设计

手机音频通信主要是通过手机发出的音频声波信号来传输“0”、“1”数据,需要在外设端对传输的数据内容进行波形编码,手机端通过MIC接收到编码波形后对波形进行解码还原出传输数据内容,常用的波形编码方式主要有URAT编码、曼彻斯特编码、FSK编码。

2.1UART编码

串行UART编码波形由起始位、数据位、校验位、停止位组成。考虑部分外设需要通过音频口输出来供电,因此在使用串行UART编码来作为通信编码时,需要避免输出波形出现长时间的低电平。所以默认设计输出电平应该设置为高电平,起始位则为低电平,停止位为高电平。同时由于传输的数据内容是随机的,如果数据位出现连续数据“0”将出现连续低电平导致外设掉电(需要通过音频输出来维持电源供电的设备),同时连续相同数据将出现连续高电平或者低电平,传输过程容易出现脉宽畸变导致数据传输错误,因此需要对数据内容进行曼切斯特编码转换(数据“0”转换为数据“01”,数据“1”转换为数据“10”),这样可以保证输出电平不受到传输数据内容影响出现连续高低电平的情况。图5是TTL电平下一个字节数据“0xC5”,在UART编码模式下传输的波形信号。可以看出连续数据”0”会出现连续的低电平信号。图6是TTL电平下对一字节数据“0xC5”进行曼彻斯特编码转换后传输的波形信号。经过曼彻斯特编码转换后的字节数据为“0xA5,0x66”,可以看出即使原始数据存在连续数据“0”传输波形最长只会出现连续2个周期的低电平,有效的避免了通信波形出现长时间的高低电平的情况。市面上主流的智能手机音频输出的打点频率上限为48000Hz、44100Hz等,串口通信频率一般为115200Hz、19200Hz、9600Hz。根据整除关系及理想的打点个数,手机端择优选择48000Hz打点频率,单周期打点10个点,则外设接收端串口波特率为9600Hz。

2.2曼彻斯特编码

曼彻斯特编码是通过波形的相位对数据进行编码,每个码元周期内必定有一次电平跳变,波形周期内电平从高到低表示数据“1”,电平从低到高表示数据“0”。图7是曼彻斯特编码方式下传输一个字节数据“0xC5”的波形信号。对比UART编码方式,曼彻斯特编码每个字节没有了起始位、校验位、停止位,编码效率优于串口编码方式。其次由于编码方式的优势,单周期内必定存在电平跳变,不会因为被编码数据内容存在连续数据“0”或者连续数据“1”,而出现长周期的高电平或者低电平,可以有效降低由于波形脉宽畸变导致的数据传输错误,数据内容无需进行曼彻斯特编码二次转换,编码效率更高。同时UART编码方式在外设接收端接的是RX、TX管脚,对于波形编码畸变的容错性相对有限,曼彻斯特编码接收端接的是CPU的ADC管脚,解码效率及容错性更高。

2.3FSK编码

FSK编码是通过波形的脉宽对数据进行编码,例如使用单周期3400Hz波形表示数据“1”,单周期2400Hz波形表示数据“0”。图8是FSK编码方式下传输一个字节数据“0xC5”的波形信号。FSK编码方式继承了曼彻斯特编码的优点,不会因为被编码数据内容出现连续数据“0”或者连续数据“1”,而出现长周期的高电平或者低电平。同时对比曼彻斯特编码波形脉宽变化相对稳定,不会因为被编码数据内容变化出现脉宽周期的不稳定变化,波形信号相对更稳定,不容易出现波形畸变的情况。

3大数据通信优化方案

手机端发送数据给外设为下行,外设发送数据给手机端为上行。通过上述波形分析在下行数据量较小的情况下一般采用FSK数据信号比较稳定,通信优化主要针对上行波形数据进行优化。在下行数据量较大的情况下还需要对下行数据进行拆包处理,提高下行数据传输成功率。

3.1通信握手协议

如图9所示,外设上电以后,通过MIC上送曼彻斯特编码及FSK编码下不同幅值的上行波形数据,手机端接收到波形信号后对波形信号进行滤波解码并对波形质量进行评估,选择最优的上行波形信号并下发给外设进行设置,外设收到设置指令后使用最优波形信号进行指令回复确认。图10中绿色信号为手机端左右声道输出给外设的握手信号,黄色信号为外设通过MIC返回给手机的编码波形信号。

3.2手机端滤波算法

手机端在接收到外设从MIC传送回来的曼彻斯特编码或者FSK编码波形数据的时候,录制的音频波形可能存在数据跳变的情况,我们需要通过手机端的滤波算法对波形数据进行滤波优化,之后再根据编码规则进行数据内容解析及数据校验,提高音频通信的成功率。滤波算法思路,正常连续点之间应该是平滑变化的不应该出现波形跳变,如果出现跳变则认为是异常跳变需要进行平滑处理。连续的3个点出现第一个点与第三个点大于0,第二个点出现小于0的情况或者第一个点与第三个点小于0,第二个点出现大于0的情况,则认为第二个点为跳变点,将第二个点的值赋值成第一与第三个点的均值处理。连续的4个点出现第一个点与第四个点大于0,第二个点与第三个点出现小于0的情况或者第一个点与第四个点小于0,第二个点与第三个点出现大于0的情况,则认为第二与第三个点为跳变点,将第二与第三个点的值赋值成第一与第四个点的均值处理。

3.3大数据拆包协议

在需要下发大数据的时候,需要对下行数据进行拆包处理,从而提高指令成功率。目前设计是一包数据大小为200字节,当数据量超过200字节时需要对下行数据进行拆包处理。手机端下发数据包时标识该包是否为拆包数据是否有后续包存在,在下发完拆包数据后手机端进入等待ACK状态,外设端收到拆包数据后返回ACK包表示已接收到拆包数据,在规定时间内手机端未收到设备端的ACK响应则进行当前包的重发处理,直到外设端返回ACK响应。外设端在接收到最后一个标识为无后续包的拆包数据时,表明已完整接收当前大数据包指令,进入后续指令处理流程。

4结论

基于音频通信的手机外设方案设计,对于这个方案的设计优化考虑是基于市场实际客户检验得来的,从目前来看,我们对于外设电源的功耗控制、音频口兼容性的电路设计和音频通信兼容性方案的优化方案已经过将近百万级客户的检验,目前可以满足客户对于音频外设的通信性能及待机时长需求,并且安全方面设备也通过了银行卡检测中心(BCTC)的安全性测试。

参考文献

[1]YD/T1885-2016移动通信手持机有线耳机接口技术要求和测试方法,2016.

[5]刘红梅,姜晓云,刘桂枝.二进制频移键控的软件实现[J].山西大同大学学报(自然科学版),2010.

[6]程远增,张海龙,段修生,李胜军.一种软件实现2FSK信号产生的方法[J].四川兵工学报,2009.

[7]凌科芯安.LKCOS智能卡参考手册,2013.

[8]中国金融集成电路(IC)卡规范.中华人民共和国金融行业标准JR/T0025.11-2013,2013版本

[9]ISO/IEC7816-1/2/3/4,2002.

作者:蔡巍 单位:福建新大陆支付技术有限公司