著录项信息
专利名称 | 一种接口自适应匹配的协同系统及其协同方法 |
申请号 | CN201310525279.0 | 申请日期 | 2013-10-29 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2014-01-29 | 公开/公告号 | CN103544122A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F13/10 | IPC分类号 | G;0;6;F;1;3;/;1;0;;;G;0;6;F;1;1;/;2;2查看分类表>
|
申请人 | 华东师范大学 | 申请人地址 | 上海市普陀区中山北路3663号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 华东师范大学 | 当前权利人 | 华东师范大学 |
发明人 | 张逸中;琚小明 |
代理机构 | 北京高沃律师事务所 | 代理人 | 李娜 |
摘要
本发明公开了一种接口自适应匹配的协同系统,包括被测设备;检测模块,其通过接口与被测设备连接,获取被测设备的硬件信息和接口引脚信息;数据库,其存储驱动程序模板;识别模块,其根据硬件信息识别被测设备的类型,根据接口引脚信息绘制被测设备的引脚分配表,并从数据库下载与被测设备的类型匹配的驱动程序模板;工程建立模块,根据硬件信息与引脚分配表对驱动程序模板进行代码重定位得到适用于被测设备的驱动程序,和根据驱动程序生成软件工程。本发明能够自动识别接入嵌入式系统的被测设备并自动写入该被测设备的驱动程序,从而能够利用一种开发工具实现嵌入式系统的开发。本发明还公开了该接口自适应匹配的协同系统的协同方法。
1.一种接口自适应匹配的协同系统,其特征在于,包括:
被测设备;
检测模块,其通过接口与所述被测设备连接,获取所述被测设备的硬件信息和接口引脚信息,所述硬件信息包括设备的ID号,所述接口引脚信息包括当前连接的引脚号;
数据库,其存储驱动程序模板;
识别模块,其根据所述硬件信息识别所述被测设备的类型,即根据该设备ID号在数据库中查找与该ID号相匹配的硬件类型,根据所述接口引脚信息绘制所述被测设备的引脚分配表,并从所述数据库下载与所述被测设备的类型匹配的驱动程序模板;
工程建立模块,将所述硬件信息与所述引脚分配表中相关的信息填入驱动程序模板中,根据所述硬件信息与所述引脚分配表对所述驱动程序模板进行代码重定位得到适用于所述被测设备的驱动程序,和根据所述驱动程序生成软件工程。
2.如权利要求1所述的接口自适应匹配的协同系统,其特征在于,所述被测设备包括:
硬件信息存储模块,所述检测模块通过单线总线协议与所述硬件信息存储模块通信,获取存放在所述硬件信息存储模块中的硬件信息。
3.一种如权利要求1或2中所述的接口自适应匹配的协同系统的协同方法,其特征在于,包括如下步骤:
步骤一:将被测设备与检测模块连接,所述检测模块获取所述被测设备的硬件信息与接口引脚信息,所述硬件信息包括设备的ID号,所述接口引脚信息包括当前连接的引脚号;
步骤二:所述检测模块将所述硬件信息与接口引脚信息发送至识别模块;
步骤三:所述识别模块根据所述硬件信息识别所述被测设备的类型,从所述数据库中下载与所述被测设备的类型匹配的驱动程序模板;
步骤四:根据所述接口引脚信息绘制所述被测设备的引脚分配表;
步骤五:工程建立模块根据所述硬件信息与所述引脚分配表对所述驱动程序模板进行代码重定位,得到适用于所述被测设备的驱动程序;
步骤六:所述工程建立模块根据所述驱动程序生成软件工程。
4.如权利要求3所述的协同方法,其特征在于,所述步骤一所述检测模块获取所述被测设备的硬件信息与接口引脚信息包括如下步骤:
步骤a1:下载检测程序到所述检测模块的芯片内;
步骤a2:所述检测模块通过单线总线协议与硬件信息存储模块建立连接;
步骤a3:所述检测模块通过检测程序获取所述硬件信息存储模块内部的硬件信息与所述接口引脚信息。
5.如权利要求3所述的协同方法,其特征在于,所述步骤五中对所述驱动程序模板进行代码重定位包括如下步骤:将所述硬件信息与所述引脚分配表补充至所述驱动程序模板中。
6.如权利要求3所述的协同方法,其特征在于,所述步骤六生成软件工程后进一步包括:提供与所述软件工程相应的接口。
一种接口自适应匹配的协同系统及其协同方法\n技术领域\n[0001] 本发明涉及嵌入式系统领域,尤其涉及能够自动识别匹配接口的一种接口自适应匹配的协同系统及其协同方法。\n背景技术\n[0002] 在设计嵌入式硬件时,需要识别所连接到嵌入式微处理器上的外接设备模块的IO接口类型及其传输协议,并且需要判断该外接设备模块的接口否正确连接到嵌入式外接设备上的相应端口上。因此在在设计相应的嵌入式软件时,需要在识别外接设备模块的接口的前提下根据该外接设备模块的模块类型向微处理器中写入相应的驱动程序。因此,仅通过一种嵌入式开发工具无法顺利完成嵌入式的硬件及软件部分的开发。\n[0003] 目前,Arduino是一款较灵敏的硬件开发工具,可依据官方提供的Eagle格式PCB和SCH电路图简化Arduino模组,完成独立运作的微处理控制,也可简单地与传感器,各种电子元件连接(例如:红外线、超音波、热敏电阻、光敏电阻、伺服马达等)。但是Arduino无法适应匹配所有的外接设备模块的驱动程序,这在嵌入式开发过程中带来了技术上困难。\n[0004] 为了克服现有技术中无法协同各种外接设备模块的接口类型及其传输协议等缺陷,提出了一种接口自适应匹配的协同系统。\n发明内容\n[0005] 本发明提出了一种接口自适应匹配的协同系统,能够自动识别接入嵌入式系统的被测设备的接口,并能根据接口自动写入该被测设备的驱动程序,从而能够利用一种开发工具实现嵌入式系统的开发。\n[0006] 本发明提出了一种接口自适应匹配的协同系统,包括:被测设备;检测模块,其通过接口与所述被测设备连接,获取所述被测设备的硬件信息和接口引脚信息;数据库,其存储驱动程序模板;识别模块,其根据所述硬件信息识别所述被测设备的类型,根据所述接口引脚信息绘制所述被测设备的引脚分配表,并从所述数据库下载与所述被测设备的类型匹配的驱动程序模板;工程建立模块,根据所述硬件信息与所述引脚分配表对所述驱动程序模板进行代码重定位得到适用于所述被测设备的驱动程序,和根据所述驱动程序生成软件工程。\n[0007] 本发明提出的接口自适应匹配的协同系统,所述被测设备包括:硬件信息存储模块,所述检测模块通过单线总线协议与所述硬件信息存储模块通信,获取存放在所述硬件信息存储模块中的硬件信息。\n[0008] 本发明还提出了一种所述接口自适应匹配的协同系统的协同方法,包括如下步骤:\n[0009] 步骤一:将所述被测设备与所述检测单元连接,所述检测单元获取所述被测设备的硬件信息与接口引脚信息;\n[0010] 步骤二:所述检测模块将所述硬件信息与接口引脚信息发送至所述识别模块;\n[0011] 步骤三:所述识别模块根据所述硬件设备识别所述被测设备的类型,从所述数据库中下载与所述被测设备的类型匹配的驱动程序模板;\n[0012] 步骤四:根据所述接口引脚信息绘制所述被测设备的引脚分配表;\n[0013] 步骤五:工程建立模块根据所述硬件信息与所述引脚分配表对所述驱动程序模板进行代码重定位,得到适用于所述被测设备的驱动程序;\n[0014] 步骤六:所述工程建立模块根据所述驱动程序生成软件工程。\n[0015] 本发明提出的协同方法,所述步骤二将所述硬件信息与接口引脚信息发送至所述识别模块包括如下步骤:\n[0016] 步骤a1:下载检测程序到所述检测模块的芯片内;\n[0017] 步骤a2:所述检测模块通过单线总线协议与所述硬件信息存储模块建立连接;\n[0018] 步骤a3:所述检测模块通过检测程序获取所述硬件信息存储模块内部的硬件信息与所述接口引脚信息。\n[0019] 本发明提出的协同方法,所诉步骤三中对所述驱动程序模板进行代码重定位包括如下步骤:将所述硬件信息与所述引脚分配表补充至所述驱动程序模板中。\n[0020] 本发明提出的接口自适应匹配的协同方法,所述步骤六生成软件工程后进一步包括:提供与所述软件工程相应的接口。\n[0021] 本发明的有益效果包括:可以将不同接口类型的模块连接到MCU/MP上的任意IO端口上,并且这些端口能够识别所连接模块的类型,并且在系统开发中自动生成相应的驱动程序供嵌入式软件工程师使用,并且对IO端口能够进行线路测试,从而对连接模块状态进行检测,不但实现了嵌入式敏捷开发,而且降低了设计难度,提高设计可靠性。\n附图说明\n[0022] 图1是本发明接口自适应匹配的协同系统的结构示意图。\n[0023] 图2是本发明接口自适应匹配的协同方法的流程图。\n具体实施方式\n[0024] 结合以下具体实施例和附图,对本发明作进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发明没有特别限制内容。\n[0025] 如图1所示,本发明的接口自适应匹配的协同系统包括被测设备、数据库、检测模块、识别模块、工程建立模块。其协同方法如图2所示。\n[0026] 被测设备为连接至接口的外接设备,数据库中存储有各种设备相应的驱动程序模板。优选地,用户登陆服务器上传驱动程序模板至驱动程序模板库,或修改驱动程序模板库中的驱动程序模板。\n[0027] 检测模块包括多个输入输出接口(I/O接口),通过输入输出接口与被测设备连接,并获取被测设备的硬件信息。硬件信息包括设备ID号,接口引脚信息包括当前连接的引脚号。检测模块的芯片中加载有检测程序TestBench,TestBench程序运行时遍历检测模块上的每个引脚,通过单线总线协议与连接在检测模块上的被测设备上的硬件信息存储模块(WireAgent)通信,获取存放在硬件存储模块内部的设备ID,从而识别出此被测设备的类型。具体地,硬件信息存储模块为WireAgent,WireAgent是一个简单的状态机,被测设备通过WireAgent端接入到其中芯片的任意引脚上,在被测设备出厂时,会在与它所连接的WireAgent中存放此被测设备的设备ID。例如,当TestBench开始遍历检测模块的每个引脚,与每个引脚进行通信获取与此引脚连接的被测设备的ID号,得到检测模块中引脚P1,P2,P3,P4连接的被测设备ID号均为00001,与引脚P5,P6连接的被测设备ID号均为00002。\n[0028] 识别模块与检测模块及数据库连接,识别模块根据硬件设备识别被测设备的类型,即根据该设备ID号在数据库中与该ID号相匹配的硬件类型。识别模块从数据库中下载与该类型匹配的驱动程序模板。识别模块还根据接口引脚信息绘制被测设备的引脚分配表。工程建立模块与识别模块连接。在建立软件工程之前,工程建立模块对驱动程序模板进行代码重定位,即将硬件信息与引脚分配表中相关的信息填入驱动程序模板中,从而得到适用于该被测设备的驱动程序。\n[0029] 例如,一个作为被测设备的串行外设接口模块(SPI模块),经检测模块的TestBench程序获取得到其设备ID号为00001,该SPI模块用于连接的引脚包括P1,P2,P3,P4。识别模块从检测模块获取该ID号,通过在数据库中进行检索,得到适用于该SPI模块的驱动程序模板存放在SPI_Module.h头文件中,同时得到SPI模块的引脚分配表为:00001-P1,P2,P3,P4。识别模块从数据库中下载的SPI_Module.h模板库中,找到引脚缺省处(例如,SCLK,MOSI,MISO,SS),将P1,P2,P3,P4填写到缺省处,得到的SPI_Module.h头文件是符合该SPI模块的驱动程序。同理,若被测设备为两个或两个以上,识别模块根据获取的ID号与引脚,绘制得到引脚分配表为:\n[0030] 00001 P1,P2,P3,P4\n[0031] 00002 P5,P6:\n[0032] 根据ID号获取相应的驱动程序模板,将引脚分配表中的引脚填入驱动程序模块相应的空缺处,从而得到适用于不同被测设备的驱动程序。\n[0033] 工程建立模块将重定位后的驱动程序库加载到新的软件工程中建立适用于该被测设备的软件工程,此外工程建立模块还提供给用户此驱动程序的API函数接口,方便用户调用调用。\n[0034] 本发明的保护内容不局限于以上实施例。在不背离发明构思的精神和范围下,本领域技术人员能够想到的变化和优点都被包括在本发明中,并且以所附的权利要求书为保护范围。
法律信息
- 2017-09-05
- 2014-03-12
实质审查的生效
IPC(主分类): G06F 13/10
专利申请号: 201310525279.0
申请日: 2013.10.29
- 2014-01-29
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-06-12
|
2013-02-22
| | |
2
| |
2013-04-03
|
2011-09-20
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |