单片机动态链接方法.pdf

上传人:li****8 文档编号:10358148 上传时间:2021-06-19 格式:PDF 页数:8 大小:416.27KB
收藏 版权申诉 举报 下载
单片机动态链接方法.pdf_第1页
第1页 / 共8页
单片机动态链接方法.pdf_第2页
第2页 / 共8页
单片机动态链接方法.pdf_第3页
第3页 / 共8页
文档描述:

《单片机动态链接方法.pdf》由会员分享,可在线阅读,更多相关《单片机动态链接方法.pdf(8页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 202010565207.9 (22)申请日 2020.06.19 (71)申请人 中电科航空电子有限公司 地址 610000 四川省成都市高新西区新业 路88号天奥产业园 (72)发明人 王瑞辉陈伟 (74)专利代理机构 成都行之专利代理事务所 (普通合伙) 51220 代理人 林菲菲 (51)Int.Cl. G05B 19/042(2006.01) G06F 8/65(2018.01) (54)发明名称 一种单片机动态链接方法 (57)摘要 本发明公开了一种单片机动态链接方法。

2、, 本 发明的方法基于改进的存储布局结构实现, 所述 改进的存储布局结构为: 将单片机存储区域划分 为一个链接者和至少一个被链接者; 所述链接者 用于实现初始化和相应的业务功能; 所述被链接 者作为被链接程序完成各静态库的功能和符号 操作接口; 所述链接者和被链接者之间进行双向 动态链接。 本发明改变了单片机程序开发的组织 形式, 将各参研方模块进行解耦, 各自编译和烧 写自己负责的模块, 各模块可独立升级。 权利要求书1页 说明书4页 附图2页 CN 111856989 A 2020.10.30 CN 111856989 A 1.一种单片机动态链接方法, 其特征在于, 该方法基于改进的存储布。

3、局结构实现, 所述 改进的存储布局结构为: 将单片机存储区域划分为一个链接者和至少一个被链接者; 所述链接者用于实现初始化和相应的业务功能; 所述被链接者作为被链接程序完成各静态库的功能和符号操作接口; 所述链接者和被链接者之间进行双向动态链接。 2.根据权利要求1所述的一种单片机动态链接方法, 其特征在于, 所述被链接者的存储 格式为: 被链接者在FLASH中, 包括魔数、 代码段、 只读数据段和数据段; 所述代码段包括符号操作接口函数、 内存初始化接口函数和其他函数; 被链接者在内存RAM中, 包括数据段和bss段。 3.根据权利要求2所述的一种单片机动态链接方法, 其特征在于, 所述魔数。

4、放在分配 FLASH的起始地址处用以判断该FLASH分区是否烧写有效的程序。 4.根据权利要求2所述的一种单片机动态链接方法, 其特征在于, 所述符号操作接口函 数作为整个程序的入口地址, 固定从魔数后面的空间开始存放, 且所示符号操作接口函数 供链接者调用, 完成符号的设置和获取操作。 5.根据权利要求2所述的一种单片机动态链接方法, 其特征在于, 所述内存初始化接口 函数供链接者调用, 完成被链接程序的内存环境重建。 6.根据权利要求2-5任一项所述的一种单片机动态链接方法, 其特征在于, 所述动态链 接具体包括: 步骤S1, 通过链接者实现动态链接初始化, 使得链接者和被链接者能够互相调。

5、用对端 的函数或者使用对端的数据; 步骤S2, 通过符号操作接口函数实现链接者和被链接者间的符号交换; 步骤S3, 采用符号映射方式实现函数和数据的直接调用。 7.根据权利要求6所述的一种单片机动态链接方法, 其特征在于, 所述符号映射以指针 或者表的方式完成函数和数据的映射。 8.根据权利要求6所述的一种单片机动态链接方法, 其特征在于, 所述符号操作接口函 数作为被链接者的入口函数, 提供获取和设置被链接者的符号, 完成名称到符号的映射。 9.一种计算机存储介质, 其特征在于, 该计算机存储介质被配置为执行如权利要求1-8 任一项所述的单片机动态链接方法。 权利要求书 1/1 页 2 CN。

6、 111856989 A 2 一种单片机动态链接方法 技术领域 0001 本发明涉及单片机技术领域, 具体涉及一种单片机动态链接方法, 以及用于执行 该动态链接方法的计算机存储介质。 背景技术 0002 不带复杂操作系统的单片机程序一般是将所有程序作为一个整体编译成一个二 进制或者十六进制文件, 内存也同样作为一个整体进行使用。 当单片机里的程序由多方共 同完成, 出于对各方知识产权的保护往往通过静态库的方式提供出来, 由集成方将所有库 和程序进行集成编译出可烧写的文件, 如图1所示。 0003 这样的处理方式使得静态库提供方对代码的修改需要集成方重新编译, 重新发布 程序。 静态库提供方不能。

7、单独升级程序, 不能有独立的构型, 底层程序和应用程序强耦合。 针对像航空这样对构型管理严格的行业, 这样的处理方式存在很多不足, 比如, 不便于参与 程序开发的各方对各自的代码进行修改、 编译和管理等。 发明内容 0004 本发明针对上述的问题, 提出一种单片机动态链接方法, 让参与程序开发的各方 都有独立的构型, 可独立升级, 互不影响, 物理上解耦底层程序和应用程序, 灵活性更强。 0005 本发明通过下述技术方案实现: 0006 一种单片机动态链接方法, 该方法基于改进的存储布局结构实现, 所述改进的存 储布局结构为: 将单片机存储区域划分为一个链接者和至少一个被链接者; 0007 所。

8、述链接者用于实现初始化和相应的业务功能; 0008 所述被链接者作为被链接程序完成各静态库的功能和符号操作接口; 0009 所述链接者和被链接者之间进行双向动态链接。 0010 为了让参与开发的各方程序互相独立, 不能采用静态库的方式进行集成, 本发明 提出将静态库编译成特定格式可执行程序的方式, 提前将单片机存储区域(FLASH和RAM内 存) 资源进行分配, 各方将自己的程序烧写入对应的分区, 实现单片机动态链接。 0011 单片机存储器分为程序存储器和数据存储器, 通常程序存储器采用FLASH存储器, 数据存储器采用RAM存储器, 因此本发明的被链接者的存储格式为: 0012 被链接者在。

9、FLASH中, 包括魔数、 代码段、 只读数据段和数据段; 0013 所述代码段包括符号操作接口函数、 内存初始化接口函数和其他函数; 0014 被链接者在内存RAM中, 包括数据段和bss段。 0015 优选的, 本发明的魔数放在分配FLASH的起始地址处用以判断该FLASH分区是否烧 写有效的程序。 0016 优选的, 本发明的符号操作接口函数作为整个程序的入口地址, 固定从魔数后面 的空间开始存放, 且所示符号操作接口函数供链接者调用, 完成符号的设置和获取操作。 0017 优选的, 本发明的内存初始化接口函数供链接者调用, 完成被链接程序的内存环 说明书 1/4 页 3 CN 1118。

10、56989 A 3 境(包括数据段和bss段)重建。 0018 优选的, 本发明的动态链接方式具体包括: 0019 步骤S1, 通过链接者实现动态链接初始化, 使得链接者和被链接者能够互相调用 对端的函数或者使用对端的数据; 0020 步骤S2, 通过符号操作接口实现链接者和被链接者间的符号交换; 0021 步骤S3, 采用符号映射方式实现函数和数据的直接调用。 0022 优选的, 本发明的符号映射以指针或者表的方式完成函数和数据的映射。 0023 优选的, 本发明的符号操作接口函数作为被链接者的入口函数, 提供获取和设置 被链接者的符号, 完成名称到符号的映射。 0024 另一方面, 本发明。

11、还设置了一种计算机存储介质, 该计算机存储介质被配置为执 行本发明的上述单片机动态链接方法。 0025 本发明具有如下的优点和有益效果: 0026 1、 本发明改变了单片机程序开发的组织形式, 将各参研方模块进行解耦, 各自编 译和烧写自己负责的模块, 各模块可独立升级。 0027 2、 本发明能够实现各程序间的双向符号映射链接。 附图说明 0028 此处所说明的附图用来提供对本发明实施例的进一步理解, 构成本申请的一部 分, 并不构成对本发明实施例的限定。 在附图中: 0029 图1为传统的单片机存储结构示意图。 0030 图2为本发明的改进的单片机存储布局示意图; 0031 图3为本发明的。

12、被链接者存储结构示意图。 0032 图4为本发明的双向动态链接示意图。 0033 图5为本发明的动态链接初始化流程示意图。 具体实施方式 0034 为使本发明的目的、 技术方案和优点更加清楚明白, 下面结合实施例和附图, 对本 发明作进一步的详细说明, 本发明的示意性实施方式及其说明仅用于解释本发明, 并不作 为对本发明的限定。 0035 实施例 0036 本实施例提出了一种单片机动态链接方法。 0037 为了让参与开发的各方程序互相独立, 不能采用静态库的方式进行集成, 我们提 出将静态库编译成特定格式可执行程序的方式, 提前将FLASH和RAM资源进行分配, 各方将 自己的程序烧写入对应的。

13、分区。 0038 如图2所示, 将单片机存储区域划分为一个链接者和至少一个被链接者。 0039 其中, APP1作为链接者, 完成单片机中断向量维护, 最基本的初始化和相应的业务 功能, 通过动态链接的方法启动其余程序, 它是一个正常的单片机程序。 0040 APP2及后面的其它APP作为被链接程序完成传统方式中各静态库的功能和符号操 作接口, 其存储格式如图3所示。 说明书 2/4 页 4 CN 111856989 A 4 0041 被链接者在FLASH中有魔数, 代码段, 只读数据段和数据段, 在内存RAM中有数据段 和bss段。 0042 被链接者程序存储格式的各部分作用为: 0043 。

14、1、 被链接程序的魔数放在分配FLASH的起始地址处用以判断该FLASH分区是否烧 写有效的程序; 0044 2、 符号操作接口函数作为整个程序的入口地址, 固定从魔数后面的空间开始存 放, 该函数供链接者调用, 完成符号的设置和获取操作; 0045 3、 被链接程序必须提供一个内存初始化接口, 该函数供链接者调用, 完成被链接 程序的内存环境重建, 包括数据段和bss段的重建。 0046 基于上述存储布局以及被链接者的存储格式, 链接者和被链接者之间进行双向动 态链接, 本实施例中以两个程序(1个链接者和1个被链接者)之间的交互关系为例进行阐述 具体的动态链接过程包括: 0047 动态链接初。

15、始化接口, 符号操作接口和符号映射。 0048 具体如图4所示。 0049 (1)动态链接初始化接口 0050 链接者需要实现动态链接初始化的功能, 它完成映射关系的建立和被链接者内存 初始化, 其流程图如图5所示。 0051 如图5所示, 动态链接初始化接口流程具体包括以下步骤: 0052 一、 链接者通过获取被链接者的魔数并判断魔数是否有效, 有效则获取内存初始 化接口; 0053 二、 调用内存初始化接口函数; 0054 三、 获取本体调用接口建立本体符号映射; 0055 四、 设置对端调用接口建立对端符号映射。 0056 完成初始化后链接者和被链接者就可以互相调用对端的函数。 0057。

16、 (2)符号操作接口 0058 符号操作接口函数作为被链接者的入口函数, 提供获取和设置被链接者的符号, 完成名称到符号的映射, 该接口必须提供被链接者的内存初始化函数给链接者。 0059 (3)符号映射 0060 符号映射主要是以指针或者表的方式完成函数和数据的映射, 完成映射后函数和 数据可被直接调用。 0061 本实施例还能够采用上述方法实现多个程序之间的动态链接, 即一个程序作为链 接者, 另外的程序作为被链接者, 采用如图4所示的交互方式实现链接者和被链接者之间的 双向动态链接。 0062 本领域内的技术人员应明白, 本申请的实施例可提供为方法、 系统、 或计算机程序 产品。 因此,。

17、 本申请可采用完全硬件实施例、 完全软件实施例、 或结合软件和硬件方面的实 施例的形式。 而且, 本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机 可用存储介质(包括但不限于磁盘存储器、 CD-ROM、 光学存储器等)上实施的计算机程序产 品的形式。 0063 本申请是参照根据本申请实施例的方法、 设备(系统)、 和计算机程序产品的流程 说明书 3/4 页 5 CN 111856989 A 5 图和 /或方框图来描述的。 应理解可由计算机程序指令实现流程图和/或方框图中的每一 流程和 /或方框、 以及流程图和/或方框图中的流程和/或方框的结合。 可提供这些计算机 程序指令到通用计算。

18、机、 专用计算机、 嵌入式处理机或其他可编程数据处理设备的处理器 以产生一个机器, 使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用 于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装 置。 0064 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特 定方式工作的计算机可读存储器中, 使得存储在该计算机可读存储器中的指令产生包括指 令装置的制造品, 该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或 多个方框中指定的功能。 0065 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上, 使得在计 算机或其他可编。

19、程设备上执行一系列操作步骤以产生计算机实现的处理, 从而在计算机或 其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一 个方框或多个方框中指定的功能的步骤。 0066 以上所述的具体实施方式, 对本发明的目的、 技术方案和有益效果进行了进一步 详细说明, 所应理解的是, 以上所述仅为本发明的具体实施方式而已, 并不用于限定本发明 的保护范围, 凡在本发明的精神和原则之内, 所做的任何修改、 等同替换、 改进等, 均应包含 在本发明的保护范围之内。 说明书 4/4 页 6 CN 111856989 A 6 图1 图2 图3 说明书附图 1/2 页 7 CN 111856989 A 7 图4 图5 说明书附图 2/2 页 8 CN 111856989 A 8 。

展开阅读全文
内容关键字: 单片机 动态 链接 方法
关于本文
本文标题:单片机动态链接方法.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/10358148.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1