CN106204794B - 基于obd检测监控设备的多任务操作***架构 - Google Patents
基于obd检测监控设备的多任务操作***架构 Download PDFInfo
- Publication number
- CN106204794B CN106204794B CN201610500230.3A CN201610500230A CN106204794B CN 106204794 B CN106204794 B CN 106204794B CN 201610500230 A CN201610500230 A CN 201610500230A CN 106204794 B CN106204794 B CN 106204794B
- Authority
- CN
- China
- Prior art keywords
- call
- layers
- gsm
- obd
- function
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/008—Registering or indicating the working of vehicles communicating information to a remotely located station
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0645—Rental transactions; Leasing transactions
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0841—Registering performance data
Landscapes
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开一种基于OBD检测监控设备的多任务操作***架构,该架构由顶层至底层依次分布有APP层、DRIVER层、BSP层和CMSIS层,其中:APP层:为应用功能层,可建立多个任务模块;DRIVER层:包含设备驱动和实时***,DRIVER层可被APP层调用,且DRIVER层可通过回调函数调用APP层;设备驱动为***芯片和外部模块提供驱动服务,且所述外部模块上设有OBD模块;BSP层:为微控制器外设功能驱动层,调用CMSIS层;CMSIS层:为ARM Cortex微控制器软件接口标准层,被BSP层和实时***调用。本发明可以快速实现客户定制的功能开发,有效避免不同产品中的代码移植困难,且该***架构使得产品开发周期大幅缩短,节省产品研发费用。
Description
技术领域
本发明涉及车辆OBD操作***架构技术领域,尤其涉及一种基于OBD检测监控设备的多任务操作***架构。
背景技术
公共自行车租赁从绿色环保出发,迎合当前社会,绿色、节能、减排的大方向和主题,有利于节约成本、保护环境及促进社会经济可持续发展。
然而,目前自行车租赁***市场上的自行车租赁增均为刷卡模式,部分能支持手机但都存在不少问题,如:只支持微信客户端,或者只有简单查询功能。
发明内容
针对上述技术中存在的不足之处,本发明提供一种基于OBD检测监控设备的多任务操作***架构,可以快速通过OBD实现车辆状态的读取,获取车辆问题,且可以快速实现客户定制的功能开发,减少不同产品中的代码移植困难问题。
为了达到上述目的,本发明一种基于OBD检测监控设备的多任务操作***架构,由顶层至底层依次分布有APP层、DRIVER层、BSP层和CMSIS层,其中:
APP层:为应用功能层,可建立多个任务模块;
DRIVER层:包含设备驱动和实时***,DRIVER层可被APP层调用,且DRIVER层可通过回调函数调用APP层;设备驱动为***芯片和外部模块提供驱动服务,且所述外部模块上设有OBD模块;
BSP层:为微控制器外设功能驱动层,调用CMSIS层;
CMSIS层:为ARM Cortex微控制器软件接口标准层,被BSP层和实时***调用;
所述OBD模块的管理操作包括DRIVER层中的OBD驱动、OBD协议、OBD管理和OBD接收数据四个部分,且在APP层中建立OBD任务和OBD数据处理任务,具体步骤如下:
步骤11, OBD协议调用OBD模块数据且配置协议消息;
步骤12,所述OBD协议将协议消息进行编码打包处理后,所述OBD驱动将打包后的协议消息发送出去;
步骤13,所述OBD接收数据处理接收到的协议消息并发送给OBD管理;
步骤14,所述OBD管理对协议消息进行处理,并把任务消息提取出来形成OBD任务和OBD数据处理任务。
其中,所述OBD任务用于调用OBD驱动,配置接收回调函数、查询外部及内部状态、处理参数更新功能,实现OBD的管理;OBD数据处理任务通过查询消息队列,以触发该任务,任务触发后通过调用协议解码、协议处理、协议数据处理函数,实现数据管理功能。
其中,所述外部模块上还设有GSM模块,所述GSM模块的驱动管理操作包括AT命令协议和GSM管理,所述GSM管理包括在APP层建立GSM驱动任务和GSM数据处理任务,具体步骤如下:
步骤21,GSM驱动任务从BSP层中调用串口驱动,且GSM驱动任务配置接收回调函数;
步骤22,GSM驱动任务将串口驱动打包好推送给GSM管理,且形成消息队列;
步骤23,GSM数据处理任务对消息队列进行查询,且调用AT命令协议的AT数据;
步骤24,GSM驱动任务调用AT命令协议的AT数据,配置应答命令序号及超时时间,AT数据发送,GSM模块接收到AT数据后,进行相应的应答,AT命令协议解析后,根据需要置位相应的事件位,GSM驱动任务调用AT命令协议。
其中,所述APP层还上设有GSM驱动管理任务,所述GSM驱动管理任务设有两个部分,且建立两个任务,两个部分为AT命令协议和GSM管理,两个任务为GSM驱动任务和GSM数据处理任务,所述两个部分和两个任务具体如下:
AT命令协议:AT命令是与GSM模块交互的协议,收到AT命令解析后根据需要置位相应的事件位调用相应的回调函数,推送通知给APP层;
GSM管理:定期查询全局标志位,做相应的处理,根据命令反馈判断操作是否成功,管理下辖电源管理、电话管理、SMS管理、GPRS管理、FTP管理、异常管理和升级管理;
GSM驱动任务:调用UART串口驱动,配置接收回调函数,查询外部及内部状态及处理外部事件;
GSM数据处理任务:通过查询消息队列,以触发该任务,该任务触发后通过AT协议解码、协议处理和协议数据处理。
其中,所述GSM驱动管理任务还设有AT命令的实现,具体如下:
GSM驱动任务调用AT命令发送时,配置要求的应答命令序号及超时时间,之后调用AT命令发送函数对AT命令进行打包,然后调用串口驱动发送数据,完成后等待应答事件,应答事件包括SUCCEED、ERROR、CMS ERROR、CMEERROR和OVERTIME;
GSM模块接收到数据后,进行相应的应答,串口接收到数据后,放入到GSM驱动接收的消息队列里,GSM数据处理任务定时检查消息队列,查询到数据后进行AT命令解析,如果是要求的应答数据,则置位SUCCEED时间标志;如果是返回ERROR,则置位相应的错误事件;如果超时没有收到应答数据,则置位OVERTIME事件。
其中,所述GSM驱动管理任务还设有电话功能管理,所述电话功能管理包括来电处理和拨号处理,具体如下:
来电处理:AT命令处理函数解析到来电提示后,配置电话功能全局变量中的来电号码,并改变电话状态为Call in状态;
在Call in状态,电话管理功能判定是否有配置来电通知回调函数,如果没有配置该函数指针,则直接改变状态到Call end状态,进行挂机处理;如果配置了来电通知回调函数,并且通过白名单,并且是未调用过来电通知回调函数,则调用该回调函数通知应用目前有来电信息;
拨号处理:应用配置好电话号码后通过接口函数,配置电话功能全局变量中的去电号码,并改变电话状态为Call ready状态;只有在Call free状态时才能进行拨号,其他状态返回失败;
在Call ready状态,电话管理功能发送拨号命令,成功后改变状态为Call out状态,等待对方接机,对方接机则改变状态为Calling状态,代表正在通话,如果对方挂机则改变状态为Call down状态,电话管理功能做相应处理。
其中,所述GSM驱动管理任务还设有SMS功能管理,所述SMS功能管理包括发送短信和接收短信,具体如下:
发送短信:应用需配置好发送号码、发送内存、发送结果通知回调函数,然后调用SMS发送接口函数,写入SMS内部消息队列;
SMS功能查询消息队列获得待发送的消息后进行编码及SMS发送,在AT命令处理函数解析到发送成功标志后,通过回调函数通知应用,发送结果;
接收短信:应用获得新短信通知后,应调用接口函数把要读取的SMS位置通写入SMS内部消息队列;
SMS功能查询消息队列获得待读取SMS要求后发送读取命令,在AT命令处理函数解析到SMS读取应答后,调用SMS解码函数,并把解码后的数据发送给应用。
其中,所述GSM驱动管理任务还设有GPRS功能管理,所述GPRS功能管理包括开启GPRS、关闭GPRS、发送消息和接收消息,具体如下:
开启GPRS:应用配置IP、PORT、链接模式、socket、链接状态通知回调函数、消息通知回调函数调用开启链接接口函数,把参数写入到GPRS功能管理的消息队列中;
GPRS功能函数查询得带链接消息时,进行相应配置,并且试图链接指定服务器;
GSM模块在链接成功或失败后会有消息提示,AT命令处理函数解析到该信息后,通过链接状态通知回调函数通知应用链接结果,在链接出现异常时也通过调用该函数通知应用链接状态变化;
关闭GPRS:应用通知要关闭的socket号码,GPRS管理功能关闭相应socket的链接,并通过之前配置的链接状态通知回调函数通知应用链接状态变化;
发送消息:在链接开启状态,应用配置要发送的socket、数据长度、数据指针,调用接口函数发送到消息队列;GPRS功能查询到数据后,进行发送;
接收消息:AT命令处理函数接收到服务器下发的GPRS数据后通过调用链接状态通知回调函数把数据推送给应用。
本发明的有益效果是:
与现有技术相比,本发明的基于OBD检测监控设备的多任务操作***架构,通过由顶层至底层依次分布的APP层、DRIVER层、BSP层和CMSIS层,实现车辆监控。客户通过该***架构,可以快速通过OBD模块管理任务实现车辆状态的读取,获取车辆问题。该***架构可以快速实现客户定制的功能开发,有效避免不同产品中的代码移植困难,且该***架构使得产品开发周期大幅缩短,节省产品研发费用。
附图说明
图1为本发明基于OBD检测监控设备的多任务操作***架构的框架示意图;
图2为本发明中DRIVER层中OBD功能方框示意图;
图3为本发明中DRIVER层中GSM模块的工作流程图;
图4为本发明中DRIVER层中GSM驱动管理任务中电话的流程图。
主要元件符号说明如下:
10、APP层 11、DRIVER层
12、BSP层 13、CMSIS层。
具体实施方式
为了更清楚地表述本发明,下面结合附图对本发明作进一步地描述。
参阅图1-2,本发明一种基于OBD检测监控设备的多任务操作***架构,由顶层至底层依次分布有APP层10、DRIVER层11、BSP层12和CMSIS层13,其中:
APP层:为应用功能层,可建立多个任务模块;
DRIVER层:包含设备驱动和实时***,DRIVER层可被APP层调用,且DRIVER层可通过回调函数调用APP层;设备驱动为***芯片和外部模块提供驱动服务,且外部模块上设有OBD模块;
BSP层:为微控制器外设功能驱动层,调用CMSIS层;
CMSIS层:为ARM Cortex微控制器软件接口标准层,被BSP层和实时***调用;
OBD模块的管理操作包括DRIVER层中的OBD驱动、OBD协议、OBD管理和OBD接收数据四个部分,且在APP层中建立OBD任务和OBD数据处理任务,具体步骤如下:
第一步, OBD协议调用OBD模块数据且配置协议消息;
第二步,OBD协议将协议消息进行编码打包处理后,OBD驱动将打包后的协议消息发送出去;
第三步,OBD接收数据处理接收到的协议消息并发送给OBD管理;
第四步,OBD管理对协议消息进行处理,并把任务消息提取出来形成OBD任务和OBD数据处理任务。
相较于现有技术,本发明提供的基于OBD检测监控设备的多任务操作***架构,通过由顶层至底层依次分布的APP层、DRIVER层、BSP层和CMSIS层,实现车辆监控。客户通过该***架构,可以快速通过OBD模块管理任务实现车辆状态的读取,获取车辆问题。该***架构可以快速实现客户定制的功能开发,有效避免不同产品中的代码移植困难,且该***架构使得产品开发周期大幅缩短,节省产品研发费用。
在本实施例中,OBD任务用于调用OBD驱动,配置接收回调函数、查询外部及内部状态、处理参数更新功能,实现OBD的管理;OBD数据处理任务通过查询消息队列,以触发该任务,任务触发后通过调用协议解码、协议处理、协议数据处理函数,实现数据管理功能。OBD控制命令的实现:协议发送函数首先配置协议消息,然后调用协议发送命令(发送前发送命令会将协议消息进行编码打包处理),调用OBD驱动发送函数把打包后的消息发送出去,发送完成后,任务等待相应的应答事件,返回结果。OBD接收数据的处理:外部资源把消息推送给OBD驱动的接收,OBD驱动再次把消息推送给消息接收处理函数,接收处理函数把消息再次封包推送进接收任务消息队列,消息接收管理任务会定时查看消息队里,并把消息提取出来,提出消息后通过协议管理函数,将消息解码并调用相关协议处理函数,在协议处理函数中会把得到的消息内容进行处理,并置位相应的应答事件。
请进一步参阅图3,外部模块上还设有GSM模块,GSM模块的驱动管理操作包括AT命令协议和GSM管理,GSM管理包括在APP层建立GSM驱动任务和GSM数据处理任务,具体步骤如下:
第一步,GSM驱动任务从BSP层中调用串口驱动,且GSM驱动任务配置接收回调函数;
第二步,GSM驱动任务将串口驱动打包好推送给GSM管理,且形成消息队列;
第三步,GSM数据处理任务对消息队列进行查询,且调用AT命令协议的AT数据;
第四步,GSM驱动任务调用AT命令协议的AT数据,配置应答命令序号及超时时间,AT数据发送,GSM模块接收到AT数据后,进行相应的应答,AT命令协议解析后,根据需要置位相应的事件位,GSM驱动任务调用AT命令协议。
在本实施例中,APP层还上设有GSM驱动管理任务,GSM驱动管理任务设有两个部分,且建立两个任务,两个部分为AT命令协议和GSM管理,两个任务为GSM驱动任务和GSM数据处理任务,两个部分和两个任务具体如下:
AT命令协议:AT命令是与GSM模块交互的协议,收到AT命令解析后根据需要置位相应的事件位调用相应的回调函数,推送通知给APP层;
GSM管理:定期查询全局标志位,做相应的处理,根据命令反馈判断操作是否成功,管理下辖电源管理、电话管理、SMS管理、GPRS管理、FTP管理、异常管理和升级管理;
GSM驱动任务:调用UART串口驱动,配置接收回调函数,查询外部及内部状态及处理外部事件;
GSM数据处理任务:通过查询消息队列,以触发该任务,该任务触发后通过AT协议解码、协议处理和协议数据处理。GSM驱动管理任务还设有AT命令的实现,具体如下:GSM驱动任务调用AT命令发送时,配置要求的应答命令序号及超时时间,之后调用AT命令发送函数对AT命令进行打包,然后调用串口驱动发送数据,完成后等待应答事件,应答事件包括SUCCEED、ERROR、CMS ERROR、CMEERROR和OVERTIME;GSM模块接收到数据后,进行相应的应答,串口接收到数据后,放入到GSM驱动接收的消息队列里,GSM数据处理任务定时检查消息队列,查询到数据后进行AT命令解析,如果是要求的应答数据,则置位SUCCEED时间标志;如果是返回ERROR,则置位相应的错误事件;如果超时没有收到应答数据,则置位OVERTIME事件。
请进一步参阅图4,GSM驱动管理任务还设有电话功能管理,电话功能管理包括来电处理和拨号处理,具体如下:
来电处理:AT命令处理函数解析到来电提示后,配置电话功能全局变量中的来电号码,并改变电话状态为Call in状态;
在Call in状态,电话管理功能判定是否有配置来电通知回调函数,如果没有配置该函数指针,则直接改变状态到Call end状态,进行挂机处理;如果配置了来电通知回调函数,并且通过白名单,并且是未调用过来电通知回调函数,则调用该回调函数通知应用目前有来电信息;
拨号处理:应用配置好电话号码后通过接口函数,配置电话功能全局变量中的去电号码,并改变电话状态为Call ready状态;只有在Call free状态时才能进行拨号,其他状态返回失败;
在Call ready状态,电话管理功能发送拨号命令,成功后改变状态为Call out状态,等待对方接机,对方接机则改变状态为Calling状态,代表正在通话,如果对方挂机则改变状态为Call down状态,电话管理功能做相应处理。
在本实施例中国,GSM驱动管理任务还设有SMS功能管理,SMS功能管理包括发送短信和接收短信,具体如下:
发送短信:应用需配置好发送号码、发送内存、发送结果通知回调函数,然后调用SMS发送接口函数,写入SMS内部消息队列;
SMS功能查询消息队列获得待发送的消息后进行编码及SMS发送,在AT命令处理函数解析到发送成功标志后,通过回调函数通知应用,发送结果;
接收短信:应用获得新短信通知后,应调用接口函数把要读取的SMS位置通写入SMS内部消息队列;
SMS功能查询消息队列获得待读取SMS要求后发送读取命令,在AT命令处理函数解析到SMS读取应答后,调用SMS解码函数,并把解码后的数据发送给应用。
在本实施例中,GSM驱动管理任务还设有GPRS功能管理,GPRS功能管理包括开启GPRS、关闭GPRS、发送消息和接收消息,具体如下:
开启GPRS:应用配置IP、PORT、链接模式、socket、链接状态通知回调函数、消息通知回调函数调用开启链接接口函数,把参数写入到GPRS功能管理的消息队列中;
GPRS功能函数查询得带链接消息时,进行相应配置,并且试图链接指定服务器;
GSM模块在链接成功或失败后会有消息提示,AT命令处理函数解析到该信息后,通过链接状态通知回调函数通知应用链接结果,在链接出现异常时也通过调用该函数通知应用链接状态变化;
关闭GPRS:应用通知要关闭的socket号码,GPRS管理功能关闭相应socket的链接,并通过之前配置的链接状态通知回调函数通知应用链接状态变化;
发送消息:在链接开启状态,应用配置要发送的socket、数据长度、数据指针,调用接口函数发送到消息队列;GPRS功能查询到数据后,进行发送;
接收消息:AT命令处理函数接收到服务器下发的GPRS数据后通过调用链接状态通知回调函数把数据推送给应用。
本发明的目的是提供一个:依托车辆监控***管理服务器、云服务器、移动互联网,实现车辆监控。客户通过该***架构,可以快速通过OBD实现车辆状态的读取,获取车辆问题,并通过GPRS\WIFI\蓝牙等通讯手段发送到监控***。该***架构可以快速实现客户定制的功能开发、减少不同产品中的代码移植困难。使产品开发周期大幅缩短,节省产品研发费用。
随着私人汽车数量的增多,大批拥有者不具备车辆问题判断能力,导致国际国内市场对OBD检测监控产品的需求与日俱增,为了迎合消费者,产品种类越来越多,但是没有一个统一的***平台造成人力物力的极大浪费。旧产品程序移植困难,导致新产品软件开发周期长,造成产品研发成本提高。
以上公开的仅为本发明的几个具体实施例,但是本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (8)
1.一种基于OBD检测监控设备的多任务操作***架构,其特征在于,由顶层至底层依次分布有APP层、DRIVER层、BSP层和CMSIS层,其中:
APP层:为应用功能层,可建立多个任务模块;
DRIVER层:包含设备驱动和实时***,DRIVER层可被APP层调用,且DRIVER层可通过回调函数调用APP层;设备驱动为***芯片和外部模块提供驱动服务,且所述外部模块上设有OBD模块;
BSP层:为微控制器外设功能驱动层,调用CMSIS层;
CMSIS层:为ARM Cortex微控制器软件接口标准层,被BSP层和实时***调用;
所述OBD模块的管理操作包括DRIVER层中的OBD驱动、OBD协议、OBD管理和OBD接收数据四个部分,且在APP层中建立OBD任务和OBD数据处理任务,具体步骤如下:
步骤11,OBD协议调用OBD模块数据且配置协议消息;
步骤12,所述OBD协议将协议消息进行编码打包处理后,所述OBD驱动将打包后的协议消息发送出去;
步骤13,所述OBD接收数据处理接收到的协议消息并发送给OBD管理;
步骤14,所述OBD管理对协议消息进行处理,并把任务消息提取出来形成OBD任务和OBD数据处理任务。
2.根据权利要求1所述的基于OBD检测监控设备的多任务操作***架构,其特征在于,所述OBD任务用于调用OBD驱动,配置接收回调函数、查询外部及内部状态、处理参数更新功能,实现OBD的管理;OBD数据处理任务通过查询消息队列,以触发该任务,任务触发后通过调用协议解码、协议处理、协议数据处理函数,实现数据管理功能。
3.根据权利要求1所述的基于OBD检测监控设备的多任务操作***架构,其特征在于,所述外部模块上还设有GSM模块,所述GSM模块的驱动管理操作包括AT命令协议和GSM管理,所述GSM管理包括在APP层建立GSM驱动任务和GSM数据处理任务,具体步骤如下:
步骤21,GSM驱动任务从BSP层中调用串口驱动,且GSM驱动任务配置接收回调函数;
步骤22,GSM驱动任务将串口驱动打包好推送给GSM管理,且形成消息队列;
步骤23,GSM数据处理任务对消息队列进行查询,且调用AT命令协议的AT数据;
步骤24,GSM驱动任务调用AT命令协议的AT数据,配置应答命令序号及超时时间,AT数据发送,GSM模块接收到AT数据后,进行相应的应答,AT命令协议解析后,根据需要置位相应的事件位,GSM驱动任务调用AT命令协议。
4.根据权利要求1所述的基于OBD检测监控设备的多任务操作***架构,其特征在于,所述APP层还上设有GSM驱动管理任务,所述GSM驱动管理任务设有两个部分,且建立两个任务,两个部分为AT命令协议和GSM管理,两个任务为GSM驱动任务和GSM数据处理任务,所述两个部分和两个任务具体如下:
AT命令协议:AT命令是与GSM模块交互的协议,收到AT命令解析后根据需要置位相应的事件位调用相应的回调函数,推送通知给APP层;
GSM管理:定期查询全局标志位,做相应的处理,根据命令反馈判断操作是否成功,管理下辖电源管理、电话管理、SMS管理、GPRS管理、FTP管理、异常管理和升级管理;
GSM驱动任务:调用UART串口驱动,配置接收回调函数,查询外部及内部状态及处理外部事件;
GSM数据处理任务:通过查询消息队列,以触发该任务,该任务触发后通过AT协议解码、协议处理和协议数据处理。
5.根据权利要求4所述的基于OBD检测监控设备的多任务操作***架构,其特征在于,所述GSM驱动管理任务还设有AT命令的实现,具体如下:
GSM驱动任务调用AT命令发送时,配置要求的应答命令序号及超时时间,之后调用AT命令发送函数对AT命令进行打包,然后调用串口驱动发送数据,完成后等待应答事件,应答事件包括SUCCEED、ERROR、CMS ERROR、CMEERROR和OVERTIME;
GSM模块接收到数据后,进行相应的应答,串口接收到数据后,放入到GSM驱动接收的消息队列里,GSM数据处理任务定时检查消息队列,查询到数据后进行AT命令解析,如果是要求的应答数据,则置位SUCCEED时间标志;如果是返回ERROR,则置位相应的错误事件;如果超时没有收到应答数据,则置位OVERTIME事件。
6.根据权利要求5所述的基于OBD检测监控设备的多任务操作***架构,其特征在于,所述GSM驱动管理任务还设有电话功能管理,所述电话功能管理包括来电处理和拨号处理,具体如下:
来电处理:AT命令处理函数解析到来电提示后,配置电话功能全局变量中的来电号码,并改变电话状态为Call in状态;
在Call in状态,电话管理功能判定是否有配置来电通知回调函数,如果没有配置该函数指针,则直接改变状态到Call end状态,进行挂机处理;如果配置了来电通知回调函数,并且通过白名单,并且是未调用过来电通知回调函数,则调用该回调函数通知应用目前有来电信息;
拨号处理:应用配置好电话号码后通过接口函数,配置电话功能全局变量中的去电号码,并改变电话状态为Call ready状态;只有在Call free状态时才能进行拨号,其他状态返回失败;
在Call ready状态,电话管理功能发送拨号命令,成功后改变状态为Call out状态,等待对方接机,对方接机则改变状态为Calling状态,代表正在通话,如果对方挂机则改变状态为Call down状态,电话管理功能做相应处理。
7.根据权利要求6所述的基于OBD检测监控设备的多任务操作***架构,其特征在于,所述GSM驱动管理任务还设有SMS功能管理,所述SMS功能管理包括发送短信和接收短信,具体如下:
发送短信:应用需配置好发送号码、发送内存、发送结果通知回调函数,然后调用SMS发送接口函数,写入SMS内部消息队列;
SMS功能查询消息队列获得待发送的消息后进行编码及SMS发送,在AT命令处理函数解析到发送成功标志后,通过回调函数通知应用,发送结果;
接收短信:应用获得新短信通知后,应调用接口函数把要读取的SMS位置通写入SMS内部消息队列;
SMS功能查询消息队列获得待读取SMS要求后发送读取命令,在AT命令处理函数解析到SMS读取应答后,调用SMS解码函数,并把解码后的数据发送给应用。
8.根据权利要求7所述的基于OBD检测监控设备的多任务操作***架构,其特征在于,所述所述GSM驱动管理任务还设有GPRS功能管理,所述GPRS功能管理包括开启GPRS、关闭GPRS、发送消息和接收消息,具体如下:
开启GPRS:应用配置IP、PORT、链接模式、socket、链接状态通知回调函数、消息通知回调函数调用开启链接接口函数,把参数写入到GPRS功能管理的消息队列中;
GPRS功能函数查询得带链接消息时,进行相应配置,并且试图链接指定服务器;
GSM模块在链接成功或失败后会有消息提示,AT命令处理函数解析到该信息后,通过链接状态通知回调函数通知应用链接结果,在链接出现异常时也通过调用该函数通知应用链接状态变化;
关闭GPRS:应用通知要关闭的socket号码,GPRS管理功能关闭相应socket的链接,并通过之前配置的链接状态通知回调函数通知应用链接状态变化;
发送消息:在链接开启状态,应用配置要发送的socket、数据长度、数据指针,调用接口函数发送到消息队列;GPRS功能查询到数据后,进行发送;
接收消息:AT命令处理函数接收到服务器下发的GPRS数据后通过调用链接状态通知回调函数把数据推送给应用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610500230.3A CN106204794B (zh) | 2016-06-30 | 2016-06-30 | 基于obd检测监控设备的多任务操作***架构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610500230.3A CN106204794B (zh) | 2016-06-30 | 2016-06-30 | 基于obd检测监控设备的多任务操作***架构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106204794A CN106204794A (zh) | 2016-12-07 |
CN106204794B true CN106204794B (zh) | 2018-05-04 |
Family
ID=57463467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610500230.3A Active CN106204794B (zh) | 2016-06-30 | 2016-06-30 | 基于obd检测监控设备的多任务操作***架构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106204794B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101118694A (zh) * | 2007-05-18 | 2008-02-06 | 李克明 | 汽车智能化管理*** |
CN201590900U (zh) * | 2009-11-06 | 2010-09-22 | 深圳市元征软件开发有限公司 | 基于手机平台的汽车诊断*** |
CN101929921A (zh) * | 2009-06-22 | 2010-12-29 | 钟桢 | 基于智能手机的汽车故障检测方法与装置 |
CN103592935A (zh) * | 2013-11-08 | 2014-02-19 | 深圳市道通科技有限公司 | 一种实现汽车诊断的方法、装置和智能终端 |
CN103592933A (zh) * | 2013-11-07 | 2014-02-19 | 深圳市元征科技股份有限公司 | 基于android***的汽车诊断***及诊断方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7007047B2 (en) * | 2002-03-29 | 2006-02-28 | Panasas, Inc. | Internally consistent file system image in distributed object-based data storage |
US8630768B2 (en) * | 2006-05-22 | 2014-01-14 | Inthinc Technology Solutions, Inc. | System and method for monitoring vehicle parameters and driver behavior |
-
2016
- 2016-06-30 CN CN201610500230.3A patent/CN106204794B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101118694A (zh) * | 2007-05-18 | 2008-02-06 | 李克明 | 汽车智能化管理*** |
CN101929921A (zh) * | 2009-06-22 | 2010-12-29 | 钟桢 | 基于智能手机的汽车故障检测方法与装置 |
CN201590900U (zh) * | 2009-11-06 | 2010-09-22 | 深圳市元征软件开发有限公司 | 基于手机平台的汽车诊断*** |
CN103592933A (zh) * | 2013-11-07 | 2014-02-19 | 深圳市元征科技股份有限公司 | 基于android***的汽车诊断***及诊断方法 |
CN103592935A (zh) * | 2013-11-08 | 2014-02-19 | 深圳市道通科技有限公司 | 一种实现汽车诊断的方法、装置和智能终端 |
Also Published As
Publication number | Publication date |
---|---|
CN106204794A (zh) | 2016-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103716781B (zh) | 一种实现移动终端智能卡写卡的方法、装置及*** | |
CN100559403C (zh) | 银行客户短信编号排队方法 | |
CN109547582A (zh) | 一种基于区块链的工业物联网架构及工作方法 | |
CN102185716B (zh) | 一种通信设备通用管理方法及*** | |
CN103902390A (zh) | 基于Android的应用层的进程间通信方法及基础应用通信*** | |
CN102196383A (zh) | 用于货物到站短信提醒的移动终端、***及方法 | |
CN103281797A (zh) | 一种移动终端及其传输业务数据的方法 | |
CN108965048B (zh) | 语音网关的数据采集方法、装置及存储介质、服务器 | |
CN105183452A (zh) | 一种用于配电设备监测基于Spring AOP的远程规约服务中间件 | |
CN110851248A (zh) | 异步任务数据处理方法、装置及计算机可读存储介质 | |
CN108989179A (zh) | 消息处理方法及装置、存储介质 | |
CN107819669A (zh) | 座机未接来电的反馈方法、装置、设备及可读存储介质 | |
CN104320550A (zh) | 一种智能终端呼叫辅助提示界面应答的方法及*** | |
CN104335614A (zh) | 用于促进计算***的消息传递的动态实时定制的机制 | |
CN109685460A (zh) | 一种企业业务管理方法及*** | |
CN114416314B (zh) | 一种基于api网关的服务编排方法 | |
CN102984272B (zh) | 一种远程控制移动终端通信能力的***及其方法 | |
CN106204794B (zh) | 基于obd检测监控设备的多任务操作***架构 | |
CN107404580A (zh) | 一种截取骚扰电话号码和短信的方法、存储介质及设备 | |
CN102638624A (zh) | 一种实现自动转发来电信息的移动终端及其转发方法 | |
CN1787438A (zh) | 电子商务网络***及其智能信息终端 | |
CN101699915A (zh) | 一种主板、实现锁网/锁卡功能的方法及移动终端 | |
CN108809894A (zh) | 一种网络电话处理的方法及终端 | |
CN106651066A (zh) | 数据处理方法及数据处理平台 | |
CN107705384B (zh) | 考勤方法、***、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |