[发明专利]一种在单片机中实现GSM模块控制的系统及方法有效
申请号: | 201710020080.0 | 申请日: | 2017-01-11 |
公开(公告)号: | CN106658688B | 公开(公告)日: | 2020-01-10 |
发明(设计)人: | 颜昊霖;牟荣增;王宏飞 | 申请(专利权)人: | 中科院微电子研究所昆山分所 |
主分类号: | H04W52/02 | 分类号: | H04W52/02;G06F9/48 |
代理公司: | 11619 北京辰权知识产权代理有限公司 | 代理人: | 佟林松 |
地址: | 215347 江苏省苏州市昆*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种在单片机中实现GSM模块控制的系统,包括GSM任务调度层、任务处理与撤销层、任务执行层、功能封装层、底层驱动层、以及全局变量层,其中,所述GSM任务调度层、所述任务处理与撤销层、所述任务执行层、所述功能封装层和所述底层驱动层依次连接,并均与所述全局变量层连接。本发明通过五层划分加一套全局变量层的软件架构,将GSM的任务划分成GSM模块的功能序列,每次调用任务执行函数,执行一个功能封装函数,该功能封装函数通过异步控制,对于短时间内有回复的AT命令,通过同步方式检测其回复,可以较迅速地做出响应,而对于回复时间较长的AT命令,通过异步方式检测其回复,减少了回复的等待时间,降低了系统功耗。 | ||
搜索关键词: | 一种 单片机 实现 gsm 模块 控制 系统 方法 | ||
【主权项】:
1.一种在单片机中实现GSM模块控制的方法,其特征在于,所述方法包括:/n步骤S1:检测是否接收到模块启用命令,如果未接收到,则返回到其余业务逻辑,继续等待,如果接收到,则判断要执行的任务是否是GSM任务,如果不是,则关闭GSM模块,如果是,则进入步骤S2;/n步骤S2:执行GSM任务调度;/n步骤S3:GSM任务调度结束后,返回其余业务逻辑,继续等待新的命令,其中步骤S2中GSM任务调度的执行方法包括:/n步骤S201:由GSM任务调度层判断任务是否在进行中,如果任务正在进行中,则进入任务执行处理环节,如果任务不在进行中,则从任务队列中取出一条任务,并进入任务执行处理环节;/n步骤S202:在任务执行处理环节,判断模块是否出错,如果没有出错,则表示执行成功,退出当前任务;如果出错,则将错误计数器中的数值加1,并进入步骤S203;/n步骤S203:判断错误计数器的数值是否超过预先设定的阈值,如果没有超过,则对GSM状态机进行校正,并退出当前任务;如果超过阈值,则执行任务撤销操作S204;/n步骤S204:执行模块检测,如果检测不通过,则停用该模块,并退出当前任务;如果检测通过,则清空该错误计数器的值,并退出当前任务,其中步骤201、步骤202中所述任务执行处理环节包括:/n步骤S201-1:根据异步等待标志位,判断是否正在等待异步回复,如果不是,则进入步骤S201-2,如果是,则进入步骤S201-3;/n步骤S201-2:判断当前正在执行哪项任务,根据任务编号调用任务执行函数,如果任务执行函数出错,则设置GSM状态变量中的模块错误位,并退出任务执行处理环节;如果任务执行函数没有出错,则在执行完毕后退出任务执行处理环节;/n步骤S201-3:检测是否接收到异步回复,如果异步回复超时或失败,则设置GSM状态变量中的模块错误位,并退出任务执行处理环节;如果没有检测到异步回复超时或失败,则继续进行异步回复成功检测,如果该异步回复成功,则重置所述异步等待标志位,并退出任务执行处理环节;如果仍然没有检测到异步回复成功,则直接退出任务执行处理环节。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科院微电子研究所昆山分所,未经中科院微电子研究所昆山分所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710020080.0/,转载请声明来源钻瓜专利网。
- 上一篇:一种机房防雷接地系统
- 下一篇:一种机房降阻接地组件