【技术实现步骤摘要】
一种程序模块的初始化函数加载方法、装置和存储介质
[0001]本申请涉及单片机嵌入式软件开发领域,特别是涉及一种程序模块的初始化函数加载方法、装置和存储介质。
技术介绍
[0002]随着IT技术的发展,产品应用需求也不断的再提高。电子产品需要处理的事情也越发复杂,一个项目中可能有不同优先级的多个任务;也可能会根据产品定位的不同删减部分功能和任务。
[0003]有单片机程序开发中需要通过main函数入口手动逐条添加需要初始化的硬件资源、第三方组件初始化函数以及创建系统任务函数等;开发者每增加一个新的功能,因为无法判断后续其他应用对该模块的依赖情况,所以一般在main函数集中对所有模块完成初始化是一种比较通用的方法;需要开发者区分软硬件初始化先后顺序,防止造成程序发生不可预知的结果。
[0004]现有技术需要开发者把各个功能模块的初始化函数,按照一定的顺序添加到main函数入口;每次增加或删除一个模块,需要在main函数入口新增或删除这个模块的初始化函数,程序难以做到真正模块独立。具体的,开发者人工在main函数 ...
【技术保护点】
【技术特征摘要】
1.一种程序模块的初始化函数加载方法,其特征在于,所述方法包括:确定若干个初始化函数间的依赖关系;其中,所述依赖关系包括任意两个所述初始化函数间的启动顺序关系;根据所述依赖关系设定若干个所述初始化函数的优先级;预设编译器根据若干个所述初始化函数的优先级构建初始化函数列表;根据所述初始化函数列表依次加载若干个所述初始化函数。2.根据权利要求1所述的程序模块的初始化函数加载方法,其特征在于,所述优先级包括第一优先级,所述依赖关系包括第一依赖关系;所述确定若干个初始化函数间的依赖关系包括:确定若干个所述初始化函数的类型;根据所述类型确定若干个所述初始化函数间的第一依赖关系;其中,所述第一依赖关系包括任意两个不同类型的所述初始化函数间的启动顺序关系;所述根据所述依赖关系设定若干个所述初始化函数的优先级包括:根据所述第一依赖关系设定所述初始化函数的第一优先级。3.根据权利要求2所述的程序模块的初始化函数加载方法,其特征在于,所述优先级还包括第二优先级,所述依赖关系还包括第二依赖关系;所述确定若干个初始化函数间的依赖关系还包括:确定若干个所述初始化函数的等级;根据所述等级确定若干个所述初始化函数间的第二依赖关系;其中,所述第二依赖关系包括任意两个不同等级的所述初始化函数间的启动顺序关系;所述根据所述依赖关系设定若干个所述初始化函数的优先级还包括:根据所述第二依赖关系设定所述初始化函数的第二优先级。4.根据权利要求2所述的程序模块的初始化函数加载方法,其特征在于,所述初始化函数列表包括多个依次排序的第一数据段,同一所述第一数据段用于存储具有相同第一优先级的所述初始化函数。5.根据权利要求3所述的程序模块的初始化函数加载方法,其特征在于,所述初始化函数列表包括...
【专利技术属性】
技术研发人员:冯光荣,范海鹏,赖琦,
申请(专利权)人:浙江大华技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。