CN111722938A - At指令处理方法、装置、计算机设备和存储介质 - Google Patents

At指令处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN111722938A
CN111722938A CN202010382741.6A CN202010382741A CN111722938A CN 111722938 A CN111722938 A CN 111722938A CN 202010382741 A CN202010382741 A CN 202010382741A CN 111722938 A CN111722938 A CN 111722938A
Authority
CN
China
Prior art keywords
instruction
target
processing
communication module
service program
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
Application number
CN202010382741.6A
Other languages
English (en)
Inventor
杜青勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fibocom Wireless Inc
Original Assignee
Fibocom Wireless Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fibocom Wireless Inc filed Critical Fibocom Wireless Inc
Priority to CN202010382741.6A priority Critical patent/CN111722938A/zh
Publication of CN111722938A publication Critical patent/CN111722938A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请涉及一种AT指令处理方法、装置、计算机设备和存储介质。所述方法包括:通过读取接口从5G通信模块的应用层获取控制指令,控制指令包括第一AT指令,控制指令是由与5G通信模块连接的处理器通过MBIM接口发送至5G通信模块的应用层;解析控制指令,得到第一AT指令;将第一AT指令通过AT客户程序传递至AT指令处理线程;通过AT指令处理线程确定第一AT指令的目标处理方式,按照目标处理方式将第一AT指令发送至目标AT服务程序,以使目标AT服务程序对第一AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT客户程序。采用本方法能够提高AT指令处理效率和降低AT指令处理成本。

Description

AT指令处理方法、装置、计算机设备和存储介质
技术领域
本申请涉及通信技术领域,特别是涉及一种AT指令处理方法、装置、计算机设备和存储介质。
背景技术
随着通信技术的发展,通信模块日益重要。通信模块可以与智能终端连接,以使智能终端通过通信模块实现网络连接功能。其中,网络连接功能是基于AT指令实现的。
在传统的方式中,需要在智能终端的USB设备扩展一个专用的AT接口或者MODEM接口,通过AT接口者MODEM接口传输AT指令和相关数据。在扩展AT接口时,需要从通信模块厂商下载并安装接口驱动,从而导致AT指令的处理效率低和处理成本高。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高AT指令处理效率和降低AT指令处理成本的AT指令处理方法、装置、计算机设备和存储介质。
一种AT指令处理方法,其特征在于,应用于5G通信模块的用户层,所述方法包括:
通过读取接口从5G通信模块的应用层获取控制指令,控制指令包括第一AT指令,控制指令是由与5G通信模块连接的处理器通过MBIM接口发送至5G通信模块的应用层;
解析控制指令,得到第一AT指令;
将第一AT指令通过AT客户程序传递至AT指令处理线程;
通过AT指令处理线程确定第一AT指令的目标处理方式,按照目标处理方式将第一AT指令发送至目标AT服务程序,以使目标AT服务程序对第一AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT客户程序。
在其中一个实施例中,通过读取接口从5G通信模块的应用层获取控制指令之前,AT指令处理方法还包括:创建目标AT服务程序,目标AT服务程序包括第一AT服务程序和第二AT服务程序中的至少一种;目标AT服务程序的创建方法包括以下方法中的至少一种:在基带处理器创建第一AT服务程序;在5G通信模块的用户层创建第二AT服务程序。
在其中一个实施例中,通过读取接口从5G通信模块的应用层获取控制指令之前,AT指令处理方法还包括:在5G通信模块的用户层创建AT客户程序;在5G通信模块的用户层注册传输接口,传输接口用于在AT客户程序和第一AT服务程序之间传输数据。
在其中一个实施例中,第一AT指令包括AT指令标识,通过AT指令处理线程确定第一AT指令的目标处理方式,包括:通过AT指令处理线程获取处理方式对照文件,处理方式对照文件包括多个候选AT指令标识对应的处理方式,处理方式包括第一AT服务程序处理和第二AT服务程序处理中的至少一种;在处理方式对照文件中,查找与AT指令标识一致的候选AT指令标识,将查找到的候选AT指令标识对应的处理方式作为第一AT指令的目标处理方式。
在其中一个实施例中,AT指令处理方法还包括:当目标处理方式为第一AT服务程序处理时,将第一AT指令转换为第一QMI指令,通过传输接口将第一QMI指令发送至基带处理器的第一AT服务程序,以使第一AT服务程序对第一AT指令进行处理,得到目标处理结果;当目标处理方式为第二AT服务程序处理时,将第一AT指令发送至第二AT服务程序,以使第二AT服务程序对第一AT指令进行处理,得到目标处理结果。
在其中一个实施例中,AT指令处理方法还包括:接收第一AT服务程序发送的第二QMI指令;将第二QMI指令转换为第二AT指令;通过写入接口将第二AT指令发送至5G通信模块的应用层。
在其中一个实施例中,AT指令处理方法还包括:当获取到目标信息时,生成通知消息,并发送通知消息至与所述5G通信模块连接的处理器,通知消息携带目标AT指令标识,目标信息包括所述目标处理结果和第二AT指令中的至少一种;接收处理器发送的目标信息获取请求,目标信息获取请求携带目标AT指令标识;将目标AT指令标识对应的目标信息发送至处理器。
一种AT指令处理装置,其特征在于,所述装置包括:
指令获取模块,用于通过读取接口从5G通信模块的应用层获取控制指令,控制指令包括第一AT指令,控制指令是由与5G通信模块连接的处理器通过MBIM接口发送至5G通信模块的应用层;
指令解析模块,用于解析控制指令,得到第一AT指令;
指令传递模块,用于将第一AT指令通过AT客户程序传递至AT指令处理线程;
指令处理模块,用于通过AT指令处理线程确定第一AT指令的目标处理方式,按照目标处理方式将第一AT指令发送至目标AT服务程序,以使目标AT服务程序对第一AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT客户程序。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
通过读取接口从5G通信模块的应用层获取控制指令,控制指令包括第一AT指令,控制指令是由与5G通信模块连接的处理器通过MBIM接口发送至5G通信模块的应用层;
解析控制指令,得到第一AT指令;
将第一AT指令通过AT客户程序传递至AT指令处理线程;
通过AT指令处理线程确定第一AT指令的目标处理方式,按照目标处理方式将第一AT指令发送至目标AT服务程序,以使目标AT服务程序对第一AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT客户程序。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
通过读取接口从5G通信模块的应用层获取控制指令,控制指令包括第一AT指令,控制指令是由与5G通信模块连接的处理器通过MBIM接口发送至5G通信模块的应用层;
解析控制指令,得到第一AT指令;
将第一AT指令通过AT客户程序传递至AT指令处理线程;
通过AT指令处理线程确定第一AT指令的目标处理方式,按照目标处理方式将第一AT指令发送至目标AT服务程序,以使目标AT服务程序对第一AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT客户程序。
上述AT指令处理方法、装置、计算机设备和存储介质,与5G通信模块连接的处理器通过MBIM接口发送控制指令至5G通信模块的应用层,5G通信模块的用户层通过读取接口从5G通信模块的应用层获取控制指令,其中控制指令包括第一AT指令,5G通信模块的用户层解析控制指令,得到第一AT指令,将第一AT指令通过AT客户程序传递至AT指令处理线程;通过AT指令处理线程确定第一AT指令的目标处理方式,按照目标处理方式将第一AT指令发送至目标AT服务程序,以使目标AT服务程序对第一AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT客户程序。这样,5G通信模块的应用层通过原有的MBIM接口接收包括AT指令的控制指令,将控制指令传输至5G通信模块的用户层,并解析出AT指令,5G通信模块内预先创建的AT客户程序和目标AT服务程序就可以对AT指令进行处理,因此无需拓展AT接口,5G模块也可以接收和处理AT指令,从而提高了AT指令的处理效率,降低了AT指令的处理成本。
附图说明
图1为一个实施例中AT指令处理方法的流程示意图;
图2为一个实施例中终端的架构示意图;
图3为另一个实施例中AT指令处理方法的流程示意图;
图4为又一个实施例中AT指令处理方法的流程示意图;
图5为一个实施例中AT指令处理装置的结构框图;
图6为一个实施例中通信设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。
在一个实施例中,终端包括目标处理器和5G通信模块。目标处理器和5G通信模块通过USB(Universal Serial Bus,通用串行总线)物理接口建立连接。目标处理器运行有Windows(微软)操作系统。5G通信模块包括应用处理器和基带处理器。应用处理器运行有APP操作系统,基带处理器(MODEM)运行有MODEM操作系统。APP操作系统包括用户层(用户空间)和应用层(内核空间)。用户层和应用层通过虚拟接口建立连接,虚拟接口按照功能可以分为读取(read)接口和写入(write)接口,用户层通过读取接口读取应用层的数据,用户层通过写入接口向应用层发送数据。驱动程序运行在内核空间,应用程序运行在用户空间。应用层包括USB协议栈,USB协议栈包括UDC(USB Device Controller,USB设备控制器)、Android Gadget Driver(Android小工具驱动程序)、Composite gadget Driver(复合小工具驱动程序)和Function Driver(功能驱动程序)。用户层包括QMI Client(QualcomMessage Interface Client,高通信息接口客户端),QMI Client主要用于发送指令、接收数据和解析数据。MODEM操作系统包括QMI Server(Qualcom Message Interface Server,高通信息接口服务端),QMI Server主要用于处理指令、发送数据,数据包括指令的响应数据和主动下发的数据。QMI Server包括处理不同业务的服务端,例如SMS(Short MessageService,短信业务),USSD(Unstructured Supplementary Service Data,非结构化补充数据业务)等。服务端和客户端一一对应,并且不同的业务对应不同的客户端。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。
在一个实施例中,如图1所示,提供了一种AT指令处理方法,本实施例以该方法应用于5G通信模块的用户层为例进行说明。本实施例中,该方法包括以下步骤:
S102,通过读取接口从5G通信模块的应用层获取控制指令,控制指令包括第一AT指令,控制指令是由与5G通信模块连接的处理器通过MBIM接口发送至5G通信模块的应用层。
其中,控制指令是MBIM(Mobile Broadband Interface Model,移动宽带接口模型)协议可识别的指令。控制指令是将AT指令封装成MBIM协议所支持格式得到的指令。AT指令是指3GPP(3rd Generation Partnership Project,第三代合作伙伴计划)协议规范定义的标准AT指令格式的指令,用于5G通信模块和目标处理器之间通信,例如5G模块信息查询、数据业务、电话业务等。MBIM接口是一种虚拟接口,不需要厂商提供驱动,可以依赖Windows操作系统上自带的驱动工作。
具体地,目标处理器可以通过MBIM接口向5G通信模块的应用层发送控制指令。UDC接收到该控制指令后,提交给上层USB协议栈,上层USB协议栈依次为Android GadgetDriver、Composite gadget Driver和Function Driver。5G通信模块的用户层调用读取接口接收控制指令,从而控制指令从应用层传输到了用户层。
在一个实施例中,AT指令一般由三部分组成,分别为前缀、主体和结束符。其中前缀为字符“AT”,主体包括指令标识和参数值。
S104,解析控制指令,得到第一AT指令。
具体地,5G通信模块的用户层接收到控制指令后,解析控制指令,从控制指令中提取第一AT指令。
S106,将第一AT指令通过AT客户程序传递至AT指令处理线程。
其中,AT客户程序(AT client)是在QMI Client中预先建立的客户端程序,用于专门处理AT指令。AT client可以发送AT指令至AT服务程序(AT server),接收AT server返回的处理结果,接收AT server主动下发的数据。
具体地,5G通信模块的用户层获取到第一AT指令后,将AT指令传递至AT client,AT client将AT指令传递至AT指令处理线程。AT指令处理线程和AT client通过Socket协议进行通信。
S108,通过AT指令处理线程确定第一AT指令的目标处理方式,按照目标处理方式将第一AT指令发送至目标AT服务程序,以使目标AT服务程序对第一AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT客户程序。
其中,AT服务程序(AT server)是预先建立的服务端程序,用于专门处理AT指令和主动下发数据。可以在MODEM侧的QMI Server中建立AT server,也可以在用户层建立ATserver。目标AT server是指处理第一AT指令的AT server。
具体地,AT指令处理线程可以根据AT指令的指令标识确定第一AT指令的目标处理方式。第一AT指令的目标处理方式包括本地处理和异地处理中的至少一种。本地处理是指由用户层的AT server处理,异地处理是指由MODEM侧的AT server处理。在确定第一AT指令的目标处理方式后,AT指令处理线程将第一AT指令发送至目标AT server,由目标ATserver执行第一AT指令,得到第一AT指令的目标处理结果。目标AT server可以将第一AT指令的目标处理结果返回至AT client。
上述AT指令处理方法,与5G通信模块连接的处理器通过MBIM接口发送控制指令至5G通信模块的应用层,5G通信模块的用户层通过读取接口从5G通信模块的应用层获取控制指令,其中控制指令包括第一AT指令,5G通信模块的用户层解析控制指令,得到第一AT指令,将第一AT指令通过AT客户程序传递至AT指令处理线程;通过AT指令处理线程确定第一AT指令的目标处理方式,按照目标处理方式将第一AT指令发送至目标AT服务程序,以使目标AT服务程序对第一AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT客户程序。这样,5G通信模块的应用层通过原有的MBIM接口接收包括AT指令的控制指令,将控制指令传输至5G通信模块的用户层,并解析出AT指令,5G通信模块内预先创建的AT客户程序和目标AT服务程序就可以对AT指令进行处理,因此无需拓展AT接口,5G模块也可以接收和处理AT指令,从而提高了AT指令的处理效率,降低了AT指令的处理成本。
在一个实施例中,通过读取接口从5G通信模块的应用层获取控制指令之前,AT指令处理方法还包括:创建目标AT服务程序,目标AT服务程序包括第一AT服务程序和第二AT服务程序中的至少一种;目标AT服务程序的创建方法包括以下方法中的至少一种:在基带处理器创建第一AT服务程序;在5G通信模块的用户层创建第二AT服务程序。
具体地,为了不拓展专门的AT接口,而是通过MBIM接口进行AT指令的处理,需要预先创建AT server。进一步的,可以在基带处理器创建AT server,也可以在5G通信模块的用户层创建AT server。在基带处理器创建AT server具体可以是在QMI Server中创建ATserver。AT server可以处理AT指令,得到AT指令的处理结果,也可以主动下发数据。
在一个实施例中,通过读取接口从5G通信模块的应用层获取控制指令之前,AT指令处理方法还包括:在5G通信模块的用户层创建AT客户程序;在5G通信模块的用户层注册传输接口,传输接口用于在AT客户程序和第一AT服务程序之间传输数据。
其中,传输接口是一个虚拟接口,用于在5G通信模块的用户层和基带处理器之间传输AT指令的相关数据。
具体地,为了不拓展专门的AT接口,而是通过MBIM接口进行AT指令的处理,需要预先创建AT client。可以在用户层创建AT client,具体可以是在QMI Client中创建ATclient。应用处理器与基带处理器进行通信需要通过虚拟接口,为了传输AT指令的相关数据,可以在用户层注册AT指令的专用传输接口。用户层包括多个虚拟接口,因此可以是在用户层的现有虚拟接口中随机选取一个空闲虚拟接口作为AT指令的专用传输接口,则AT指令的相关数据可以通过该专用传输接口在应用处理器与基带处理器之间传输。
在一个实施例中,第一AT指令包括AT指令标识,通过AT指令处理线程确定第一AT指令的目标处理方式,包括:通过AT指令处理线程获取处理方式对照文件,处理方式对照文件包括多个候选AT指令标识对应的处理方式,处理方式包括第一AT服务程序处理和第二AT服务程序处理中的至少一种;在处理方式对照文件中,查找与AT指令标识一致的候选AT指令标识,将查找到的候选AT指令标识对应的处理方式作为第一AT指令的目标处理方式。
其中,AT指令标识是一种标识,用于唯一标识AT指令的指令类型。处理方式对照文件用于记录各个AT指令标识对应的处理方式,处理方式对照文件可以为表格文件。用户可以预先编辑处理方式对照文件,将编辑好的处理方式对照文件存储至5G模块的用户层。第一AT服务程序处理是指由MODEM侧的AT server处理,第二AT服务程序处理是指由用户层的AT server处理。
例如,可以设置用于查询5G模块的固件版本信息的AT指令的指令标识对应的处理结果为第二AT服务程序处理,因为用户层存储有5G模块的固件版本信息。可以设置用于拨号的AT指令的指令标识对应的处理结果为第一AT服务程序处理,因为拨号需要MODEM的SIM卡(Subscriber Identity Module,用户识别卡)处理。
具体地,在AT指令处理线程获取到第一AT指令后,AT指令处理线程在本地获取处理方式对照文件,在处理方式对照文件中查找第一AT指令对应的AT指令标识对应的处理方式。将查找到的处理方式作为第一AT指令的目标处理方式。
在一个实施例中,可以定时更新处理方式对照文件,保障处理方式对照文件的有效性。
上述实施例中,根据处理方式对照文件可以快速确定第一AT指令的目标处理方式。
在一个实施例中,AT指令处理方法还包括:当目标处理方式为第一AT服务程序处理时,将第一AT指令转换为第一QMI指令,通过传输接口将第一QMI指令发送至基带处理器的第一AT服务程序,以使第一AT服务程序对第一AT指令进行处理,得到目标处理结果;当目标处理方式为第二AT服务程序处理时,将第一AT指令发送至第二AT服务程序,以使第二AT服务程序对第一AT指令进行处理,得到目标处理结果。
其中,QMI指令是指QMI sever可识别的指令。
具体地,当目标处理方式为第一AT服务程序处理,即MODEM侧的AT server处理时,需要将第一AT指令转换为第一QMI指令,进而通过传输接口将转换得到的第一QMI指令发送至QMI sever中的AT server。MODEM侧的AT sever接收到第一QMI指令后,可以执行第一QMI指令,得到第一QMI指令的目标处理结果。AT sever可以通过传输接口向AT client返回目标处理结果。当目标处理方式为第二AT服务程序处理,即用户层的AT server处理时,可以直接将第一AT指令传递至本地的AT server。AT sever接收到第一AT指令后,可以执行第一AT指令,得到第一AT指令的目标处理结果。用户层的AT server可以向AT client返回目标处理结果。
上述实施例中,不同指令类型的AT指令可以发送至不同的AT server处理,可以减轻基带处理器的工作量,从而有效提高AT指令的处理效率。
在一个实施例中,AT指令处理方法还包括:接收第一AT服务程序发送的第二QMI指令;将第二QMI指令转换为第二AT指令;通过写入接口将第二AT指令发送至5G通信模块的应用层。
其中,第二QMI指令包括基带处理器主动上报的信息。
具体地,MODEM侧的AT sever可以实时监测5G模块各种数据的状态,当监测到数据产生明显波动时,AT sever可以主动上报数据的当前状态。可以根据数据的当前状态生成第二QMI指令,将第二QMI指令通过传输接口发送至应用层。应用层可以将第二QMI指令转换为第二AT指令,将转换得到的第二AT指令发送至AT client。然后,可以调用写入接口将第二AT指令从用户层传输到应用层。
例如,当检测到通信信号的信号强度在预设时间内从满格降低到一格时,可以生成第二QMI指令,第二QMI指令用于通知目标处理器通信信号的当前信号强度为一格,以便目标处理器及时更新并展示通信信号的当前信号强度。根据目标处理器所展示的信息,用户可以及时获取通信信号的当前信号强度。其中,预设时间可以根据需要自定义。当检测到WIFI连接断开时,也可以生成第二QMI指令,通知目标处理器WIFI连接已断开。
上述实施例中,MODEM侧的AT sever除了可以处理目标处理器发送的AT指令外,MODEM侧的AT sever还可以主动上报数据的当前状态。MODEM侧的AT sever主动上报数据的当前状态能够保障目标处理器所得数据的准确性。
在一个实施例中,AT指令处理方法还包括:当获取到目标信息时,生成通知消息,并发送通知消息至与5G通信模块连接的处理器,通知消息携带目标AT指令标识,目标信息包括目标处理结果和第二AT指令中的至少一种;接收处理器发送的目标信息获取请求,目标信息获取请求携带目标AT指令标识;将目标AT指令标识对应的目标信息发送至处理器。
其中,通知消息可以用于通知目标处理器应用层已接收到AT指令的目标处理结果,也可以用于通知目标处理器应用层已接收到基带处理器主动上报的信息。目标信息获取请求可以用于请求获取第一AT指令的目标处理结果,也可以同于请求获取第二AT指令。目标AT指令标识包括第一AT指令和第二AT指令的指令标识中的至少一种。
具体地,应用层获取到第一AT指令的目标处理结果后,可以生成通知消息,通知消息携带第一AT指令的指令标识。应用层可以通过中断向目标处理器发送该通知消息。目标处理器接收到通知消息后,可以根据第一AT指令的指令标识生成目标处理结果获取请求,并将目标处理结果获取请求发送至应用层。应用层接收到目标处理结果获取请求后,可以向目标处理器返回第一AT指令的目标处理结果。
应用层获取到第二AT指令后,可以生成通知消息,通知消息携带第二AT指令的指令标识。应用层可以通过中断向目标处理器发送该通知消息。目标处理器接收到通知消息后,可以根据第二AT指令的指令标识生成指令获取请求,并将指令获取请求发送至应用层。应用层接收到指令获取请求后,可以向目标处理器返回第二AT指令。
在一个实施例中,用户层可以将第一AT指令的目标处理结果封装为MBIM指令,再将封装后的目标处理结果发送至应用层。用户层可以将第二AT指令封装为MBIM指令,再将封装后的第二AT指令发送至应用层。应用层可以将封装后的第一AT指令的目标处理结果和第二AT指令存储于应用层的Function Driver。若应用层接收到目标信息获取请求,可以根据目标信息获取请求中的目标AT指令标识从Function Driver获取对应的目标信息,将目标信息发送至目标处理器。
上述实施例中,目标处理器获知应用层已接收到AT指令的处理结果或者基带处理器主动上报的信息后,才向应用层发送获取请求,以获取AT指令的处理结果或者基带处理器主动上报的信息。这样,能够保障目标处理器准确获取到AT指令的处理结果或者基带处理器主动上报的信息。
在一个具体的实施例中,如图2所示,终端包括目标处理器和5G通信模块。目标处理器和5G通信模块通过USB设备连接,USB设备包括MBIM接口。5G通信模块包括应用处理器和基带处理器。应用处理器包括应用层和用户层。应用层包括USB协议栈。USB协议栈包括UDC(USB Device Controller,USB设备控制器)、Android Gadget Driver(Android小工具驱动程序)、Composite gadget Driver(复合小工具驱动程序)和Function Driver(功能驱动程序)。应用层和用户层通过读取接口和写入接口进行通信。用户层包括QMI Client、AT指令处理线程、指令转换线程、指令封装线程和AT server。QMI client包括多种MBIM业务的客户端和AT client。基带处理器包括QMI server,QMI server包括多种MBIM业务的服务端和AT server。基带处理器和应用处理器通过虚拟接口进行通信。
具体地,目标处理器可以通过MBIM接口向应用处理器的应用层发送封装有AT指令的控制指令。应用处理器的用户层可以通过读取接口从应用层读取控制指令,通过指令封装线程解析控制指令,得到AT指令。应用处理器的用户层可以将AT指令传递至AT client,AT client可以将AT指令传递至AT指令处理线程。AT指令处理线程确定AT指令的处理方式。当AT指令的处理方式为本地处理时,将AT指令传递至本地的AT server,由本地的ATserver执行AT指令,得到AT指令的处理结果。当AT指令的处理方式为异地处理时,将AT指令传递至指令转换线程,通过指令转换线程将AT指令转换为QMI指令。然后,通过专用的虚拟接口将QMI指令发送至基带处理器的AT server,由基带处理器的AT server执行AT指令,得到AT指令的处理结果。AT server将AT指令的处理结果返回至AT client。AT client将AT指令的处理结果传递至指令封装线程。通过指令封装线程将AT指令的处理结果封装为MBIM指令。用户层将该MBIM指令发送至应用层,目标处理器可以从应用处理器的应用层获取MBIM指令。
基带处理器的AT server也可以向应用处理器的应用层主动上报QMI指令。在应用层通过指令转换线程将QMI指令转换为AT指令。然后,将AT指令发送至AT client。ATclient将AT指令传递至指令封装线程。通过指令封装线程将AT指令封装为MBIM指令。用户层将该MBIM指令发送至应用层,目标处理器可以从应用处理器的应用层获取MBIM指令。
在一个具体的实施例中,如图3所示,AT指令处理方法包括:
S302,在基带处理器创建AT server。
S304,在5G通信模块的用户层创建AT server,在5G通信模块的用户层创建ATclient。
S306,在5G通信模块的用户层注册传输接口,传输接口用于在5G通信模块的用户层和基带处理器之间传输AT指令的相关数据。
S308,通过读取接口从5G通信模块的应用层获取控制指令,控制指令包括AT指令,控制指令是由目标处理器通过MBIM接口发送至5G通信模块的应用层。
S310,解析控制指令,得到AT指令,AT指令包括AT指令标识。
S312,将AT指令通过AT client传递至AT指令处理线程。
S314,通过AT指令处理线程获取处理方式对照文件。
S316,根据处理方式对照文件确定AT指令的目标处理方式。
S318,当目标处理方式为基带处理器的AT server处理时,将AT指令转换为QMI指令,通过传输接口将QMI指令发送至基带处理器的AT server,以使基带处理器的AT server对AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT client。
S320,当目标处理方式为应用层的AT server处理时,将AT指令发送至应用层的ATserver,以使应用层的AT server对AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT client。
S322,当获取到目标处理结果时,生成携带AT指令标识的通知消息,将通知消息发送至目标处理器。
S324,接收目标处理器发送的目标处理结果获取请求,目标处理结果获取请求携带AT指令标识。
S326,将AT指令标识对应的目标处理结果发送至目标处理器。
在一个具体的实施例中,如图4所示,AT指令处理方法包括:
S402,在基带处理器创建AT server。
S404,在5G通信模块的用户层创建AT server,在5G通信模块的用户层创建ATclient。
S406,在5G通信模块的用户层注册传输接口,传输接口用于在5G通信模块的用户层和基带处理器之间传输AT指令的相关数据。
S408,接收基带处理器的AT server发送的QMI指令。
S410,将QMI指令转换为AT指令,AT指令包括AT指令标识。
S412,通过写入接口将转换得到的AT指令发送至5G通信模块的应用层。
S414,当获取到5G通信模块的用户层发送的AT指令时,生成携带AT指令标识的通知消息,将通知消息发送至目标处理器。
S416,接收目标处理器发送的指令获取请求,指令获取请求携带AT指令标识。
S418,将AT指令标识对应的AT指令发送至目标处理器。
应该理解的是,上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种AT指令处理装置,包括:指令获取模块502、指令解析模块504、指令传递模块506和指令处理模块508,其中:
指令获取模块502,用于通过读取接口从5G通信模块的应用层获取控制指令,控制指令包括第一AT指令,控制指令是由与5G通信模块连接的处理器通过MBIM接口发送至5G通信模块的应用层。
指令解析模块504,用于解析控制指令,得到第一AT指令。
指令传递模块506,用于将第一AT指令通过AT客户程序传递至AT指令处理线程。
指令处理模块508,用于通过AT指令处理线程确定第一AT指令的目标处理方式,按照目标处理方式将第一AT指令发送至目标AT服务程序,以使目标AT服务程序对第一AT指令进行处理,得到目标处理结果,并将目标处理结果返回至AT客户程序。
在一个实施例中,通过读取接口从5G通信模块的应用层获取控制指令之前,AT指令处理装置还包括:
创建模块,用于创建目标AT服务程序。创建模块还用于在基带处理器创建第一AT服务程序。创建模块还用于在5G通信模块的用户层创建第二AT服务程序。
在一个实施例中,创建模块还用于在5G通信模块的用户层创建AT客户程序;在5G通信模块的用户层注册传输接口,传输接口用于在AT客户程序和第一AT服务程序之间传输数据。
在一个实施例中,第一AT指令包括AT指令标识,指令处理模块还用于通过AT指令处理线程获取处理方式对照文件,处理方式对照文件包括多个候选AT指令标识对应的处理方式,处理方式包括第一AT服务程序处理和第二AT服务程序处理中的至少一种;在处理方式对照文件中,查找与AT指令标识一致的候选AT指令标识,将查找到的候选AT指令标识对应的处理方式作为第一AT指令的目标处理方式。
在一个实施例中,指令处理模块还用于当目标处理方式为第一AT服务程序处理时,将第一AT指令转换为第一QMI指令,通过传输接口将第一QMI指令发送至基带处理器的第一AT服务程序,以使第一AT服务程序对第一AT指令进行处理,得到目标处理结果;当目标处理方式为第二AT服务程序处理时,将第一AT指令发送至第二AT服务程序,以使第二AT服务程序对第一AT指令进行处理,得到目标处理结果。
在一个实施例中,AT指令处理装置还包括:
指令接收模块,用于接收第一AT服务程序发送的第二QMI指令。
指令转换模块,用于将第二QMI指令转换为第二AT指令。
指令发送模块,用于通过写入接口将第二AT指令发送至5G通信模块的应用层。
在一个实施例中,AT指令处理装置还包括:
目标信息发送模块,用于当获取到目标信息时,生成通知消息,并发送通知消息至与所述5G通信模块连接的处理器,通知消息携带目标AT指令标识,目标信息包括所述目标处理结果和第二AT指令中的至少一种;接收处理器发送的目标信息获取请求,目标信息获取请求携带目标AT指令标识;将目标AT指令标识对应的目标信息发送至处理器。
关于AT指令处理装置的具体限定可以参见上文中对于AT指令处理方法的限定,在此不再赘述。上述AT指令处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一些实施例中,提供了一种通信设备,该通信设备可以是5G通信模块。其内部结构图可以如图6所示。该通信设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该通信设备的处理器用于提供计算和控制能力。该通信设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该通信设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种定位信息配置方法。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的通信设备的限定,具体的通信设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的通信设备的限定,具体的通信设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一些实施例中,提供了一种通信设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述AT指令处理方法的步骤。
在一些实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述AT指令处理方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种AT指令处理方法,其特征在于,应用于5G通信模块的用户层,所述方法包括:
通过读取接口从5G通信模块的应用层获取控制指令,所述控制指令包括第一AT指令,所述控制指令是由与所述5G通信模块连接的处理器通过MBIM(移动宽带接口模型)接口发送至所述5G通信模块的应用层;
解析所述控制指令,得到所述第一AT指令;
将所述第一AT指令通过AT客户程序传递至AT指令处理线程;
通过所述AT指令处理线程确定所述第一AT指令的目标处理方式,按照所述目标处理方式将所述第一AT指令发送至目标AT服务程序,以使所述目标AT服务程序对所述第一AT指令进行处理,得到目标处理结果,并将所述目标处理结果返回至所述AT客户程序。
2.根据权利要求1所述的方法,其特征在于,所述通过读取接口从5G通信模块的应用层获取控制指令之前,所述方法还包括:
创建所述目标AT服务程序,所述目标AT服务程序包括第一AT服务程序和第二AT服务程序中的至少一种;
所述目标AT服务程序的创建方法包括以下方法中的至少一种:
在基带处理器创建第一AT服务程序;
在5G通信模块的用户层创建第二AT服务程序。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在5G通信模块的用户层创建AT客户程序;
在5G通信模块的用户层注册传输接口,所述传输接口用于在AT客户程序和第一AT服务程序之间传输数据。
4.根据权利要求1所述的方法,其特征在于,所述第一AT指令包括AT指令标识,所述通过所述AT指令处理线程确定第一AT指令的目标处理方式,包括:
通过所述AT指令处理线程获取处理方式对照文件,所述处理方式对照文件包括多个候选AT指令标识对应的处理方式,所述处理方式包括第一AT服务程序处理和第二AT服务程序处理中的至少一种;
在所述处理方式对照文件中,查找与所述AT指令标识一致的候选AT指令标识,将查找到的候选AT指令标识对应的处理方式作为所述第一AT指令的目标处理方式。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当所述目标处理方式为第一AT服务程序处理时,将所述第一AT指令转换为第一QMI指令,通过传输接口将所述第一QMI指令发送至基带处理器的第一AT服务程序,以使所述第一AT服务程序对所述第一AT指令进行处理,得到目标处理结果;
当所述目标处理方式为第二AT服务程序处理时,将所述第一AT指令发送至第二AT服务程序,以使所述第二AT服务程序对所述第一AT指令进行处理,得到目标处理结果。
6.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收所述第一AT服务程序发送的第二QMI指令;
将所述第二QMI指令转换为第二AT指令;
通过写入接口将所述第二AT指令发送至所述5G通信模块的应用层。
7.根据权利要求1或6所述的方法,其特征在于,所述方法还包括:
当获取到目标信息时,生成通知消息,并发送所述通知消息至与所述5G通信模块连接的处理器,所述通知消息携带目标AT指令标识,所述目标信息包括所述目标处理结果和所述第二AT指令中的至少一种;
接收所述处理器发送的目标信息获取请求,所述目标信息获取请求携带目标AT指令标识;
将所述目标AT指令标识对应的目标信息发送至所述处理器。
8.一种AT指令处理装置,其特征在于,所述装置包括:
指令获取模块,用于通过读取接口接收控制指令,所述控制指令包括第一AT指令,所述控制指令是由5G通信模块的应用层发送至5G通信模块的用户层,所述控制指令是由与所述5G通信模块连接的处理器通过MBIM接口发送至所述5G通信模块的应用层;
指令解析模块,用于解析所述控制指令,得到所述第一AT指令;
指令传递模块,用于将所述第一AT指令通过AT客户程序传递至AT指令处理线程;
指令处理模块,用于通过所述AT指令处理线程确定所述第一AT指令的目标处理方式,按照所述目标处理方式将所述第一AT指令发送至目标AT服务程序,以使所述目标AT服务程序对所述第一AT指令进行处理,得到目标处理结果,并将所述目标处理结果返回至所述AT客户程序。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
CN202010382741.6A 2020-05-08 2020-05-08 At指令处理方法、装置、计算机设备和存储介质 Pending CN111722938A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010382741.6A CN111722938A (zh) 2020-05-08 2020-05-08 At指令处理方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010382741.6A CN111722938A (zh) 2020-05-08 2020-05-08 At指令处理方法、装置、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN111722938A true CN111722938A (zh) 2020-09-29

Family

ID=72564301

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010382741.6A Pending CN111722938A (zh) 2020-05-08 2020-05-08 At指令处理方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN111722938A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115361263A (zh) * 2022-09-01 2022-11-18 上海睿赛德电子科技有限公司 一种基于嵌入式系统的at命令处理系统、方法
CN116112911A (zh) * 2023-02-10 2023-05-12 迈普通信技术股份有限公司 At指令处理方法、装置、终端设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090063722A1 (en) * 2007-08-30 2009-03-05 Brother Kogyo Kabushiki Kaisha Device and file transfer system
US20100325335A1 (en) * 2009-06-23 2010-12-23 Young Kim Dual modem device and controlling method thereof
US20120185606A1 (en) * 2010-07-13 2012-07-19 Sierra Wireless, Inc. Wireless network connection system and method
US20120209950A1 (en) * 2011-02-12 2012-08-16 Huawei Device Co., Ltd. Data Card and Method for Internet Access of Data Card
WO2014173268A1 (zh) * 2013-04-27 2014-10-30 华为终端有限公司 基于mbim接口实现通信方法及其设备
CN106060066A (zh) * 2016-06-28 2016-10-26 积成电子股份有限公司 基于嵌入式linux实现终端维护和信息发布的方法
CN110351342A (zh) * 2019-06-20 2019-10-18 平安科技(深圳)有限公司 业务指令处理方法、装置、计算机设备和存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090063722A1 (en) * 2007-08-30 2009-03-05 Brother Kogyo Kabushiki Kaisha Device and file transfer system
US20100325335A1 (en) * 2009-06-23 2010-12-23 Young Kim Dual modem device and controlling method thereof
US20120185606A1 (en) * 2010-07-13 2012-07-19 Sierra Wireless, Inc. Wireless network connection system and method
US20120209950A1 (en) * 2011-02-12 2012-08-16 Huawei Device Co., Ltd. Data Card and Method for Internet Access of Data Card
WO2014173268A1 (zh) * 2013-04-27 2014-10-30 华为终端有限公司 基于mbim接口实现通信方法及其设备
CN106060066A (zh) * 2016-06-28 2016-10-26 积成电子股份有限公司 基于嵌入式linux实现终端维护和信息发布的方法
CN110351342A (zh) * 2019-06-20 2019-10-18 平安科技(深圳)有限公司 业务指令处理方法、装置、计算机设备和存储介质

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
SHIKUI WANG: "IFS avionics bus communication system", 《IEEE》 *
STF 304 ON AT COMMANDS FOR ASSISTIVE MOBILE DEVICE INTERFACES: "C1-070863 "Draft TS 102 511, Human Factors (HF); AT Commands for Assistive Mobile Device Interfaces"", 3GPP TSG_CT\\WG1_MM-CC-SM_EX-CN1, no. 1 *
THREE.ZHANG: "5G终端部分AT命令相关说明", 《HTTPS://BLOG.CSDN.NET/LUOMU0528/ARTICLE/DETAILS/103889677》 *
薛叶兴: "基于嵌入式Linux的简易手机操作系统开发与研究", 《中国优秀硕士学位论文全文数据库》 *
谢众;沈琼霞;: "LTE上行网关中AT指令处理框架设计与研究", 电子设计工程, no. 08 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115361263A (zh) * 2022-09-01 2022-11-18 上海睿赛德电子科技有限公司 一种基于嵌入式系统的at命令处理系统、方法
CN116112911A (zh) * 2023-02-10 2023-05-12 迈普通信技术股份有限公司 At指令处理方法、装置、终端设备和存储介质

Similar Documents

Publication Publication Date Title
CN107766190B (zh) 接口测试方法、装置、计算机设备和存储介质
CN107844421B (zh) 接口测试方法、装置、计算机设备和存储介质
EP2608585B1 (en) Method, device and system for triggering terminal operation
CN111683359B (zh) Ble通信方法、装置、设备及存储介质
KR101847519B1 (ko) 태그 식별 방법 및 장치
CN111683066A (zh) 异构系统集成方法、装置、计算机设备和存储介质
KR20110103398A (ko) 스마트 카드를 이용하여 위치 정보를 획득하는 방법 및 장치
CN112686358A (zh) 数据传输方法及nfc电子标签、终端设备、存储介质
CN111586671B (zh) 嵌入式用户识别卡配置方法、装置、通信设备和存储介质
CN111722938A (zh) At指令处理方法、装置、计算机设备和存储介质
CN107274222B (zh) 广告投放方法及装置
CN107666664B (zh) 一种机卡绑定的方法、装置、设备和存储介质
CN102905000B (zh) 通讯录同步方法及装置
CN114650520A (zh) 基于标准蓝牙广播实现无线网络连接的方法及装置
CN111818613A (zh) 无线网络配置方法、设备及存储介质
CN111338710A (zh) 应用程序控制方法、装置、电子设备及存储介质
CN111510910B (zh) 通信模块频段设置方法、装置、计算机设备和存储介质
CN110719619B (zh) 智能设备的配网方法、装置及相关设备
CN114650522A (zh) 基于低功耗蓝牙广播实现无线网络连接的方法及装置
CN107391711B (zh) 获取歌曲伴奏的方法和装置
CN112188476B (zh) 通信方法、通信装置、移动终端和存储介质
CN108776450A (zh) 扫地机器人服务系统及计算机可读存储介质
CN112491956B (zh) 物联网设备中通讯模组的升级方法、装置和计算机设备
GB2609697A (en) Information processing method based on electronic device interaction, and electronic device
US9332374B2 (en) Communication interface method for SE equipped on mobile terminal and SE using the same

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