一种串口使用权控制装置及控制方法制造方法及图纸

技术编号:3875215 阅读:154 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种串口使用权控制装置及控制方法。该控制装置包括一硬件驱动模块、一应用模块接口及一管理机制模块。该硬件驱动模块连接所述的硬件串口。该应用模块接口连接所述的多个串口外设应用模块。该管理机制模块连接硬件驱动模块和应用模块接口。该管理机制模块之内设置一参数设置表,该参数设置表具有一按应用模块优先级高低排列的优先级队列,该管理机制模块用于按优先级队列对各应用模块的使用申请、退出申请和等候申请进行调度。该应用模块接口应答管理机制模块的调度。发明专利技术人巧妙地在串口使用权控制方法中引入管理机制,通过管理机制有序管理各个应用模块之间的使用申请、等候申请、退出申请,以克服背景技术中所存在的不足。

【技术实现步骤摘要】

本专利技术涉及。
技术介绍
嵌入式软件开发过程中,常碰到硬件串口较少(甚至只有1个),而串口外设较 多,需要分时复用的情况。现有的分时复用采用如下二种控制方式。第一种是采用电子开 关做硬件通道切换,例如CN200510030862,在程序中由中断、查询或者MMI触发进入各应用 模块,并在各应用模块中直接调用驱动接口函数、通道切换函数、通讯参数设置函数等。由 于未建立有效的管理机制来降低各应用模块间的耦合,因此这种简单的调用机制使各应用 模块间的耦合性很强,很容易导致其它正在使用的应用模块中断进程并无法自动恢复,只 能通过重载该应用模块的初始化代码来解决;另外,当前正在使用的应用模块名称、应用 模式、通讯参数等信息也很难在各个应用模块中得到同步,优先级控制混乱,维护困难。第 二种是通过软件控制串口数据在多个内核线程间进行切换,其复用机制并非建立在如何管 理硬件驱动模块之上,所以未能解决如何管理各应用模块的各种申请及使用条件,例如 CN200710108666。
技术实现思路
本专利技术提供,其克服了
技术介绍
的串口使用 权控制方法所存在的应用模块间的耦合性强、程序混乱、维护困难的不足。本专利技术解决其技术问题所采用的技术方案之一是一种串口使用权控制装置,它连接至少一个硬件串口和多个串口外设应用模块, 该控制装置,它包括一硬件驱动模块,它连接所述的硬件串口 ;—应用模块接口,它连接所述的多个串口外设应用模块;及一管理机制模块,它连接硬件驱动模块和应用模块接口 ;其中该管理机制模块之内设置一参数设置表,该参数设置表具有一按应用模块优先级 高低排列的优先级队列,该管理机制模块用于按参数设置表的优先级队列对各应用模块的 使用申请、退出申请和等候申请进行调度;该应用模块接口应答管理机制模块的调度。一较佳实施例中,该控制装置,它还包括一设备初始化模块,它连接管理机制模块和硬件驱动模块,用于初始化硬件驱动 模块;一管理机制初始化模块,它连接管理机制模块,用于初始化管理机制模块。一较佳实施例中,该管理机制模块的调度包括发出切换通知和内建状态机对使用 令牌进行适时传递,该使用令牌传递是指将申请的应用模块的状态设置为正在使用的应用模块,并将原来正在使用的应用模块设置为闲置的应用模块,并同时发出状态改变的信 号通知。一较佳实施例中,该应用模块接口之内封装有应用模块驱动、外设通道切换、应用 模式切换及通讯参数切换,该应用模块接口接收到切换通知后进行应用模块驱动、外设通 道切换、应用模式切换和通讯参数切换。本专利技术解决其技术问题所采用的技术方案之一是一种串口使用权控制方法,它 连接至少一个硬件串口和多个串口外设应用模块,该控制方法,它包括步骤1,申请应用模块通过应用模块接口向管理机制模块发出使用申请、退出申请 和等候申请的指令;步骤2,管理机制模块接收指令,并按应用模块优先级高低排列对各应用模块的使 用申请、退出申请和等候申请进行调度;及步骤3,应用模块接口接收管理机制模块的调度,并应答调度。一较佳实施例中,该步骤1,申请应用模块通过应用模块接口向管理机制模块发出 使用申请指令;该步骤2,管理机制模块接收使用申请指令,并按应用模块优先级高低排列判断申 请的应用模块的优先级是否高于串口正在使用的应用模块的优先级,如果是则让正在使用 的应用模块执行退出中断回调函数,并发出切换通知,然后执行步骤3,否则表示申请失败, 退出申请;该步骤3,该应用模块接口接收到切换通知后进行应用模块驱动、外设通道切换、 应用模式切换和通讯参数切换。一较佳实施例中,该控制方法,它还包括步骤4,该管理机制模块的调度包括内建状态机对使用令牌进行适时传递,该使用 令牌传递是指将申请的应用模块的状态设置为正在使用的应用模块,并将原来正在使用 的应用模块设置为闲置应用模块,并同时发出状态改变的信号通知;步骤5,正在使用的应用模块与串口之间进行数据传输。—较佳实施例中,该步骤1,申请应用模块通过应用模块接口向管理机制模块发出 等候申请指令;该步骤2,管理机制模块接收等候申请指令,并判断申请的应用模块是否为正在使 用的应用模块,如果是则表示申请失败,退出申请,否则执行步骤3 ;该步骤3,将申请的应用模块的状态设置为等候状态,并将等候的应用模块列入等 候队列。一较佳实施例中,该步骤1,申请应用模块通过应用模块接口向管理机制模块发出 退出申请指令;该步骤2,管理机制模块接收退出申请指令,并判断申请的应用模块是否为正在使 用的应用模块,如果是则执行步骤21,否则表示申请失败,退出申请;步骤21,管理机制模块判断等候队列是否为空,如果是则执行步骤22,否则执行 步骤23 ;步骤22,将正在使用的应用模块设置为空闲的应用模块,然后执行步骤25 ;步骤23,管理机制模块将等候队列中优先级最高的应用模块设置为正在使用的应用模块,将原来的正在使用的应用模块设置为空闲的应用模块,然后发出切换通知;步骤24,该应用模块接口接收到切换通知后进行应用模块驱动、外设通道切换、应 用模式切换和通讯参数切换;步骤25,发出状态改变通知;步骤26,申请成功。本技术方案与
技术介绍
相比本申请人巧妙地在串口使用权控制方法中引入管理 机制,通过管理机制有序管理各个应用模块之间的使用申请、等候申请、退出申请,以克服
技术介绍
中所存在的不足,并具有如下优点1、从有效降低应用模块间的耦合性;2、简化 开发与维护流程。附图说明下面结合附图和实施例对本专利技术进一步说明。图1是本专利技术一较佳实施例的控制装置的方框示意图。图2是本专利技术的一较佳实施例的控制方法的使用申请的流程图。图3是本专利技术的一较佳实施例的控制方法的等候申请的流程图。图4是本专利技术的一较佳实施例的控制方法的退出申请的流程图。具体实施例方式请查阅图1,一种串口使用权控制装置,它连接至少一个硬件串口和多个串口外设 应用模块(每个应用模块之内都设置有一中断函数),该控制装置,它包括一硬件驱动模 块、一应用模块接口、一管理机制模块、一设备初始化模块和一管理机制初始化模块。该硬 件驱动模块,它连接所述的硬件串口,例如,它提供IO控制接口、远程IO扩展接口(包含 如:I2C扩展远程IO等)、通道译码等;该应用模块接口,它连接所述的多个串口外设应用模块;该管理机 制模块,它连接硬件驱动模块和应用模块接口 ;该设备初始化模块,它连接管理机制模块和 硬件驱动模块,用于初始化硬件驱动模块,用于提供必要的设备初始化操作(比如需要使 用I2C扩展远程IO时必须对I2C芯片的寄存器进行配置);该管理机制初始化模块,它连 接管理机制模块,用于初始化管理机制模块。该管理机制模块之内设置一参数设置表,该参数设置表具有一按应用模块优先级 高低排列的优先级队列,该管理机制模块用于按参数设置表的优先级队列对各应用模块的 使用申请、退出申请和等候申请进行调度。该管理机制模块的调度包括发出切换通知和内 建状态机对使用令牌进行适时传递,该使用令牌传递是指将申请的应用模块的状态设置 为正在使用的应用模块,并将原来正在使用的应用模块设置为闲置的应用模块,并同时发 出状态改变的信号通知。该应用模块接口应答管理机制模块的调度。该应用模块接口之内封装有应用模块 驱动、外设通道切换、应用模式切换及通讯参数切换。其中应用模本文档来自技高网
...

【技术保护点】
一种串口使用权控制装置,它连接至少一个硬件串口和多个串口外设应用模块,其特征是:该控制装置,它包括:一硬件驱动模块,它连接所述的硬件串口;一应用模块接口,它连接所述的多个串口外设应用模块;及一管理机制模块,它连接硬件驱动模块和应用模块接口;其中:该管理机制模块之内设置一参数设置表,该参数设置表具有一按应用模块优先级高低排列的优先级队列,该管理机制模块用于按参数设置表的优先级队列对各应用模块的使用申请、退出申请和等候申请进行调度;该应用模块接口应答管理机制模块的调度。

【技术特征摘要】

【专利技术属性】
技术研发人员:洪添长
申请(专利权)人:厦门敏讯信息技术股份有限公司
类型:发明
国别省市:92[中国|厦门]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1