CN111064556A - 一种通讯指令处理方法及设备 - Google Patents
一种通讯指令处理方法及设备 Download PDFInfo
- Publication number
- CN111064556A CN111064556A CN201911157418.2A CN201911157418A CN111064556A CN 111064556 A CN111064556 A CN 111064556A CN 201911157418 A CN201911157418 A CN 201911157418A CN 111064556 A CN111064556 A CN 111064556A
- Authority
- CN
- China
- Prior art keywords
- instruction
- state
- time length
- current
- current communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 315
- 238000003672 processing method Methods 0.000 title claims abstract description 11
- 230000004044 response Effects 0.000 claims abstract description 81
- 238000000034 method Methods 0.000 claims abstract description 61
- 230000008569 process Effects 0.000 claims description 35
- 230000005540 biological transmission Effects 0.000 claims description 13
- 230000002085 persistent effect Effects 0.000 claims description 3
- 230000001052 transient effect Effects 0.000 claims description 2
- 230000001960 triggered effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 235000010469 Glycine max Nutrition 0.000 description 1
- 244000068988 Glycine max Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000008267 milk Substances 0.000 description 1
- 210000004080 milk Anatomy 0.000 description 1
- 235000013336 milk Nutrition 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/003—Arrangements for allocating sub-channels of the transmission path
- H04L5/0053—Allocation of signaling, i.e. of overhead other than pilot signals
- H04L5/0055—Physical resource allocation for ACK/NACK
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Communication Control (AREA)
Abstract
本申请为一种通讯指令处理方法及设备,公开了一种通讯指令使用方法,包括:获取当前通讯指令以及当前通讯指令的指令状态,包括:空闲状态、等待状态或重发状态,等待状态具有设定时长,若指令状态为空闲状态,则发送当前通讯指令并设置当前通讯指令的指令状态为等待状态,若指令状态为等待状态,则判断已发送时长是否超出设定时长且是否存在对当前通讯指令的应答信息;若未超出且存在应答信息,则设置当前通讯指令的指令状态为空闲状态;若超出,则设置当前通讯指令的指令状态为重发状态;若未超出且不存在应答信息,则保持当前通讯指令的指令状态,若指令状态为重发状态,则设置当前通讯指令的指令状态为空闲状态,返回执行发送当前通讯指令并设置当前通讯指令的指令状态为等待状态的步骤。
Description
技术领域
本申请实施例涉及通讯领域,尤其涉及一种通讯指令处理方法及设备
背景技术
通讯指令是终端设备与终端适配器之间进行交流的重要指令,用于终端设备与终端适配器之间的连接及通信。通讯指令在当代通讯中起着重要的作用,终端适配器能够通过通讯指令控制终端设备的许多行为,包括拨叫号码、按键控制、传真、GPRS等。
在通讯指令的处理过程中,每个通讯指令执行成功与否都有相应的应答信息。对于终端设备而言,一个通讯指令的完整处理过程包括发送通讯指令和接收应答信息过程。接收到相应的应答后,终端设备才可进行下一步骤的操作。
目前处理通讯指令进行通讯时,终端设备发送通讯指令并在接收该通讯指令所对应的应答信息后,才能进行下一步操作。对于很多通讯信号恶劣的情况,通讯指令的应答信息无法被终端设备成功接收,终端设备需要在一定时间内重新发送通讯指令以获得应答信息,这一过程会产生较大的时延,影响下一步骤的进行。
发明内容
本申请实施例第一方面提供了一种通讯指令处理方法:
获取当前通讯指令以及所述当前通讯指令的指令状态,所述指令状态包括:空闲状态、等待状态或重发状态,所述等待状态具有设定时长;
若所述指令状态为空闲状态,则发送所述当前通讯指令并设置所述当前通讯指令的指令状态为等待状态;
若所述指令状态为等待状态,则判断所述当前通讯指令的已发送时长是否超出所述设定时长且是否存在对所述当前通讯指令的应答信息;若所述已发送时长未超出所述设定时长且存在所述应答信息,则设置所述当前通讯指令的指令状态为空闲状态;若所述已发送时长超出所述设定时长,则设置所述当前通讯指令的指令状态为重发状态;若所述已发送时长未超出所述设定时长且不存在所述应答信息,则保持所述当前通讯指令的指令状态;
若所述指令状态为重发状态,则设置所述当前通讯指令的指令状态为空闲状态,返回执行发送所述当前通讯指令并设置所述当前通讯指令的指令状态为等待状态的步骤。
基于第一方面,可选地,所述获取当前通讯指令以及所述当前通讯指令的指令状态包括:
获取当前工作状态以及所述当前工作状态对应的多条通讯指令,其中所述多条通讯指令按一定顺序排列;
将所述多条通讯指令中处于处理过程中的一条通讯指令确定为当前通讯指令;
获取所述当前通讯指令的指令状态。
基于第一方面,可选地,所述若所述已发送时长未超出所述设定时长且存在所述应答信息,则设置所述指令状态为所述空闲状态之后,还包括:
设置所述当前通讯指令为已处理通讯指令;
判断所述当前工作状态对应的通讯指令是否都为所述已处理通讯指令;
若所述当前工作状态对应的通讯指令都为所述已处理通讯指令,则更新所述当前工作状态,并将更新后的当前工作状态所对应的第一条通讯指令确定为当前通讯指令,返回所述确定当前通讯指令以及获取所述当前通讯指令的指令状态的步骤;
若所述当前工作状态对应的通讯指令不都为所述已处理通讯指令,则将所述已处理通讯指令的下一条通讯指令确定为当前通讯指令,返回所述确定当前通讯指令以及所述当前通讯指令的指令状态的步骤。
基于第一方面,可选地,所述当前工作状态包括:上电,模块初始化,网络初始化,正常工作。
基于第一方面,可选地,所述重发状态具有重发次数;若所述指令状态为重发状态,则设置所述指令状态为空闲状态,返回执行发送所述通讯指令之后,还包括:
所述重发次数加一;
判断增加后的重发次数是否大于等于预设值;
若增加后的重发次数大于或等于预设值,则将所述当前工作状态对应的第一条通讯指令确定为当前通讯指令。
基于第一方面,可选地,所述应答信息为完整应答信息。
基于第一方面,可选地,所述若所述指令状态为所述等待状态,则判断已发送时长是否超出所述设定时长且是否存在对所述当前通讯指令的应答信息,若所述已发送时长未超出所述设定时长且存在所述应答信息,则设置所述指令状态为所述空闲状态,若所述已发送时长超出所述设定时长,则设置所述指令状态为重发状态,若所述已发送时长未超出所述设定时长且不存在所述应答信息,则保持所述指令状态,包括:
若所述指令状态为所述等待状态,则判断所述当前通讯指令的已发送时长是否超出所述设定时长;
若所述已发送时长超出所述设定时长,则设置所述当前通讯指令的指令状态为重发状态;
若所述已发送时长未超出所述设定时长,则判断是否存在对所述当前通讯指令的应答信息;若存在所述应答信息,则设置所述当前通讯指令的指令状态为空闲状态;若不存在所述应答信息,则保持所述当前通讯指令的指令状态。
本申请实施例第二方面提供了一种通讯指令处理装置:通讯指令获取单元,用于获取当前通讯指令以及所述当前通讯指令的指令状态,所述指令状态包括:空闲状态、等待状态或重发状态,所述等待状态具有设定时长,若所述指令状态为空闲状态则触发发送单元,若所述指令状态为等待状态则触发判断单元,若所述指令状态为重发状态则触发重发单元
发送单元,用于发送所述当前通讯指令并设置所述当前通讯指令的指令状态为等待状态;
判断单元,用于判断所述当前通讯指令的已发送时长是否超出所述设定时长且是否存在对所述当前通讯指令的应答信息,若所述已发送时长未超出所述设定时长且存在所述应答信息则触发空闲设置单元,若所述已发送时长超出所述设定时长则触发重发设置单元,用于若所述已发送时长未超出所述设定时长且不存在所述应答信息,则触发重发单元;
空闲设置单元,用于设置所述当前通讯指令的指令状态为空闲状态;
重发设置单元,用于设置所述当前通讯指令的指令状态为重发状态;
保持单元,用于保持所述当前通讯指令的指令状态;
重发单元,用于设置所述当前通讯指令的指令状态为空闲状态并触发发送单元。
基于第二方面,可选地,所述通讯指令获取单元用于获取当前通讯指令以及所述当前通讯指令的指令状态时,具体用于:
获取当前工作状态以及所述当前工作状态对应的多条通讯指令,其中所述多条通讯指令按一定顺序排列,将所述多条通讯指令中处于处理过程中的一条通讯指令确定为当前通讯指令,获取所述当前通讯指令的指令状态。
基于第二方面,可选地,工作状态单元,用于设置所述当前通讯指令为已处理通讯指令;判断所述当前工作状态对应的通讯指令是否都为所述已处理通讯指令;若所述当前工作状态对应的通讯指令都为所述已处理通讯指令,则更新所述当前工作状态,并将更新后的当前工作状态所对应的第一条通讯指令确定为当前通讯指令,触发所述通讯指令获取单元确定当前通讯指令以及获取所述当前通讯指令的指令状态的步骤;若所述当前工作状态对应的通讯指令不都为所述已处理通讯指令,则将所述已处理通讯指令的下一条通讯指令确定为当前通讯指令,触发所述通讯指令获取单元获取当前通讯指令以及所述当前通讯指令的指令状态的步骤。
基于第二方面,可选地,所述当前工作状态包括:上电,模块初始化,网络初始化,正常工作。
基于第二方面,可选地,所述重发状态具有重发次数,所述通讯指令处理设备还包括:
重发次数单元,用于所述重发次数加一;判断增加后的重发次数是否大于等于预设值;若增加后的重发次数大于或等于预设值,则将所述当前工作状态对应的第一条通讯指令确定为当前通讯指令。
基于第二方面,可选地,所述应答信息为完整应答信息。
基于第二方面,可选地,所述判断单元用于判断所述当前通讯指令的已发送时长是否超出所述设定时长且是否存在对所述当前通讯指令的应答信息,若所述已发送时长未超出所述设定时长且存在所述应答信息则触发空闲设置单元,若所述已发送时长超出所述设定时长则触发重发设置单元,若所述已发送时长未超出所述设定时长且不存在所述应答信息,则触发重发单元时,具体用于:
判断所述当前通讯指令的已发送时长是否超出所述设定时长;若所述已发送时长超出所述设定时长则触发重发设置单元,若所述已发送时长未超出所述设定时长,则判断是否存在对所述当前通讯指令的应答信息,若存在所述应答信息则触发空闲设置单元,若不存在所述应答信息,则触发重发单元。
本申请实施例第三方面提供了一种通讯指令处理设备:
中央处理器,存储器,输入输出接口,有线或无线网络接口以及电源;
所述存储器为短暂存储存储器或持久存储存储器;
所述中央处理器配置为与所述存储器通信,在所述通讯指令处理设备上执行所述存储器中的指令操作以执行本申请实施例第一方面中任意一项所述的方法。
本申请实施例第四方面提供了一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如本申请实施例第一方面中任意一项所述的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请所提供的方案在通讯指令发送后,无需等待接收应答信息即可进行下一步骤,使终端处理通讯指令的时延降低。
附图说明
图1为本申请实施例通讯指令处理方法所适用的网络构架示意图;
图2为本申请实施例通讯指令处理方法的一个流程示意图;
图3为本申请实施例通讯指令处理方法的另一个流程示意图;
图4为本申请实施例通讯指令处理装置的一个结构示意图;
图5为本申请实施例通讯指令处理装置的另一个结构示意图;
图6为本申请实施例通讯指令处理设备的另一个结构示意图。
具体实施方式
本申请实施例提供了一种通讯指令处理方法,用于终端设备(TerminalEquipment,TE)或数据终端设备(Data Terminal Equipment,DTE)与终端适配器(TerminalAdapter,TA)或数据电路终端设备(Data Circuit Terminal Equipment,DCE)之间,以建立通讯。
通信指令的功能非常全面且有固定格式,在终端设备与终端适配器之间的各个方面均有所应用,具体处理情况可参照图1的网络构架包括:手机101、手机102、服务器111。
其中,手机101和手机102即视为终端设备,值得注意的是终端设备可以是传真机、手机或其他可以处理通信指令的终端设备,一些需要进行数据交流的工程车辆或其他车辆也会安装可以处理通信指令的通讯模块。
服务器111即视为终端适配器,终端适配器用以发送通信指令并根据回复进行相应的响应。
本申请实施例通讯指令处理方法包括:
获取当前通讯指令以及所述当前通讯指令的指令状态,所述指令状态包括:空闲状态、等待状态或重发状态,所述等待状态具有设定时长;
获取当前需发送的通讯指令及该通讯指令的指令状态,指令状态一般包括:空闲状态、等待状态或重发状态,每条通讯指令在一般情况下应当具有单一的的指令状态,并在三个不同指令状态之间变化,其中等待状态具有被设定好的时长信息,对于不同种类的通信指令,所设定的时长不同。
若所述指令状态为空闲状态,则发送所述当前通讯指令并设置所述当前通讯指令的指令状态为等待状态;
若获取到的通讯指令状态为空闲状态,则发送该通讯指令,并将该通讯指令状态由空闲状态设置为等待状态,该过程完成即可视为一条通讯指令已完成了执行过程,终端即可进行下一步的操作。
若所述指令状态为等待状态,则判断所述当前通讯指令的已发送时长是否超出所述设定时长且是否存在对所述当前通讯指令的应答信息;若所述已发送时长未超出所述设定时长且存在所述应答信息,则设置所述当前通讯指令的指令状态为空闲状态;若所述已发送时长超出所述设定时长,则设置所述当前通讯指令的指令状态为重发状态;若所述已发送时长未超出所述设定时长且不存在所述应答信息,则保持所述当前通讯指令的指令状态;
若获取到的通讯指令状态为等待状态则进入判断过程,需判断的有两个问题,第一个问题是,该通讯指令进入等待状态后所经过的时长即已发送时长是否大于该通讯指令等待状态的设定时长,第二个问题是,在发送侧设备能否得到对于该通讯指令从接收侧返回的应答信息。根据判断结果不同,该等待状态的通讯指令可以保持等待状态或变为空闲状态或重发状态。
若所述指令状态为重发状态,则设置所述当前通讯指令的指令状态为空闲状态,返回执行发送所述当前通讯指令并设置所述当前通讯指令的指令状态为等待状态的步骤。
若获取到的通讯指令状态为重发状态,则将该通讯指令的状态变为空闲状态,重新执行发送当前通讯指令,并将该通讯指令的指令状态从空闲状态设置为等待状态。对于未成功接收到回应的通讯指令,可以通过这一步骤重现完成发送,提高通讯指令发送的可靠程度。
本申请所提供的方案在通讯指令发送后,无需等待接收应答信息即可进行下一工作步骤,使终端处理通讯指令的时延降低。
下面结合图1的网络框架,对本申请实施例中的通信指令处理方法进行描述:
请参阅图2,本申请中通讯指令处理方法一个实施例包括:步骤201-204。
值得注意的是本实施例中以AT指令作为通讯指令的一个具体形式进行描述,在具体实施过程中,通讯指令可以是远程终端控制单元(RemoteTerminalUnit,RTU)指令或AT指令等其他类型的串口通讯类型的通讯指令,具体此处不做限定。
AT指令对所传输的数据包大小有定义:即对于通讯指令的发送,除AT两个字符外,最多可以接收1056个字符的长度(包括最后的空字符)。
每个AT命令行中只能包含一条通讯指令;对于由终端设备主动向适配器端报告的响应,也要求一行最多有一个,不允许上报的一行中有多条响应。AT指令以回车作为结尾,响应以回车换行为结尾。
用户可以通过向终端设备发送AT指令来进行呼叫、短信、电话本、数据业务、传真等方面的控制。
AT指令是以AT为首,字符结束的字符串。每个指令执行成功与否都有相应的返回,其他的一些非预期的信息(如有人拨号进来、线路无信号等),模块将有对应的一些信息提示,接收端可做相应的处理。
例如:CDMA modem DTE网络构架下。
发送:AT<CR>
接收:<LF>OK<LF>或<CR>ERROR<LF>
如果AT指令执行成功,“OK”字符串返回;如果AT指令语法错误或AT指令执行失败,“ERROR”字符串返回。
AT指令在实际通讯中采用的是等待应答方式,目前处理AT指令通讯时,在发送完AT指令后需等待得到AT指令的回应,对于未得到回应的情况,需要进入超时处理机制。
例如对于AT+CMGD意为Delete SMS message(删除SIM卡内存的短消息)的AT指令设置2秒超时处理,正常情况下500MS接收到应答的消息,消耗500MS,但是很多情况通讯信号恶劣接收到应答消息所消耗的时间是超过500MS的,需要多次重发机制。这样在2G,4G模块工作的时候特别是刚启动的时候,很多MCU的其他响应是不及时的。
201、获取当前AT指令以及当前AT指令的指令状态。
获取所需发送的AT指令及该AT指令的指令状态,指令状态一般包括:空闲状态、等待状态或重发状态,每条AT指令在一般情况下应当具有单一的的指令状态,并在三个不同指令状态之间变化,其中等待状态具有被设定好的时长信息,对于不同AT指令,所设定的时长不同。
根据当前AT指令的指令状态执行以下步骤:若指令状态为空闲状态则执行步骤202,若指令状态为等待状态则执行步骤203,若指令状态为重发状态则执行步骤204。
202、发送所述当前AT指令并设置所述当前AT指令的指令状态为等待状态。
若获取到的AT指令状态为空闲状态,则发送该AT指令,并将该AT指令状态由空闲状态设置为等待状态,该过程完成即可视为一条AT指令已完成了执行过程,终端即可进行下一步的操作。
203、判断所述当前AT指令的已发送时长是否超出所述设定时长且是否存在对所述当前AT指令的应答信息。
若获取到的AT指令状态为等待状态则进入判断过程,需判断的有两个问题,第一个问题是,该AT指令进入等待状态后所经过的时长即已发送时长是否大于该AT指令等待状态的设定时长,第二个问题是,在发送侧设备能否得到对于该AT指令从接收侧返回的应答信息。
对于这两个问题的结果有不同的处理方式,下面在步骤2031-步骤2033中进行详细描述。
2031、设置所述当前AT指令的指令状态为空闲状态。
对于已发送时长小于该AT指令等待状态的设定时长,且发送侧设备得到了对于该AT指令从接收侧返回的应答信息的情况,即可认定该AT指令的完整发送过程已完成,将该AT指令的指令状态设置为空闲状态,以便于下一次处理。
2032、设置所述当前AT指令的指令状态为重发状态。
对于已发送时长大于该AT指令等待状态的设定时长的情况,无论是否得到了对于该AT指令从接收侧返回的应答信息,豆浆该AT指令的指令状态由等待状态设置为重发状态,已发送时长超过设定时长,即可认定该AT指令没有被正确发送或没有被正确接收,需要再次发送。
2033、保持所述当前AT指令的指令状态。
对于已发送时长小于该AT指令等待状态的设定时长,且发送侧设备无法得到对于该AT指令从接收侧返回的应答信息的情况,发送过程是否有效仍不能确定,保持当前AT指令的等待状态。
204、设置所述当前AT指令的指令状态为空闲状态,发送所述当前AT指令并设置所述当前AT指令的指令状态为等待状态。
若获取到的AT指令状态为重发状态,则将该AT指令的状态变为空闲状态,并重新执行步骤201中所记载的发送当前AT指令,并将该AT指令的指令状态从空闲状态设置为等待状态。对于未成功接收到回应的AT指令,可以通过这一步骤重现完成发送,提高AT指令发送的可靠程度。
通过这一方法发送AT指令可以使得在AT指令发送后,无需等待接收应答信息即可进行下一步骤,使终端处理AT指令的时延降低。
请参阅图3,本申请中通讯指令处理方法另一实施例包括:步骤301-步骤313。
值得注意的是本实施例中以AT指令作为通讯指令的一个具体形式进行描述,在具体实施过程中,通讯指令可以是RTU指令或AT指令等其他类型的串口通讯类型的通讯指令,具体此处不做限定。
301、获取当前工作状态以及所述当前工作状态对应的多条AT指令,将所述多条AT指令中处于处理过程中的一条AT指令确定为当前AT指令。
获取当前的工作状态及工作状态所对应的工作指令,并确定处于处理过程中的AT指令为当前工作指令并获取当前AT指令的工作状态。
当前工作状态可以包括,上电、模块初始化、网络初始化、正常工作。这些工作状态可以用于概括从终端开始启动到与终端适配器建立连接,正常工作整个过程所用到的全部AT指令。值得注意的是,工作状态可以根据可续需求包括任一阶段所需要的AT指令,例如关机过程、重启过程,具体此处不做限定。每个工作状态中包含一定数量按顺序排列的AT指令,有序排列的AT指令可以按顺序逐次执行,使得启动过程的AT指令发送关系更明了。确定当前进程正在执行的AT指令,以便继续进行下一AT指令或工作状态的执行。
根据当前AT指令的指令状态执行以下步骤:若指令状态为空闲状态则执行步骤302,若指令状态为等待状态则执行步骤303,若指令状态为重发状态则执行步骤312。
302、发送所述当前AT指令并设置所述当前AT指令的指令状态为等待状态。
若获取到的当前AT指令状态为空闲状态,则发送该AT指令,并将该AT指令状态由空闲状态设置为等待状态,AT指令发送过程结束。
303、判断所述当前AT指令的已发送时长是否超出所述设定时长。
若获取到的当前AT指令状态为等待状态,则判断该AT指令进入等待状态后所经过的时长即已发送时长是否超出该AT指令等待状态的设定时长,并根据判断结果执行以下步骤:若已发送时长超出该AT指令等待状态的设定时长则执行步骤304,若已发送时长不大于该AT指令等待状态的设定时长则执行步骤305。
304、设置当前AT指令的指令状态为重发状态。
若已发送时长大于该AT指令等待状态的设定时长则本步骤,已发送时长大于设定时长说明在该AT指令的有效响应时间内,并未得到相应的响应,可以认为在发送或者响应过程中出现了某些问题导致这一情况发生。对于这种情况将AT指令的指令状态设置为重发状态,以使得该AT指令在下次接收到发送信号时再次发送,AT指令发送过程结束。
305、是否存在对所述当前AT指令的应答信息。
已发送时长不大于该AT指令等待状态的设定时长则执行本步骤,已发送时长小于或等于该AT指令等待状态的设定时长则判断是否存在完整的对当前AT指令的应答信息,若存在则执行步骤306,若不存在则执行步骤307。
306、设置当前AT指令的指令状态为空闲状态。
若存在完整的对当前AT指令的应答信息,则说明该AT指令已经完成了所需执行的流程,可以设置当前AT指令的指令状态为空闲状态,以便于下一次处理,并执行步骤308。
307、保持所述当前AT指令的指令状态。
若不存在完整的对当前AT指令的应答信息,则该AT指令可能正在处理过程中或并未被成功接收,不能判断AT指令执行的具体状态,则应报保持当前AT指令的空闲状态,对于等待状态的AT指令进行两次判断使得AT指令的执行过程更为清晰,更容易控制,AT指令发送过程结束。
308、设置所述当前AT指令为已处理AT指令。
设置完成发送的当前AT指令为已处理AT指令,具体形式可以为添加已处理标签并执行步骤309。
309、判断所述当前工作状态对应的AT指令是否都为所述已处理AT指令。
判断当前工作状态所对应的多条AT指令是否都是已处理AT指令,即对于工作状态内AT指令的执行情况进行判断,根据判断结果执行步骤310或步骤311,若当前工作状态对应的AT指令都为已处理AT指令则执行步骤310,若当前工作状态对应的AT指令不都为已处理AT指令则执行步骤311。
310、更新所述当前工作状态,并将更新后的当前工作状态所对应的第一条AT指令确定为当前AT指令。
若所述当前工作状态对应的AT指令都为所述已处理AT指令,则更新所述当前工作状态,并将更新后的当前工作状态所对应的第一条AT指令确定为当前AT指令。
当前工作状态对应的AT指令都为已处理AT指令,意味着该工作状态所需处理的AT指令都已被完成,可以进入下一工作状态,设置更新的工作状态内第一台AT指令为当前工作指令可以保证从头进行对应工作状态内AT指令的执行,AT指令发送过程结束。
311、将所述已处理AT指令的下一条AT指令确定为当前AT指令。
若所述当前工作状态对应的AT指令不都为所述已处理AT指令则说明当前工作状态仍有需要处理的AT指令,在AT指令按顺序排列并执行的情况下,未处理的AT指令应在已处理的AT指令之后,所以设置下一条AT指令为当前AT指令,并依次执行,AT指令发送过程结束。
312、设置所述当前AT指令的指令状态为空闲状态,发送所述当前AT指令并设置所述当前AT指令的指令状态为等待状态。
若当前AT指令状态为重发状态,则将该指令的指令状态设置为空闲状态,并重新执行发送过程,即发送所述当前AT指令并设置所述当前AT指令的指令状态为等待状态。
313、重发次数加一;判断增加后的重发次数是否大于等于预设值;若增加后的重发次数大于或等于预设值,则将所述当前工作状态对应的第一条AT指令确定为当前AT指令。
AT指令中具有重发次数属性,进行重新发送后,重发次数加一,记录对该AT指令的重发过程,记录完成后判断增加后的重发次数是否大于等于预设值;若增加后的重发次数大于或等于预设值,则将所述当前工作状态对应的第一条AT指令确定为当前AT指令,AT指令发送过程结束。
例如设置最大重发次数为3次,则在重发次数达到3次时,将当前工作状态对应的第一条AT指令确定为当前AT指令,即重新执行当前工作状态内所有AT指令,这一设计可以使得AT指令的执行更可靠。
请参阅图4,本申请中通讯指令处理装置一个实施例包括:
通讯指令获取单元401,用于获取当前通讯指令以及所述当前通讯指令的指令状态,所述指令状态包括:空闲状态、等待状态或重发状态,所述等待状态具有设定时长,若所述指令状态为空闲状态则触发发送单元403,若所述指令状态为等待状态则触发判断单元402,若所述指令状态为重发状态则触发重发单元404。
判断单元402,用于判断所述当前通讯指令的已发送时长是否超出所述设定时长且是否存在对所述当前通讯指令的应答信息,若所述已发送时长未超出所述设定时长且存在所述应答信息则触发空闲设置单元407,若所述已发送时长超出所述设定时长则触发重发设置单元405,用于若所述已发送时长未超出所述设定时长且不存在所述应答信息,则触发重发单元404。
发送单元403,用于发送所述当前通讯指令并设置所述当前通讯指令的指令状态为等待状态;
重发单元404,用于设置所述当前通讯指令的指令状态为空闲状态并触发发送单元;
重发设置单元405,用于设置所述当前通讯指令的指令状态为重发状态;
保持单元406,用于保持所述当前通讯指令的指令状态;
空闲设置单元407,用于设置所述当前通讯指令的指令状态为空闲状态;
本申请实施例中通讯指令处理装置中各单元所执行的流程如前述实施例,具体此处不再赘述。
请参阅图5,本申请中通讯指令处理装置另一个实施例包括:通讯指令获取单元501、判断单元502、发送单元503、重发单元504、重发次数单元505、重发设置单元506、保持单元507、空闲设置单元508和工作状态单元509。
其中、发送单元503、重发单元504、重发设置单元506、保持单元507和空闲设置单元508与图4对应实施例中所述单元功能相同,此处不在赘述。
其中通讯指令获取单元501用于获取当前工作状态以及所述当前工作状态对应的多条通讯指令,其中所述多条通讯指令按一定顺序排列,将所述多条通讯指令中处于处理过程中的一条通讯指令确定为当前通讯指令,获取所述当前通讯指令的指令状态。
判断单元502用于判断所述当前通讯指令的已发送时长是否超出所述设定时长;若所述已发送时长超出所述设定时长则触发重发设置单元506,若所述已发送时长未超出所述设定时长,则判断是否存在对所述当前通讯指令的应答信息,若存在所述应答信息则触发空闲设置单元508,若不存在所述应答信息,则触发重发单元504。
重发次数单元505被重发单元504触发,用于执行重发次数加一;判断增加后的重发次数是否大于等于预设值;若增加后的重发次数大于或等于预设值,则将所述当前工作状态对应的第一条通讯指令确定为当前通讯指令。
工作状态单元509被空闲设置单元508触发,用于设置所述当前通讯指令为已处理通讯指令;判断所述当前工作状态对应的通讯指令是否都为所述已处理通讯指令;若所述当前工作状态对应的通讯指令都为所述已处理通讯指令,则更新所述当前工作状态,并将更新后的当前工作状态所对应的第一条通讯指令确定为当前通讯指令,触发通讯指令获取单元501确定当前通讯指令以及获取所述当前通讯指令的指令状态的步骤。若所述当前工作状态对应的通讯指令不都为所述已处理通讯指令,则将所述已处理通讯指令的下一条通讯指令确定为当前通讯指令,触发通讯指令获取单元501确定当前通讯指令以及所述当前通讯指令的指令状态的步骤。
图6是本实施例提供的一种通讯指令处理设备结构示意图,该服务器600可以包括一个或一个以上中央处理器(central processing units,CPU)601和存储器605,该存储器605中存储有一个或一个以上的应用程序或数据。
本实施例中,中央处理器601中的具体功能模块划分可以与前述图4图5中所描述的通讯指令获取单元、判断单元、发送单元、重发单元、重发次数单元、重发设置单元、保持单元、空闲设置单元和工作状态单元等单元的功能模块划分方式类似,此处不再赘述。
其中,存储器605可以是易失性存储或持久存储。存储在存储器605的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器601可以设置为与存储器605通信,在服务器600上执行存储器605中的一系列指令操作。
服务器600还可以包括一个或一个以上电源602,一个或一个以上有线或无线网络接口603,一个或一个以上输入输出接口604,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该中央处理器601可以执行前述图4所示实施例中通讯指令处理设备所执行的操作,具体此处不再赘述。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质用于储存为上述通讯指令处理设备所用的计算机软件指令,其包括用于执行为通讯指令处理设备所设计的程序。
该通讯指令处理设备可以如前述图4中所描述的通讯指令处理设备。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (10)
1.一种通讯指令处理方法,其特征在于,包括:
获取当前通讯指令以及所述当前通讯指令的指令状态,所述指令状态包括:空闲状态、等待状态或重发状态,所述等待状态具有设定时长;
若所述指令状态为空闲状态,则发送所述当前通讯指令并设置所述当前通讯指令的指令状态为等待状态;
若所述指令状态为等待状态,则判断所述当前通讯指令的已发送时长是否超出所述设定时长且是否存在对所述当前通讯指令的应答信息;若所述已发送时长未超出所述设定时长且存在所述应答信息,则设置所述当前通讯指令的指令状态为空闲状态;若所述已发送时长超出所述设定时长,则设置所述当前通讯指令的指令状态为重发状态;若所述已发送时长未超出所述设定时长且不存在所述应答信息,则保持所述当前通讯指令的指令状态;
若所述指令状态为重发状态,则设置所述当前通讯指令的指令状态为空闲状态,返回执行发送所述当前通讯指令并设置所述当前通讯指令的指令状态为等待状态的步骤。
2.根据权利要求1所述的通讯指令处理方法,其特征在于,所述获取当前通讯指令以及所述当前通讯指令的指令状态包括:
获取当前工作状态以及所述当前工作状态对应的多条通讯指令,其中所述多条通讯指令按一定顺序排列;
将所述多条通讯指令中处于处理过程中的一条通讯指令确定为当前通讯指令;
获取所述当前通讯指令的指令状态。
3.根据权利要求2所述的通讯指令处理方法,其特征在于,
所述若所述已发送时长未超出所述设定时长且存在所述应答信息,则设置所述指令状态为所述空闲状态之后,还包括:
设置所述当前通讯指令为已处理通讯指令;
判断所述当前工作状态对应的通讯指令是否都为所述已处理通讯指令;
若所述当前工作状态对应的通讯指令都为所述已处理通讯指令,则更新所述当前工作状态,并将更新后的当前工作状态所对应的第一条通讯指令确定为当前通讯指令,返回所述确定当前通讯指令以及获取所述当前通讯指令的指令状态的步骤;
若所述当前工作状态对应的通讯指令不都为所述已处理通讯指令,则将所述已处理通讯指令的下一条通讯指令确定为当前通讯指令,返回所述确定当前通讯指令以及所述当前通讯指令的指令状态的步骤。
4.根据权利要求2或3所述的通讯指令处理方法,其特征在于,所述当前工作状态包括:上电,模块初始化,网络初始化,正常工作。
5.根据权利要求2或3所述的通讯指令处理方法,其特征在于,所述重发状态具有重发次数;若所述指令状态为重发状态,则设置所述指令状态为空闲状态,返回执行发送所述通讯指令之后,还包括:
所述重发次数加一;
判断增加后的重发次数是否大于等于预设值;
若增加后的重发次数大于或等于预设值,则将所述当前工作状态对应的第一条通讯指令确定为当前通讯指令。
6.根据权利要求1至3中所述的任一种通讯指令处理方法,其特征在于,所述应答信息为完整应答信息。
7.根据权利要求1至3中所述的任一种通讯指令处理方法,其特征在于,
所述若所述指令状态为所述等待状态,则判断已发送时长是否超出所述设定时长且是否存在对所述当前通讯指令的应答信息,若所述已发送时长未超出所述设定时长且存在所述应答信息,则设置所述指令状态为所述空闲状态,若所述已发送时长超出所述设定时长,则设置所述指令状态为重发状态,若所述已发送时长未超出所述设定时长且不存在所述应答信息,则保持所述指令状态,包括:
若所述指令状态为所述等待状态,则判断所述当前通讯指令的已发送时长是否超出所述设定时长;
若所述已发送时长超出所述设定时长,则设置所述当前通讯指令的指令状态为重发状态;
若所述已发送时长未超出所述设定时长,则判断是否存在对所述当前通讯指令的应答信息;若存在所述应答信息,则设置所述当前通讯指令的指令状态为空闲状态;若不存在所述应答信息,则保持所述当前通讯指令的指令状态。
8.一种通讯指令处理装置,其特征在于,包括:
通讯指令获取单元,用于获取当前通讯指令以及所述当前通讯指令的指令状态,所述指令状态包括:空闲状态、等待状态或重发状态,所述等待状态具有设定时长,若所述指令状态为空闲状态则触发发送单元,若所述指令状态为等待状态则触发判断单元,若所述指令状态为重发状态则触发重发单元
发送单元,用于发送所述当前通讯指令并设置所述当前通讯指令的指令状态为等待状态;
判断单元,用于判断所述当前通讯指令的已发送时长是否超出所述设定时长且是否存在对所述当前通讯指令的应答信息,若所述已发送时长未超出所述设定时长且存在所述应答信息则触发空闲设置单元,若所述已发送时长超出所述设定时长则触发重发设置单元,用于若所述已发送时长未超出所述设定时长且不存在所述应答信息,则触发重发单元;
空闲设置单元,用于设置所述当前通讯指令的指令状态为空闲状态;
重发设置单元,用于设置所述当前通讯指令的指令状态为重发状态;
保持单元,用于保持所述当前通讯指令的指令状态;
重发单元,用于设置所述当前通讯指令的指令状态为空闲状态并触发发送单元。
9.一种通讯指令处理设备,其特征在于,包括:
中央处理器,存储器,输入输出接口,有线或无线网络接口以及电源;
所述存储器为短暂存储存储器或持久存储存储器;
所述中央处理器配置为与所述存储器通信,在所述通讯指令处理设备上执行所述存储器中的指令操作以执行权利要求1至7中任意一项所述的方法。
10.一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1至7中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911157418.2A CN111064556A (zh) | 2019-11-22 | 2019-11-22 | 一种通讯指令处理方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911157418.2A CN111064556A (zh) | 2019-11-22 | 2019-11-22 | 一种通讯指令处理方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111064556A true CN111064556A (zh) | 2020-04-24 |
Family
ID=70298159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911157418.2A Pending CN111064556A (zh) | 2019-11-22 | 2019-11-22 | 一种通讯指令处理方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111064556A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2867873A1 (fr) * | 2004-03-18 | 2005-09-23 | St Microelectronics Sa | Dispositif et procede de gestion d'un etat d'attente d'un microprocesseur |
CN103559013A (zh) * | 2013-11-04 | 2014-02-05 | 北京旋极信息技术股份有限公司 | 一种电子签名设备及其指令处理方法 |
US8908463B1 (en) * | 2013-07-29 | 2014-12-09 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device and control method thereof |
CN106227051A (zh) * | 2016-08-30 | 2016-12-14 | 海尔优家智能科技(北京)有限公司 | 一种智能家电协调控制方法和装置 |
CN106327826A (zh) * | 2016-08-19 | 2017-01-11 | 深圳迈睿智能科技有限公司 | 一种通过遥控设置无线组网的控制方法及遥控系统 |
CN109921967A (zh) * | 2019-03-08 | 2019-06-21 | 美的智慧家居科技有限公司 | 指令处理方法及系统、网关设备和计算机可读存储介质 |
-
2019
- 2019-11-22 CN CN201911157418.2A patent/CN111064556A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2867873A1 (fr) * | 2004-03-18 | 2005-09-23 | St Microelectronics Sa | Dispositif et procede de gestion d'un etat d'attente d'un microprocesseur |
US8908463B1 (en) * | 2013-07-29 | 2014-12-09 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device and control method thereof |
CN103559013A (zh) * | 2013-11-04 | 2014-02-05 | 北京旋极信息技术股份有限公司 | 一种电子签名设备及其指令处理方法 |
CN106327826A (zh) * | 2016-08-19 | 2017-01-11 | 深圳迈睿智能科技有限公司 | 一种通过遥控设置无线组网的控制方法及遥控系统 |
CN106227051A (zh) * | 2016-08-30 | 2016-12-14 | 海尔优家智能科技(北京)有限公司 | 一种智能家电协调控制方法和装置 |
CN109921967A (zh) * | 2019-03-08 | 2019-06-21 | 美的智慧家居科技有限公司 | 指令处理方法及系统、网关设备和计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3739821A1 (en) | Vehicle diagnostic method, device, apparatus, and system, and connection diagnostic apparatus | |
EP2227066A1 (en) | Message service implementation method and device | |
CN107872396B (zh) | 具有超时控制的通信方法、处理设备、终端设备和服务器 | |
CN103581846B (zh) | 一种用户名片更新方法和系统 | |
CN103677988A (zh) | 用于软件系统的多进程通讯方法及系统 | |
CN101449539B (zh) | 配置连接的方法、无线电信网和移动终端 | |
CN103684837A (zh) | 通信消息的备份处理方法、系统和备份处理服务器 | |
CN111064556A (zh) | 一种通讯指令处理方法及设备 | |
CN110213795A (zh) | 一种双sim卡同时通信的方法、移动终端及存储介质 | |
CN113438749B (zh) | 多公网连接驱动方法、装置、计算机设备和存储介质 | |
CN115038115A (zh) | 数据传输方法、装置、电子设备、存储介质和产品 | |
CN101232630A (zh) | 自动重新发送短消息的短消息发送方法和装置 | |
CN102457824B (zh) | 一种事件处理方法和装置 | |
CN105978853B (zh) | 一种会话调度方法、调度服务器及终端 | |
CN110572440B (zh) | 用于数据传输的方法及装置、家电设备、存储介质 | |
CN109429200B (zh) | 数据通信的方法、装置以及移动设备 | |
CN112637121A (zh) | 数据端口的更新方法、装置、电子设备及可读存储介质 | |
CN111132097A (zh) | 无线模块的驱动方法及装置、无线模块、终端及存储介质 | |
JP4697594B2 (ja) | Pdpコンテキスト制御システム、方法、プログラム及び携帯端末 | |
CN100548002C (zh) | 永久虚电路状态查询系统 | |
CN112769824B (zh) | 一种信息传输状态更新方法、终端、装置及存储介质 | |
CN112130783B (zh) | 文件打印方法和装置 | |
JP4246235B2 (ja) | 電気通信ネットワーク加入者の個人データをバックアップする方法、装置、および関連サーバ | |
CN113490203B (zh) | 设备状态获取方法、电子设备及存储介质 | |
CN101909256A (zh) | 用户信息的查询方法及多媒体消息中心 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200424 |
|
RJ01 | Rejection of invention patent application after publication |