基于音频接口的通信方法、终端及通信设备与流程

文档序号:14559443阅读:162来源:国知局
基于音频接口的通信方法、终端及通信设备与流程

本发明涉及电子技术领域,尤其涉及基于音频接口的通信方法、终端及通信设备。



背景技术:

目前,几乎每个人都有一部智能手机,这部手机可能是苹果手机,即iphone,也可能是安卓手机,即android手机。无论是哪一种智能手机,其实都对应一款功能强大的开发平台,吸引了众多的软件应用开发者,而往往这些软件需要有硬件外设的配合。iphone手机提供给外界的接口是它独特的数据接口以及耳机接口,android手机一般可以提供usb接口和耳机接口。因此,实际上在手机上最通用的接口是耳机接口,而不是各种数据接口。

耳机接口有4个信号线,分别是左声道、右声道、接地和麦克风,左声道和右声道用于驱动耳机,所以对于手机就是输出;麦克风是采集语音信号的,所以对于手机其方向为输入。故耳机接口,可以满足手机和硬件外设的双向通信的要求。目前耳机接口通信设备,大都采用曼切斯特编码和二进制频移键控编码,即2fsk编码。

在采用曼切斯特编码的方案中,低电平到高电平跳变表示“1”,高电平到低电平的跳变表示“0”。编码采用起始位+数据位+奇偶效验位+停止位。设备端采用定时器捕获解码,手机端用底层i/o口解码。在这种方案中,手机解码复杂,因为曼切斯特编码“1”和“0”的频率相同,需要操作底层的输入输出接口。另外,不同的android手机对信号的阻抗可能不一样,这样导致设备通过麦克风发给手机的信号严重变形,甚至部分信号丢失。因此,这种方案使得android手机的兼容性较差。在采用2fsk编码的方案中,用连续的多个第一频率表示“1”,用连续的多个第二频率表示“0”,编码采用起始位+数据位+奇偶效验位+停止位。设备端和手机端均采用快速傅里叶变换(fft)解码。在这种方案中,fft变换要求运行速度快,对系统的运行时钟要求高,普通的8位单片机运行不起来,这样导致设备成本增加。另外,此方案只支持几款android手机,兼容性较差。

上述技术方案均存在通信失败率高,兼容性较差的问题。



技术实现要素:

本发明实施例提供一种基于音频接口的通信方法,可解决音频接口通信失败率高,兼容性较差的问题,并降低成本。

第一方面,本发明实施例提供了一种基于音频接口的通信方法,该方法包括:

获取第一数据,所述第一数据为待向终端发送的二进制数据;

生成所述第一数据对应的方波;所述第一数据中的每个1对应n个高电平的时长为第一时长的方波,所述第一数据中的每个0对应m个高电平的时长为第二时长的方波;其中,所述高电平的时长为第一时长的方波的频率为第一频率,所述高电平的时长为第二时长的方波的频率为第二频率;所述第一频率和所述第二频率均不小于500赫兹且不大于6000赫兹;

通过音频接口向所述终端发送所述第一数据对应的方波。

第二方面,本发明另一实施例提供了一种基于音频接口的通信方法,该方法包括:

通过音频接口接收来自终端的目标信号;

确定所述目标信号包含的q个高电平对应的q个时长,所述q个时长中的r个时长为第一时长,w个时长为第二时长,所述第一时长为第一频率的方波的高电平的时长,所述第二时长为第二频率的方波的高电平的时长,所述第一频率为所述第二频率的k倍,所述k不小于2;所述第一频率和所述第二频率均不小于500赫兹且不大于6000赫兹;

依据所述q个时长确定所述目标信号对应的二进制数据,所述二进制数据中的每个1对应n个高电平的时长为所述第一时长的方波,所述二进制数据中的每个0对应m个高电平的时长为所述第二时长的方波。

第三方面,本发明另一实施例提供了一种基于音频接口的通信方法,该方法包括:

获取第二数据,所述第二数据为待向目标设备发送的二进制数据,所述第二数据依次包含起始位、数据位、循环冗余校验位、奇偶检验位以及结束位对应的二进制编码;

通过信号发生器生成所述第二数据对应的目标信号,所述第二数据中的每个1对应n个连续的频率为第一频率的正弦波或余弦波,所述第二数据中的每个0对应m个连续的频率为第二频率的正弦波或余弦波,所述目标信号包含所述第二数据对应的正弦波或余弦波,所述第一频率为所述第二频率的k倍,所述k不小于2,所述n个连续的频率为第一频率的正弦波或余弦波的时长小于4毫秒,所述第一频率和所述第二频率均不小于500赫兹且不大于6000赫兹;

通过音频接口向所述目标设备发送所述目标信号。

第四方面,本发明另一实施例提供了一种基于音频接口的通信方法,该方法包括:

通过音频接口接收目标设备发送的目标信号,对所述目标信号进行采样,得到g个采样数据;

依据数据列表确定当前所需获取的采样数据的个数为f后,获取f个采样数据,所述f个采样数据为所述g个采样数据中的数据,所述数据列表包含h个数值,所述h个数值为待选取的采样数据的个数;

对所述f个采样数据进行快速傅里叶变换fft,得到计算结果,所述计算结果包含所述f个采样数据对应的频率的信息,所述f个采样数据对应第一频率或第二频率;

若所述f个采样数据对应的频率为所述第一频率,则确定所述f个采样数据对应的二进制数值为1;否则,确定所述f个采样数据对应的二进制数值为0。

第五方面,本发明实施例提供了一种通信设备,该终端包括用于执行上述第一方面和/或上述第二方面的方法的单元。

第六方面,本发明实施例提供了一种终端,该通信设备包括用于执行上述第三方面和/或上述第四方面的方法的单元。

第七方面,本发明实施例提供了另一种通信设备,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储支持终端执行上述方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述第一方面和/或上述第二方面的方法。

第八方面,本发明实施例提供了另一种终端,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储支持终端执行上述方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述第三方面和/或上述第四方面的方法。

第九方面,本发明实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面、上述第二方面、上述第三方面以及上述第四方面任一项所述的方法。

本发明实施例中,n个高电平的时长为第一时长的方波表示二进制数值1,m个高电平的时长为第二时长的方波表示二进制数值0,通过合理地设置第一时长和第二时长关系以及大小,可以提高目标设备与终端之间通过音频接口进行通信的成功率,并解决终端的音频接口兼容性较差的问题。

附图说明

为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种基于音频接口的通信方法的示意流程图;

图2是本发明实施例提供的一种方波信号的示意图;

图3是本发明实施例提供的一种处理电路的示意图;

图4是本发明实施例提供一种方波信号生成方法的示意流程图;

图5a是本发明另一实施例提供的一种方波信号的示意图;

图5b是本发明另一实施例提供的一种方波信号的示意图;

图6是本发明另一实施例提供的基于音频接口的通信方法的示意流程图;

图7是本发明实施例提供一种解码方法的示意流程图;

图8是本发明另一实施例提供的基于音频接口的通信方法的示意流程图;

图9是本发明实施例提供一种生成目标信号的方法的示意流程图;

图10是本发明另一实施例提供的基于音频接口的通信方法的示意流程图;

图11是本发明另一实施例提供一种解码方法的示意流程图;

图12是本发明实施例提供的一种通信设备的示意性框图;

图13是本发明另一实施例提供的一种通信设备的示意性框图;

图14是本发明实施例提供的一种终端的示意性框图;

图15是本发明另一实施例提供的一种终端示意性框图;

图16是本发明另一实施例提供的一种终端示意性框图;

图17是本发明另一实施例提供的一种通信设备的示意性框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

参见图1,是本发明实施例提供一种基于音频接口的通信方法的示意流程图,如图1所示,该方法可包括:

101、获取第一数据,上述第一数据为待向终端发送的二进制数据;

目标设备获取第一数据。上述目标设备为包含微控制器的设备如单片机,且可以通过音频接口与终端如手机进行通信。上述终端可以是手机、平板电脑、个人数字助理以及其他可以通过音频接口与目标设备进行通信的设备。音频接口是指音频输入输出接口,可输入和输出音频信号,如耳机接口。上述获取第一数据可以是获取上述目标设备待向上述终端发送的目标数据后,将上述目标数据转换为二进制数据,即上述第一数据。

上述第一数据可以依次包含起始位、数据位、循环冗余校验位、奇偶检验位以及结束位对应的二进制编码。上述起始位可以是固定的几位,且包含1和0,如:1010。上述数据位可以占用多个字节,每个字节对应8个比特位。上述循环冗余校验位为上述数据位对应的循环冗余校验码,可以占用1个字节。上述奇偶效验位为起始位+数据位+循环冗余校验位对应的奇偶效验位,可占用一个比特位。若起始位+数据位+循环冗余校验位所包含的1的个数为偶数的话,奇偶校验位为0;否则,奇偶校验位为1。上述结束位可以是固定的几位,如0101。上述第一数据中包含循环冗余校验位,可以进一步保证数据位的正确。

102、生成上述第一数据对应的方波;上述第一数据中的每个1对应n个高电平的时长为第一时长的方波,上述第一数据中的每个0对应m个高电平的时长为第二时长的方波;其中,上述高电平的时长为第一时长的方波的频率为第一频率,上述高电平的时长为第二时长的方波的频率为第二频率;上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;

每个方波可以对应一个高电平和一个低电平,且高电平的时长与低电平的时长可以相同。上述第一数据中每个二进制数值对应的信号占用的时长可以相等。举例来说,二进制数值0和1对应的信号的时长均为3毫秒。上述生成上述第一数据对应的方波可以是依次生成上述第一数据包含的二进制数值所对应的方波信号。举例来说,第一数据为101000110101,目标设备可以依次从左至右生成101000110101对应的方波信号。又举例来说,第一频率f1为2000hz,第二频率f2为1000hz,第一时长为(1000000/f1)/2)(us),即250us,第二时长为(1000000/f2)/2)(us),即500us,二进制数值1对应6个高电平的时长为第一时长的方波,二进制数值0对应3个高电平的时长为第二时长的方波,每个方波的高电平与低电平的时长相等,且高电平在低电平之前。可以理解,上述第一频率与上述第一时长相对应,上述第二频率与上述第二时长相对应。

假定一个二进制数值对应的信号的时长t为3000us,第一频率f1为2000hz,第二频率f2为1000hz,则t*f1个第一方波表示二进制数值1,t*f2个第二方波表示二进制数值0,第一方波的高电平的时长为(1000000/f1)/2)(us),即250us,第二方波的高电平的时长为(1000000/f2)/2)(us),即500us。如图2所示,图中为二进制编码101对应的方波,图中包含两种方波,一种为第一频率的方波,即占用时长较短的方波如左数第一个方波,另一种为第二频率的方波,即占用时长较长的方波如左数第七个方波,可以看出6个连续第一频率的方波表示二进制数值1,3个连续的第二频率的方波表示二进制数值0。

在实际应用中,目标设备利用定时器进行计时,在每个定时周期输出对应频率的方波。假定定时周期为3000us,目标设备在当前定时周期发送的二进制数值为1,则输出二进制数值1对应的频率的方波;当定时器的定时时长到达3000us后,输出下一定时周期所需发送的二进制数值对应的频率。

103、通过音频接口向上述终端发送上述第一数据对应的方波。

上述目标设备与上述终端通过音频接口进行通信。在实际应用中,上述目标设备与上述终端可以通过数据线进行连接,该数据线的一端连接目标设备的音频接口,另一端连接终端的音频接口。

本发明实施例中,n个高电平的时长为第一时长的方波表示二进制数值1,m个高电平的时长为第二时长的方波表示二进制数值0,通过合理地设置第一时长和第二时长关系以及大小,可以提高目标设备与终端之间通过音频接口进行通信的成功率,并解决终端的音频接口兼容性较差的问题。

在一种可选的实现方式中,n个上述第一时长的总和与m个上述第二时长的总和相等,n个上述第一时长小于2毫秒;上述第一频率为上述第二频率的k倍,上述k不小于2;上述第一频率和上述第二频率均不小于1000赫兹且不大于4000赫兹,上述通过音频接口向上述终端发送上述第一数据对应的方波包括:

在对上述第一数据对应的方波进行整流和放大处理后,通过上述音频接口向上述终端输出处理后的上述第一数据对应的方波。

上述k可以是2、3、4等。上述第一频率和上述第二频率均不小于1000赫兹且不大于4000赫兹可以保证目标设备正确、快速地编码。上述第一频率可为上述第二频率的整数倍,如2倍。这样可以使得编解码的效率和准确性更高。本发明实施例中,较高频率的方波可以对应二进制数值0和1中的一个,另一个与较低频率的方波相对应。本发明实施例中,限定n个上述第一时长小于2毫秒,可以保证目标设备的生成方波的速度较快,进而保证传输速率。上述n和上述m均大于2。由于终端接收到的方波的可能会丢失1到2个,因此需要保证每个二进制数值对应的方波个数均大于2。

对上述第一数据对应的方波进行整流和放大处理可以对信号发生器生成的方波进一步处理,以便于终端正确地接收。如图3所示,信号发生器301与处理电路302的输入端3021相连,处理电路302的输出端3022连接音频接口303,处理电路302对信号发生器生成的方波进行整流和放大,并输出到音频接口。

本发明实施例中,通过设置第一频率和第二频率的关系、大小以及二进制数值对应的信号的时长,可以提高目标设备编码的效率和准确性。

可选的,上述生成上述第一数据对应的方波包括:

在定时器的定时时长到达目标时长后,计数器的计数次数加一,上述第一时长对应e个计数次数,上述第二时长对应f个计数次数;

在确定当前所需发送的二进制数值为1的情况下,判断上述计数器的计数次数是否小于e;若是,则上述音频接口输出高电平,否则,判断上述计数器的计数次数是否等于e;若是,则上述音频接口输出低电平,否则,判断上述计数器的计数次数是否整除2*e;若是,则上述音频接口输出高电平,否则,判断上述计数器的计数次数减去e后是否整除2*e;若是,则上述音频接口输出低电平,否则,判断上述计数器的计数次数是否等于2n*e;若是,上述计数器的计数次数清零且上述音频接口输出低电平,否则,上述计数器的计数次数加一;

在确定当前所需发送的二进制数值为0的情况下,判断上述计数器的计数次数是否小于f;若是,则上述音频接口输出高电平,否则,判断上述计数器的计数次数是否等于f;若是,则上述音频接口输出低电平,否则,判断上述计数器的计数次数是否整除2*f;若是,则上述音频接口输出高电平,否则,判断上述计数器的计数次数减去f后是否整除2*f;若是,则上述音频接口输出低电平,否则,判断上述计数器的计数次数是否等于2m*f;若是,上述计数器的计数次数清零且上述音频接口输出低电平,否则,上述计数器的计数次数加一。

上述目标时长可以是2000us、2500us、3000us等。上述在定时器到达目标时长后,计数器的计数次数加一可以是上述定时器的计时时长达到上述目标时长后,计数器的计数次数加一,上述定时器的计时时长清零,重新进行计时。可以理解,上述计数器每隔上述目标时长计数次数加一。

参见图4,是本发明实施例提供一种方波信号生成方法的示意流程图,如图4所示,该方法可包括:

401、定时器的计时时长达到目标时长;

402、计数次数加一;

403、判断发送的二进制数值是否为1;

若是,执行404,若否,执行414。

404、判断上述计数器的计数次数是否小于e;

若是,执行405,若否,执行406。其中,e为第一时长对应的计数个数。第一时长为第一频率的方波的高电平的时长。一个二进制数值对应n个第一频率的方波。

405、输出高电平;

406、判断上述计数器的计数次数是否等于e;

若是,执行407,若否,执行408。

407、输出低电平;

408、判断上述计数器的计数次数是否整除2*e;

若是,执行409,若否,执行410。

409、输出高电平;

410、判断上述计数器的计数次数减去e后是否整除2*e;

若是,执行411,若否,执行412。

411、输出低电平;

412、判断上述计数器的计数次数是否等于2n*e;

若是,执行413,若否,执行401。

413、上述计数器的计数次数清零且上述音频接口输出低电平;

414、判断上述计数器的计数次数是否小于f;

若是,执行415,若否,执行416。其中,f为第二时长对应的计数个数。第二时长为第二频率的方波的高电平的时长。一个二进制数值对应m个第二频率的方波。

415、输出高电平;

416、判断上述计数器的计数次数是否等于f;

若是,执行417,若否,执行418。

417、输出低电平;

418、判断上述计数器的计数次数是否整除2*f;

若是,执行419,若否,执行420。

419、输出高电平;

420、判断上述计数器的计数次数减去f后是否整除2*f;

若是,执行421,若否,执行422。

421、输出低电平;

422、判断上述计数器的计数次数是否等于2m*f;

若是,执行423,若否,执行401。

423、上述计数器的计数次数清零且上述音频接口输出低电平。

举例来说,t=3200us,f1=2500hz,f2=1250hz,位“1”和“0”对应的方波的时长均为t,如图5a所示,二进制数值1对应8个f1频率的方波,二进制数值0对应4个f2频率的方波。假定目标时长为50us,一个f1频率的方波的高电平对应4个计数次数;如图5b所示,计数次数小于4时,输出高电平;计数次数等于4时,输出低电平;计数次数等于8、16、24、32、40、48、56时,输出高电平,即计数次数能被8整除时,输出高电平;计数次数等于12、20、28、36、44、52、60时,输出低电平,即计数次数减4,能被8整除时,输出低电平;计数次数等于64时,位“1”输出完成。当计数次数不为4的倍数时,输出的电平保持不变。同理,输出位“0”对应的方波的步骤与位“1”类似。

本发明实施例中,可以快速、准确地生成第一数据对应的信号。

参见图6,是本发明实施例提供一种基于音频接口的通信方法的示意流程图,如图6所示,该方法可包括:

601、通过音频接口接收来自终端的目标信号;

如图2所示,目标设备接收到的目标信号为方波信号。上述目标信号中多个连续的第一频率的方波对应二进制数值1,多个连续的第二频率的方波对应二进制数值0。举例来说,t=3000us,f1=2000hz,f2=1000hz,位“1”和位“0”对应的方波的时长均为t,即二进制数值1和0对应的信号的时长均为t,二进制数值1对应f1频率的方波的个数为f1*t个,即6个,二进制数值0对应f2频率的方波的个数为f2*t个,即3个。

602、确定上述目标信号包含的q个高电平对应的q个时长,上述q个时长中的r个时长为第一时长,w个时长为第二时长,上述第一时长为第一频率的方波的高电平的时长,上述第二时长为第二频率的方波的高电平的时长;上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;

上述确定上述目标信号包含的q个高电平对应的q个时长可以是通过定时器确定目标信号对应的q个高电平的时长。本发明实施例中,目标设备可以通过多种方式确定目标信号对应的高电平的时长,并进行存储,本发明实施不作限定。上述r和上述w相加之和等于上述q。举例来说,目标信号包含的64个高电平对应64个时长,其中,24个时长为第一时长,40个时长为第二时长。

603、依据上述q个时长确定上述目标信号对应的二进制数据,上述二进制数据中的每个1对应n个高电平的时长为上述第一时长的方波,上述二进制数据中的每个0对应m个高电平的时长为上述第二时长的方波。

如图2所示,二进制数值1对应6个f1频率的方波,二进制数值0对应3个f2频率的方波;一个f1频率的方波的高电平时长为第一时长,一个f2频率的方波的高电平时长为第二时长。上述依据上述q个时长确定上述目标信号对应的二进制数据可以是确定n个连续的第一时长对应一个二进制数值1,确定m个连续的第二时长对应的一个二进制数值为0。本发明实施例中,上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹,可以保证目标设备的解码速度以及正确解码。假定1表示第一时长,0表示第二时长,二进制数值1对应6个第一时长,二进制数值0对应3个第二时长,目标信号包含的18个时长可以表示为111111000000111111,则目标信号对应的二进制数据为1001。

本发明实施例中,依据目标信号对应的高电平的时长确定该目标信号对应的数据,实现简单,解码速度快。

在一种可选的实现方式中,上述依据上述q个时长确定上述目标信号对应的二进制数据包括:

判断上述q个时长中的第l个时长是否小于时间阈值;

若是,则上述第一频率对应的第一计数值加一,否则,上述第二频率对应的第二计数值加一;

在上述第l个时长为上述第二时长且上述q个时长中的第l-1个时长为上述第一时长的情况下,判断上述第一计数值是否不小于n-2且小于n;若是,确定上述第l个时长之前最近的上述第一计数值个时长对应的二进制数值为1,将上述二进制数值1存储到对应的解码数据中,将上述第一计数值清零,且将上述第二计数值加一;若否,判断上述第一计数值是否大于或者等于n;若是,确定上述第l个时长之前最近的上述第一计数值个时长对应上述第一计数值除以n个二进制数值1,将上述第一计数值除以n个二进制数值1存储到对应的解码数据中,将上述第一计数值清零,且将上述第二计数值加一;

在上述第l个时长为上述第一时长且上述q个时长中的第l-1个时长为上述第二时长的情况下,判断上述第二计数值是否不小于m-2且小于m;若是,确定上述第l个时长之前最近的上述第二计数值个时长对应的二进制数值为0,将上述二进制数值0存储到对应的解码数据中,将上述第二计数值清零,且将上述第一计数值加一;若否,判断上述第二计数值是否大于或者等于m;若是,确定上述第l个时长之前最近的上述第二计数值个时长对应上述第二计数值除以m个二进制数值0,将上述第二计数值除以m个二进制数值0存储到对应的解码数据中,将上述第二计数值清零,且将上述第一计数值加一。

上述时间阈值可以为大于上述第一时长且小于上述第二时长的阈值,上述第一时长小于上述第二时长。上述时间阈值可以为预先设置的,也可以是由第一时长和第二时长确定的。可选的,在确定上述第二时长大于1.5倍的上述第一时长后,上述时间阈值可以设置为1.5倍的上述第一时长。

图7本发明实施例提供一种解码方法的示意流程图,如图7所示,该方法可包括:

701、通过定时器确定目标信号对应的w个高电平时长,并进行记录,得到目标记录;

上述目标记录为上述目标信号对应的w个高电平时长的记录。

702、判断目标计数值r是否为w;

上述目标计数值r为当前已处理的高电平时长的个数。若是,执行703,若否,执行718。

703、判断上述目标记录中的第r个高电平时长是否小于时间阈值;

若是,执行704,若否,执行711。

704、将第一计数值加一,判断上述第一计数值是否不小于n-2且小于n;

上述目标记录中n个连续的第一时长对应一个二进制数值。上述第一计数值为第一时长对应的计数值。若是,执行705,若否,执行708。

705、确定二进制数值1的个数为1;

706、将1存入对应的解码数据;

707、将上述第一计数值清零,将第二计数值加一,将上述r加一;

上述第二计数值为第二时长对应的计数值。上述目标记录中m个连续的第二时长对应一个二进制数值。

708、判断上述第一计数值是否大于或等于n;

若是,执行709,若否,执行710。

709、确定二进制数值1的个数为上述第一计数值除以n;

710、确定解码错误,重新解码;

711、将上述第二计数值加一,判断上述第二计数值是否不小于m-2且小于m;

若是,执行712,若否,执行715。

712、确定二进制数值0的个数为1;

713、将0存入对应的解码数据;

714、上述第二计数值清零,第一计数值加一,将上述r加一;

715、判断上述第二计数值是否大于或等于m;

若是,执行716,若否,执行717。

716、确定二进制数值0的个数为上述第二计数值除以m;

717、确定解码错误,重新解码;

718、解码结束。

本发明实施例通过获取目标信号对应的高电平时长的记录,依据高电平时长的记录进行解码,实现简单,解码准确。

在一种可选的实现方式中,上述第一频率为上述第二频率的k倍,上述k不小于2,上述第一频率和上述第二频率均不小于1000赫兹且不大于4000赫兹,上述判断上述q个时长中的第l个时长是否小于时间阈值之前,上述方法还包括:

上述第二时长除以上述第一时长得到目标倍数,上述第二时长大于上述第一时长;

设置上述时间阈值为不大于上述第一时长与上述目标倍数相乘的结果。

举例来说,目标设备统计的第二时长为第一时长的1.5倍,则时间阈值设置为1.5倍的第一时长。可以理解,本发明实施例中,可以自适应地设置时间阈值,以便于正确地接收不同类型的信号。举例来说,目标设备接收第一信号时,时间阈值为2毫秒;目标设备接收第二信号时,时间阈值为3毫秒。

本发明实施例目标设备通过自适应地设置时间阈值,可以保证目标设备正确地解码不同的终端发送的信号,提高目标设备的兼容性。

参见图8,是本发明实施例提供一种编码方法的示意流程图,如图8所示,该方法可包括:

801、获取第二数据,上述第二数据为待向目标设备发送的二进制数据,上述第二数据依次包含起始位、数据位、循环冗余校验位、奇偶检验位以及结束位对应的二进制编码;

802、通过信号发生器生成上述第二数据对应的目标信号,上述第二数据中的每个1对应n个连续的频率为第一频率的正弦波或余弦波,上述第二数据中的每个0对应m个连续的频率为第二频率的正弦波或余弦波,上述目标信号包含上述第二数据对应的正弦波或余弦波,上述第一频率为上述第二频率的k倍,上述k不小于2,上述n个连续的频率为第一频率的正弦波或余弦波的时长小于4毫秒,上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;

举例来说,第一频率为第二频率的2倍,6个连续的第一频率的正弦波表示二进制数值1,3个连续的第二频率的正弦波表示二进制数值0。上述n个连续的频率为第一频率的正弦波或余弦波的时长与上述m个连续的频率为第二频率的正弦波或余弦波的时长相等。可以理解,每个二进制数值对应的信号的时长相等。本发明实施例中,限定n个连续的频率为第一频率的正弦波或余弦波的时长小于4毫秒以及限定上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹,可以保证终端生成目标信号的速度较快,并保证编码的正确。

803、通过音频接口向上述目标设备发送上述目标信号。

本发明实施例将第二数据中的二进制数值解码为不同频率和个数的正弦波或余弦波,并生成对应的目标信号向终端进行发送,实现简单,编码效率较高。

在一种可选的实现方式中,上述n个连续的频率为第一频率的正弦波或余弦波的时长与上述m个连续的频率为第二频率的正弦波或余弦波的时长相等,上述第一频率和上述第二频率均不小于1000赫兹且不大于4000赫兹,上述通过音频接口向上述目标设备发送上述目标信号包括:

在对上述目标信号进行整流和放大处理后,通过上述音频接口向上述目标设备输出处理后的上述目标信号。

上述第一频率和上述第二频率是经过大量统计数据确定的频率范围,将上述第一频率和上述第二频率限定在1000赫兹到4000赫兹的范围,可以兼顾编码效率、编码准确率,并保证解码速度较低的目标设备可以准确地解码。对上述目标信号进行整流和放大处理,可以对目标信号进一步处理,提高目标设备正确解码的概率。

参见图9,是本发明实施例提供一种生成目标信号的方法的示意流程图,如图9所示,该方法可包括:

901、正弦信号发生器生成第一频率的正弦波和第二频率的正弦波;

902、判断当前发送的二进制数值是否为1;

若是,执行903,若否,执行904。

903、连续发送n个第一频率的正弦波;

904、连续发送m个第二频率的正弦波。

本发明实施例将第二数据中的二进制数值解码为不同频率和个数的正弦波或余弦波,并生成对应的目标信号向目标设备进行发送,实现简单,编码效率较高。

本发明实施例通过限定第一频率和第二频率的范围,可以兼顾编码效率、编码准确率,并保证解码速度较低的目标设备可以准确地解码。

参见图10,是本发明另一实施例提供一种编码方法的示意流程图,如图10所示,该方法可包括:

1001、通过音频接口接收目标设备发送的目标信号,对上述目标信号进行采样,得到g个采样数据;

上述目标信号为方波信号。终端接收到的目标信号如图2所示,根据编码规定,数据中位“1”和“0”总数可以为y=4+8*x+8+1+1,其中,前四位为起始位,起始位后面为数据位,数据位后面为循环冗余校验位,循环冗余校验位后面为奇偶校验位,最后一位为结束位,且每位的时长都为t。终端采样频率可以设置为:f=44100(hz),那么采集t时长数据需要的次数:z=t/(1000000/44100),因为t<=4000,所以z<=176.4,故可以选用256点(不足的补0)fft变换解码,根据fft的幅频特性,256点中最大值q点对应的频率值(f/256)*q即为当前频率,位“1”频率f1对应的点q_f1=f1/(f/256),位“0”频率f2对应的点q_f2=f2/(f/256)。终端中开辟一个缓存f_buff[z*y*2],将采样数据存入缓存。可选的,在获取到采样数据后可以通过设置阈值滤掉无用的数据。

1002、依据数据列表确定当前所需获取的采样数据的个数为f后,获取f个采样数据,上述f个采样数据为上述g个采样数据中的数据,上述数据列表包含h个数值,上述h个数值为待选取的采样数据的个数;

上述f个采样数据为进行一次fft所需的数据。举例来说,采用256个点进行fft,则获取256个采样数据。上述数据列表中最前面的数值为利用公式z=t/(1000000/f)计算出的采样数据的个数,其中,t为一个二进制数值对应的时长,即位“1”或位“0”对应的时长,f为采样频率。数据列表中的数据均为与z上下幅度不超出20的值,列表成员的个数k不超过40。

1003、对上述f个采样数据进行快速傅里叶变换fft,得到计算结果,上述计算结果包含上述f个采样数据对应的频率的信息,上述f个采样数据对应第一频率或第二频率;

在缓存中找到有用数据的起始位置。从起始位置开始取g个数据进行fft变换,由q=q_f1或q=q_f1±1解出位“1”,由q=q_f2或q=q_f2±1解出位“0”,循环取多次数据进行fft,解出所有位“1”和“0”。

由于不同终端的麦克风的阻抗不同,在采集数据时,可能会丢失小部分数据,导致采样数据的起始位置不同。为了兼容大部分终端,采样数据的个数不能固定。本发明实施例中,终端中预置一个数据列表z_buff[k],每个列表成员的数值与采样数据的个数f上下幅度不超过20,f排在最前面,列表成员个数k不超过40。解码时,循环从列表中取值赋予g,再解出所有位“1”和“0”,判断奇偶效验位是否正确,正确则解码结束,不正确则继续循环。

1004、若上述f个采样数据对应的频率为上述第一频率,则确定上述f个采样数据对应的二进制数值为1;否则,确定上述f个采样数据对应的二进制数值为0。

上述f个采样数据对应的频率为上述第一频率可以是上述计算结果中第一频率对应的点或上述一频率对应的点的相邻点的值最大。上述f个采样数据对应的频率为上述第二频率可以是上述计算结果中第二频率对应的点或上述二频率对应的点的相邻点的值最大。

本发明实施例中,终端根据需要调整fft解码所需的采样数据的个数,实现简单,兼容性较好。

在一种可选的实现方式中,上述若上述f个采样数据对应的频率为上述第一频率,则确定上述f个采样数据对应的二进制数值为1;否则,确定上述f个采样数据对应的二进制数值为0之后,上述方法还包括:

在确定完成解码后,对得到的目标编码进行奇偶检验,上述目标编码依次包含起始位、数据位、循环冗余校验位、奇偶检验位以及结束位对应的编码;

在依据奇偶检验的结果确定上述目标编码错误的情况下,从上述数据列表中获取目标值,上述目标值位于上述数据列表中且与最近获取的采样数据的个数相邻;

依据上述目标值个采样数据确定一个二进制数值。

上述数据列表中的数值有一定的顺序。举例来说,数据列表包含10个数值,即256到265,终端可以依次获取这10个数值,当利用257个采样数据得到的目标编码解码错误时,获取258个采样数据进行解码。

本发明实施例中,在解码错误后,调整fft所依据的采样数据的个数重新解码,可以提高解码的准确率。

在一种可选的实现方式中,上述第一频率为上述第二频率的k倍,上述k不小于2,上述n个连续的频率为第一频率的正弦波或余弦波的时长小于4毫秒,上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹。

可选的,上述第一频率和上述第二频率均不小于1000赫兹且不大于4000赫兹。

本发明实施例通过限定第一频率和第二频率的范围,可以兼顾解码效率、解码准确率。

参见图11,是本发明另一实施例提供一种解码方法的示意流程图,如图11所示,该方法可包括:

1101、对目标信号进行采样,得到g个采样数据;

1102、存储上述g个采样数据;

1103、从数据列表的首位置取值,赋值给z;

1104、判断数据列表中的k个值是否均被取过;

若否,执行1105,若是,执行1110。上述数据列表中的k个值为待选取的采样数据的个数。

1105、获取z个采样数据,进行fft,确定最大值对应的q点;判断是否取过y次采样数据;

若是,执行1111,若否,执行1106。上述y为上述g个采样数据对应的二进制数值的个数。

1106、判断q是否等于q_f1或者q_f1±1;

q_f1为第一频率对应的点,即q_f1=f1/(f/256)。f为采样频率,f1为第一频率。256为fft的采样点的个数。若是,执行1107,若否,执行1108。

1107、解出位“1”,存储到解码数据中;

1108、判断q是否等于q_f2或者q_f2±1;

q_f2为第二频率对应的点,即q_f2=f2/(f/256)。f为采样频率,f2为第二频率。256为fft的采样点的个数。若是,执行1109,若否,执行1110。

1109、解出位“0”,存储到解码数据中;

1110、确定解码错误,重新解码;

1111、判断奇偶校验是否正确;

若是,执行1112;若否,执行1103。

1112、确定解码正确,结束解码。

本发明实施例中,终端根据需要调整fft解码所需的采样数据的个数,实现简单,兼容性较好。

本发明实施例还提供一种通信设备,该通信设备用于执行前述任一项上述的方法。具体地,参见图12,该通信设备包括:

获取单元1201,用于获取第一数据,上述第一数据为待向终端发送的二进制数据;

生成单元1202,用于生成上述第一数据对应的方波;上述第一数据中的每个1对应n个高电平的时长为第一时长的方波,上述第一数据中的每个0对应m个高电平的时长为第二时长的方波;其中,上述高电平的时长为第一时长的方波的频率为第一频率,上述高电平的时长为第二时长的方波的频率为第二频率;上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;

发送单元1203,用于通过音频接口向上述终端发送上述第一数据对应的方波。

具体实现方法与图1中的方法相同,这里不作详述。

可选的,n个上述第一时长的总和与m个上述第二时长的总和相等,n个上述第一时长小于2毫秒;上述第一频率为上述第二频率的k倍,上述k不小于2;上述第一频率和上述第二频率均不小于1000赫兹且不大于4000赫兹,如图12所示,上述通信设备还包括:处理单元1204,用于对上述第一数据对应的方波进行整流和放大处理;

上述发送单元1203,具体用于通过上述音频接口向上述终端输出处理后的上述第一数据对应的方波。

本发明实施例中,通过设置第一频率和第二频率的关系、大小以及二进制数值对应的信号的时长,可以提高目标设备编码的效率和准确性。

可选的,上述生成单元1202,具体用于在定时器到达目标时长后,计数器的计数次数加一,上述第一时长对应e个计数次数,上述第二时长对应f个计数次数;在确定当前所需发送的二进制数值为1的情况下,判断上述计数器的计数次数是否小于e;若是,则上述音频接口输出高电平,否则,判断上述计数器的计数次数是否等于e;若是,则上述音频接口输出低电平,否则,判断上述计数器的计数次数是否整除2*e;若是,则上述音频接口输出低电平,否则,判断上述计数器的计数次数减去e后是否整除2*e;若是,则上述音频接口输出高电平,否则,判断上述计数器的计数次数是否等于2n*e;若是,上述计数器的计数次数清零且上述音频接口输出低电平,否则,上述计数器的计数次数加一;在确定当前所需发送的二进制数值为0的情况下,判断上述计数器的计数次数是否小于f;若是,则输入/输出音频接口输出高电平,否则,判断上述计数器的计数次数是否等于f;若是,则上述音频接口输出低电平,否则,判断上述计数器的计数次数是否整除2*f;若是,则上述音频接口输出低电平,否则,判断上述计数器的计数次数减去f后是否整除2*f;若是,则上述音频接口输出高电平,否则,判断上述计数器的计数次数是否等于2m*f;若是,上述计数器的计数次数清零且上述音频接口输出低电平,否则,上述计数器的计数次数加一。

本发明实施例中,可以快速、准确地生成第一数据对应的信号。

本发明实施例还提供另一种通信设备,该通信设备用于执行前述任一项上述的方法。具体地,参见图13,该通信设备包括:

接收单元1301,用于通过音频接口接收来自终端的目标信号;

确定单元1302,用于确定上述目标信号包含的q个高电平对应的q个时长,上述q个时长中的r个时长为第一时长,w个时长为第二时长,上述第一时长为第一频率的方波的高电平的时长,上述第二时长为第二频率的方波的高电平的时长;上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;依据上述q个时长确定上述目标信号对应的二进制数据,上述二进制数据中的每个1对应n个高电平的时长为上述第一时长的方波,上述二进制数据中的每个0对应m个高电平的时长为上述第二时长的方波。

具体实现方法与图6中的方法相同,这里不作详述。

可选的,上述确定单元1302,具体用于判断上述q个时长中的第l个时长是否小于时间阈值;若是,则上述第一频率对应的第一计数值加一,否则,上述第二频率对应的第二计数值加一;在上述第l个时长为上述第二时长且上述q个时长中的第l-1个时长为上述第一时长的情况下,判断上述第一计数值是否不小于n-2且小于n;若是,确定上述第l个时长之前最近的上述第一计数值个时长对应的二进制数值为1,将上述二进制数值1存储到对应的解码数据中,将上述第一计数值清零,且将上述第二计数值加一;若否,判断上述第一计数值是否大于或者等于n;若是,确定上述第l个时长之前最近的上述第一计数值个时长对应上述第一计数值除以n个二进制数值1,将上述第一计数值除以n个二进制数值1存储到对应的解码数据中,将上述第一计数值清零,且将上述第二计数值加一;在上述第l个时长为上述第一时长且上述q个时长中的第l-1个时长为上述第二时长的情况下,判断上述第二计数值是否不小于m-2且小于m;若是,确定上述第l个时长之前最近的上述第二计数值个时长对应的二进制数值为0,将上述二进制数值0存储到对应的解码数据中,将上述第二计数值清零,且将上述第一计数值加一;若否,判断上述第二计数值是否大于或者等于m;若是,确定上述第l个时长之前最近的上述第二计数值个时长对应上述第二计数值除以m个二进制数值0,将上述第二计数值除以m个二进制数值0存储到对应的解码数据中,将上述第二计数值清零,且将上述第一计数值加一。

本发明实施例通过获取目标信号对应的高电平时长的记录,依据高电平时长的记录进行解码,实现简单,解码准确。

可选的,上述第一频率为上述第二频率的k倍,上述k不小于2,上述第一频率和上述第二频率均不小于1000赫兹且不大于4000赫兹,上述通信设备还包括:

运算单元1303,用于利用上述第二时长除以上述第一时长得到目标倍数,上述第二时长大于上述第一时长;

设置单元1304,用于设置上述时间阈值为不大于上述第一时长与上述目标倍数相乘的结果。

本发明实施例目标设备通过自适应地设置时间阈值,可以保证目标设备正确地解码不同的终端发送的信号,提高目标设备的兼容性。

本发明实施例还提供一种终端,该终端用于执行前述任一项上述的方法。具体地,参见图14,是本发明实施例提供的一种终端的示意框图。本实施例的终端包括:获取单元1401,用于获取第二数据,上述第二数据为待向目标设备发送的二进制数据,上述第二数据依次包含起始位、数据位、循环冗余校验位、奇偶检验位以及结束位对应的二进制编码;

生成单元1402,用于通过信号发生器生成上述第二数据对应的目标信号,上述第二数据中的每个1对应n个连续的频率为第一频率的正弦波或余弦波,上述第二数据中的每个0对应m个连续的频率为第二频率的正弦波或余弦波,上述目标信号包含上述第二数据对应的正弦波或余弦波,上述第一频率为上述第二频率的k倍,上述k不小于2,上述n个连续的频率为第一频率的正弦波或余弦波的时长小于4毫秒,上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;

发送单元1403,用于通过音频接口向上述目标设备发送上述目标信号。

具体实现方法与图8中的方法相同,这里不作详述。

可选的,上述n个连续的频率为第一频率的正弦波或余弦波的时长与上述m个连续的频率为第二频率的正弦波或余弦波的时长相等,上述第一频率和上述第二频率均不小于1000赫兹且不大于4000赫兹,上述终端还包括:

处理单元1404,用于对上述目标信号进行整流和放大处理;

上述发送单元1403,具体用于通过上述音频接口向上述目标设备输出处理后的上述目标信号。

本发明实施例通过限定第一频率和第二频率的范围,可以兼顾编码效率、编码准确率,并保证解码速度较低的目标设备可以准确地解码。

本发明实施例还提供另一种终端,该终端用于执行前述任一项上述的方法。具体地,参见图15,是本发明实施例提供的一种终端的示意框图。本实施例的终端包括:

接收单元1501,用于通过音频接口接收目标设备发送的目标信号;

采样单元1502,用于对上述目标信号进行采样,得到g个采样数据;

确定单元1503,用于依据数据列表确定当前所需获取的采样数据的个数为f后,获取f个采样数据,上述f个采样数据为上述g个采样数据中的数据,上述数据列表包含h个数值,上述h个数值为待选取的采样数据的个数;

变换单元1504,用于对上述f个采样数据进行快速傅里叶变换fft,得到计算结果,上述计算结果包含上述f个采样数据对应的频率的信息,上述f个采样数据对应第一频率或第二频率;

上述确定单元1503,还用于若上述f个采样数据对应的频率为上述第一频率,则确定上述f个采样数据对应的二进制数值为1;否则,确定上述f个采样数据对应的二进制数值为0。

具体实现方法与图10中的方法相同,这里不作详述。

可选的,上述确定单元1503,还用于在确定完成解码后,对得到的目标编码进行奇偶检验,上述目标编码依次包含起始位、数据位、循环冗余校验位、奇偶检验位以及结束位对应的编码;在依据奇偶检验的结果确定上述目标编码错误的情况下,从上述数据列表中获取目标值,上述目标值位于上述数据列表中且与最近获取的采样数据的个数相邻;依据上述目标值个采样数据确定一个二进制数值。

本发明实施例中,在解码错误后,调整fft所依据的采样数据的个数重新解码,可以提高解码的准确率。

可选的,上述第一频率为上述第二频率的k倍,上述k不小于2,上述n个连续的频率为第一频率的正弦波或余弦波的时长小于4毫秒,上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹。

本发明实施例通过限定第一频率和第二频率的范围,可以兼顾解码效率、解码准确率。

参见图16,是本发明另一实施例提供的一种终端示意框图。如图所示的本实施例中的终端可以包括:一个或多个处理器1601;一个或多个输入设备1602,一个或多个输出设备1603和存储器1604。上述处理器1601、输入设备1602、输出设备1603和存储器1604通过总线1605连接。存储器1604用于存储计算机程序,上述计算机程序包括程序指令,处理器1601用于执行存储器1604存储的程序指令。其中,处理器1601被配置用于调用上述程序指令执行:获取第二数据,上述第二数据为待向目标设备发送的二进制数据,上述第二数据依次包含起始位、数据位、循环冗余校验位、奇偶检验位以及结束位对应的二进制编码;通过信号发生器生成上述第二数据对应的目标信号,上述第二数据中的每个1对应n个连续的频率为第一频率的正弦波或余弦波,上述第二数据中的每个0对应m个连续的频率为第二频率的正弦波或余弦波,上述目标信号包含上述第二数据对应的正弦波或余弦波,上述第一频率为上述第二频率的k倍,上述k不小于2,上述n个连续的频率为第一频率的正弦波或余弦波的时长小于4毫秒,上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;通过音频接口向上述目标设备发送上述目标信号。

或者,处理器1601被配置用于调用上述程序指令执行:通过音频接口接收目标设备发送的目标信号,对上述目标信号进行采样,得到g个采样数据;依据数据列表确定当前所需获取的采样数据的个数为f后,获取f个采样数据,上述f个采样数据为上述g个采样数据中的数据,上述数据列表包含h个数值,上述h个数值为待选取的采样数据的个数;对上述f个采样数据进行快速傅里叶变换fft,得到计算结果,上述计算结果包含上述f个采样数据对应的频率的信息,上述f个采样数据对应第一频率或第二频率;若上述f个采样数据对应的频率为上述第一频率,则确定上述f个采样数据对应的二进制数值为1;否则,确定上述f个采样数据对应的二进制数值为0。

应当理解,在本发明实施例中,所称处理器1601可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

输入设备1602可以包括触控板、指纹采集传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备1603可以包括显示器(lcd等)、扬声器等。

该存储器1604可以包括只读存储器和随机存取存储器,并向处理器1601提供指令和数据。存储器1604的一部分还可以包括非易失性随机存取存储器。例如,存储器1604还可以存储设备类型的信息。

具体实现中,本发明实施例中所描述的处理器1601、输入设备1602、输出设备1603可执行前述实施例提供的基于音频接口的通信方法所描述的实现方式,也可执行本发明实施例所描述的终端的实现方式,在此不再赘述。

参见图17,是本发明另一实施例提供的一种通信设备示意框图。如图所示的本实施例中的通信设备可以包括:一个或多个处理器1701;一个或多个输入设备1702,一个或多个输出设备1703和存储器1704。上述处理器1701、输入设备1702、输出设备1703和存储器1704通过总线1705连接。存储器1704用于存储计算机程序,上述计算机程序包括程序指令,处理器1701用于执行存储器1704存储的程序指令。处理器1701可以是微处理器。其中,处理器1701被配置用于调用上述程序指令执行:获取第一数据,上述第一数据为待向终端发送的二进制数据;生成上述第一数据对应的方波;上述第一数据中的每个1对应n个高电平的时长为第一时长的方波,上述第一数据中的每个0对应m个高电平的时长为第二时长的方波;其中,上述高电平的时长为第一时长的方波的频率为第一频率,上述高电平的时长为第二时长的方波的频率为第二频率;上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;通过音频接口向上述终端发送上述第一数据对应的方波。

或者,上述处理器1701被配置用于调用上述程序指令执行:通过音频接口接收来自终端的目标信号;确定上述目标信号包含的q个高电平对应的q个时长,上述q个时长中的r个时长为第一时长,w个时长为第二时长,上述第一时长为第一频率的方波的高电平的时长,上述第二时长为第二频率的方波的高电平的时长;上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;依据上述q个时长确定上述目标信号对应的二进制数据,上述二进制数据中的每个1对应n个高电平的时长为上述第一时长的方波,上述二进制数据中的每个0对应m个高电平的时长为上述第二时长的方波。

在本发明的另一实施例中提供一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序包括程序指令,上述程序指令被处理器执行时实现:获取第一数据,上述第一数据为待向终端发送的二进制数据;生成上述第一数据对应的方波;上述第一数据中的每个1对应n个高电平的时长为第一时长的方波,上述第一数据中的每个0对应m个高电平的时长为第二时长的方波;其中,上述高电平的时长为第一时长的方波的频率为第一频率,上述高电平的时长为第二时长的方波的频率为第二频率;上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;通过音频接口向上述终端发送上述第一数据对应的方波。或者,上述程序指令被处理器执行时实现:通过音频接口接收来自终端的目标信号;确定上述目标信号包含的q个高电平对应的q个时长,上述q个时长中的r个时长为第一时长,w个时长为第二时长,上述第一时长为第一频率的方波的高电平的时长,上述第二时长为第二频率的方波的高电平的时长;上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;依据上述q个时长确定上述目标信号对应的二进制数据,上述二进制数据中的每个1对应n个高电平的时长为上述第一时长的方波,上述二进制数据中的每个0对应m个高电平的时长为上述第二时长的方波。

或者,上述程序指令被处理器执行时实现:获取第二数据,上述第二数据为待向目标设备发送的二进制数据,上述第二数据依次包含起始位、数据位、循环冗余校验位、奇偶检验位以及结束位对应的二进制编码;通过信号发生器生成上述第二数据对应的目标信号,上述第二数据中的每个1对应n个连续的频率为第一频率的正弦波或余弦波,上述第二数据中的每个0对应m个连续的频率为第二频率的正弦波或余弦波,上述目标信号包含上述第二数据对应的正弦波或余弦波,上述第一频率为上述第二频率的k倍,上述k不小于2,上述n个连续的频率为第一频率的正弦波或余弦波的时长小于4毫秒,上述第一频率和上述第二频率均不小于500赫兹且不大于6000赫兹;通过音频接口向上述目标设备发送上述目标信号。

或者,上述程序指令被处理器执行时实现:通过音频接口接收目标设备发送的目标信号,对上述目标信号进行采样,得到g个采样数据;依据数据列表确定当前所需获取的采样数据的个数为f后,获取f个采样数据,上述f个采样数据为上述g个采样数据中的数据,上述数据列表包含h个数值,上述h个数值为待选取的采样数据的个数;对上述f个采样数据进行快速傅里叶变换fft,得到计算结果,上述计算结果包含上述f个采样数据对应的频率的信息,上述f个采样数据对应第一频率或第二频率;若上述f个采样数据对应的频率为上述第一频率,则确定上述f个采样数据对应的二进制数值为1;否则,确定上述f个采样数据对应的二进制数值为0。

上述计算机可读存储介质可以是前述任一实施例上述的终端或通信设备的内部存储单元,例如终端或通信设备的硬盘或内存。上述计算机可读存储介质也可以是上述终端或通信设备的外部存储设备,例如上述终端上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,上述计算机可读存储介质还可以既包括上述终端的内部存储单元也包括外部存储设备。上述计算机可读存储介质用于存储上述计算机程序以及上述终端所需的其他程序和数据。上述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的终端和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的终端和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1