单片机的固件切换方法及装置制造方法及图纸

技术编号:38322860 阅读:17 留言:0更新日期:2023-07-29 09:04
本发明专利技术涉及单片机技术领域,公开了一种单片机的固件切换方法及装置,旨在解决现有在单片机中设置不同固件存在操作复杂、效率低、存储空间浪费以及软件复用度差的问题,方案主要包括:根据业务需求创建相应的行为模块,所述行为模块用于实现相应的函数接口;当单片机启动并进行硬件初始化后,确定所需的行为模块,并将主函数入口处的接口指针指向所需的行为模块;加载所述接口指针,并在加载完成后正常运行代码。本发明专利技术简化了操作,提高了设置不同固件的效率,也提高了软件复用度,避免了存储空间的浪费,适用于多场景使用的单片机。适用于多场景使用的单片机。适用于多场景使用的单片机。

【技术实现步骤摘要】
单片机的固件切换方法及装置


[0001]本专利技术涉及单片机
,具体涉及一种单片机的固件切换方法及装置。

技术介绍

[0002]单片机(Single

Chip Microcomputer)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。
[0003]在单片机系统上,相同的硬件可以通过不同的固件实现不同的行为,以满足不同场合的使用需求。现有技术中,在单片机中设置不同固件的方法主要包括:第一种是由技术人员针对不同使用场景的单片机手动烧写不同的固件。这种方式操作复杂,效率较低,并且需要创建不同的固件,而不同的固件中大部分代码相同,使得软件复用度不高。第二种是通过设置引导区固件和用户区固件,根据不同的使用场景可以在引导区进行固件切换,从而使单片机表现不同的行为。这种方式不便于调试,并且浪费了存储空间,对低端单片机的负担较大,同时由于不同的固件使用相同的软件,因此不同用户区固件的代码大部分均是相同的,导致软件复用度不高,多工程配置复杂。

技术实现思路

[0004]本专利技术旨在解决现有在单片机中设置不同固件存在操作复杂、效率低、存储空间浪费以及软件复用度差的问题,提出一种单片机的固件切换方法及装置。
[0005]本专利技术解决上述技术问题所采用的技术方案是:第一方面,提出一种单片机的固件切换方法,所述方法包括:根据业务需求创建相应的行为模块,所述行为模块用于实现相应的函数接口;当单片机启动并进行硬件初始化后,确定所需的行为模块,并将主函数入口处的接口指针指向所需的行为模块;加载所述接口指针,并在加载完成后正常运行代码。
[0006]进一步地,所述确定所需的行为模块,具体包括:当单片机启动并进行硬件初始化后,确定单片机已挂载硬件的接口,根据单片机已挂载硬件的接口确定所需的函数接口,并根据所需的函数接口确定所需的行为模块。
[0007]进一步地,所述确定所需的行为模块,具体还包括:当单片机启动并进行硬件初始化后,根据用户的选择确定所需的行为模块。
[0008]进一步地,所述用户通过软件修改单片机的控制器的存储芯片参数选择所需的行为模块。
[0009]进一步地,所述单片机的电路板上设有拨码开关,所述用户通过拨码开关选择所需的行为模块。
[0010]第二方面,提出一种单片机的固件切换装置,所述装置包括:创建单元,用于根据业务需求创建相应的行为模块,所述行为模块用于实现相应的函数接口;确定单元,用于当单片机启动并进行硬件初始化后,确定所需的行为模块,并将主函数入口处的接口指针指向所需的行为模块;运行单元,用于加载所述接口指针,并在加载完成后正常运行代码。
[0011]进一步地,所述确定单元,具体用于:当单片机启动并进行硬件初始化后,确定单片机已挂载硬件的接口,根据单片机已挂载硬件的接口确定所需的函数接口,并根据所需的函数接口确定所需的行为模块。
[0012]进一步地,所述确定单元,具体还用于:当单片机启动并进行硬件初始化后,根据用户的选择确定所需的行为模块。
[0013]进一步地,所述用户通过软件修改单片机的控制器的存储芯片参数选择所需的行为模块。
[0014]进一步地,所述单片机的电路板上设有拨码开关,所述用户通过拨码开关选择所需的行为模块。
[0015]本专利技术的有益效果是:本专利技术所述的单片机的固件切换方法及装置,通过创建能够实现相应函数接口的行为模块,并在单片机启动时将接口指针指向所需的行为模块,使得单片机的固件能够根据需求表现出不同的行为,进而实现单片机固件的切换,相较于现有技术而言,无需创建不同的固件,也无需技术人员手动烧写不同的固件,简化了操作,提高了设置不同固件的效率,也提高了软件复用度,并且单片机中也不会存储大量重复的软件代码,避免了存储空间的浪费。本专利技术还可以根据业务需求,通过通信方式或者其他信号输入随时进行接口指针的切换,让单片机的硬件模块实现完全不同的行为,从而提高了硬件的重用性。
附图说明
[0016]图1为本专利技术实施例所述单片机的固件切换方法的流程示意图;图2为本专利技术实施例所述接口指针指向所需的行为模块的示意图;图3为本专利技术实施例所述单片机的固件切换装置的结构示意图。
具体实施方式
[0017]下面将结合附图对本专利技术的实施方式进行详细描述。
[0018]本专利技术旨在使相同硬件的单片机表现出不同的行为,从而满足不同使用场景的需求,并且简化操作,提高效率和软件复用度,同时避免浪费存储空间。其主要的技术方案包括:根据业务需求创建相应的行为模块,所述行为模块用于实现相应的函数接口;当单片机启动并进行硬件初始化后,确定所需的行为模块,并将主函数入口处的接口指针指向所需的行为模块;加载所述接口指针,并在加载完成后正常运行代码。
[0019]可以理解,本专利技术首先通过创建能够实现相应函数接口的行为模块,行为模块包含了能够实现函数接口的所有方法,函数接口是包含了一组函数的数据接口,然后在单片机启动并进行硬件初始化后,将主函数入口处的接口指针指向所需的行为模块,接口指针
是指向虚基类的指针,通过它可以调用COM对象的virtual成员函数,在将接口指针指向所需的行为模块之后,加载接口指针并正常运行代码,此时单片机中的固件程序可以通过接口指针调用对象的实际功能,从而使得单片机根据需求表现相应的行为,实现单片机固件的切换。
[0020]实施例
[0021]请参阅图1,本专利技术实施例所述的单片机的固件切换方法,包括以下步骤:步骤1、根据业务需求创建相应的行为模块,所述行为模块用于实现相应的函数接口。
[0022]具体而言,在实际应用前,可以根据单片机的硬件资源和业务需求,抽象出功能函数接口,然后根据抽象出的各函数接口分别创建对应的行为模块,其中,函数接口是包含了一组函数的数据接口,各行为模块包含了能够实现函数接口的所有方法。
[0023]步骤2、当单片机启动并进行硬件初始化后,确定所需的行为模块,并将主函数入口处的接口指针指向所需的行为模块。
[0024]具体而言,在单片机上电启动后,进行硬件初始化,硬件初始化是指对单片机进行一系列的启动和自检操作,以确保其能够正常工作,主要包括检查硬件设备的连接状态、内存和存储器的容量和可用性、检测和修复硬件故障等。
[0025]在对单片机进行硬件初始化后,先确定所需的行为模块,再将固件程序主函数入口处的接口指针指向所需的行为模块。本实施例中,确定所需的行为模块可以包括:当单片机启动并进行硬件初始化后,确定单片机已挂载硬件的接口,根据单片机已挂载硬件的接口确定所需的函数接口,并根据所需的函数接口确定所需的行为模块。
[0026]在实际应用中,技术人员在单片机启动之前本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.单片机的固件切换方法,其特征在于,所述方法包括:根据业务需求创建相应的行为模块,所述行为模块用于实现相应的函数接口;当单片机启动并进行硬件初始化后,确定所需的行为模块,并将主函数入口处的接口指针指向所需的行为模块;加载所述接口指针,并在加载完成后正常运行代码。2.如权利要求1所述的单片机的固件切换方法,其特征在于,所述确定所需的行为模块,具体包括:当单片机启动并进行硬件初始化后,确定单片机已挂载硬件的接口,根据单片机已挂载硬件的接口确定所需的函数接口,并根据所需的函数接口确定所需的行为模块。3.如权利要求1所述的单片机的固件切换方法,其特征在于,所述确定所需的行为模块,具体还包括:当单片机启动并进行硬件初始化后,根据用户的选择确定所需的行为模块。4.如权利要求3所述的单片机的固件切换方法,其特征在于,所述用户通过软件修改单片机的控制器的存储芯片参数选择所需的行为模块。5.如权利要求3所述的单片机的固件切换方法,其特征在于,所述单片机的电路板上设有拨码开关,所述用户通过拨码开关选择所需的行为模块。6.单片机的固件切...

【专利技术属性】
技术研发人员:李炜兰盛斌张华昌李晓亮李月董德良石恒贺波黄波李兵杨波唐琦林付迁杨玉雪范运乾刘靖椿
申请(专利权)人:中储粮成都储藏研究院有限公司
类型:发明
国别省市:

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

1