CN116165926A - 一种家电产品 - Google Patents
一种家电产品 Download PDFInfo
- Publication number
- CN116165926A CN116165926A CN202211564950.8A CN202211564950A CN116165926A CN 116165926 A CN116165926 A CN 116165926A CN 202211564950 A CN202211564950 A CN 202211564950A CN 116165926 A CN116165926 A CN 116165926A
- Authority
- CN
- China
- Prior art keywords
- layer
- mcu
- component
- interface
- initialization
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24215—Scada supervisory control and data acquisition
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例公开了一种家电产品,涉及家电技术领域,用于解决普通微控制器部件驱动方式和驱动参数不一致的问题。该家电产品安装有嵌入式系统,嵌入式系统自上而下依次包括:调度层,功能逻辑层,部件层,以及微控制器MCU层;调度层,用于确定部件驱动任务的执行时间;在到达部件驱动任务的执行时间时,调用功能逻辑层执行部件驱动任务;功能逻辑层,用于对部件驱动任务进行解析,确定控制指令;向部件层下发控制指令;部件层,用于根据控制指令,调用MCU层的目标服务接口;MCU层,用于在目标服务接口被调用的情形下,控制MCU芯片和/或MCU芯片所连接的控制部件执行目标服务接口相关的功能。
Description
技术领域
本申请涉及家电技术领域,尤其涉及一种家电产品。
背景技术
目前家电技术领域中,大多采用比较简单的嵌入式系统,这种系统的软件开发中不包含操作系统,可直接调用硬件驱动实现所需功能,应用软件与硬件驱动的耦合度高。对于功能比较复杂的嵌入式系统,通常包含操作系统,应用软件对操作系统有很大的依赖性。
但是,当前家电产品中微控制器(Microcontroller Unit,MCU)的驱动方式和驱动参数不一致,控制软件设计又对MCU的驱动软件分层不彻底,逻辑解耦不深,造成修改代码工作量大,产品开发效率低下的问题。
发明内容
本申请提供一种家电产品,用于解决普通微控制器部件驱动方式和驱动参数不一致的问题。
为了达到上述目的,本申请采用如下技术方案。
本申请实施例提供一种家电产品,该家电产品中安装有嵌入式系统,嵌入式系统自上而下依次包括:调度层,功能逻辑层,部件层,以及微控制器MCU层;调度层,用于确定部件驱动任务的执行时间;在到达部件驱动任务的执行时间时,调用功能逻辑层执行部件驱动任务;功能逻辑层,用于对部件驱动任务进行解析,确定控制指令;向部件层下发控制指令;部件层,用于根据控制指令,调用MCU层的目标服务接口;MCU层,用于在目标服务接口被调用的情形下,控制MCU芯片和/或MCU芯片所连接的控制部件执行目标服务接口相关的功能。
本申请实施例提供的技术方案至少带来以下有益效果:本方案通过在家电产品中安装嵌入式系统,根据调度层确定的部件驱动任务执行时间,调用功能逻辑层执行部件驱动任务,此时部件层通过控制指令,调用MCU层的目标服务接口,在目标服务接口被调用的情形下,控制MCU芯片执行目标服务接口相关的功能。从而实现家电软件中与MCU和控制部件有关的底层驱动程序与实际物理部件分离,并将部件的驱动程序由底层的MCU层触发完成,深封装了部件驱动,保证了上层代码的独立性。使控制器在更换MCU层和控制部件时,代码修改任务减小,提供高了开发效率。
在一些实施例中,MCU层包括第一头文件,以及与第一服务接口对应的第一源文件;其中,第一头文件适用于不同型号的MCU芯片,第一头文件包括各个服务接口的名称;第一服务接口对应的第一源文件包括各个服务接口的实现代码;MCU层,具体用于在目标服务接口被调用的情形下,根据目标服务接口的名称,从第一源文件中查找到目标服务接口的实现代码;根据目标服务接口的实现代码,控制MCU芯片和/或MCU芯片所连接的控制部件执行目标服务接口相关的功能。
在一些实施例,调度层,还用于在家电产品上电时,向部件层发送初始化指令;部件层,还用于根据初始化指令,调用MCU层的初始接口;MCU层,还用于在初始化接口被调用的情况下,对MCU芯片进行初始化以及对控制部件进行初始化。
在一些实施例中,第一头文件还包括初始化接口的名称,第一源文件还包括初始化接口的实现代码;MCU层,具体用于在初始化接口被调用的情况下,根据初始化接口的名称,从第一源文件中查找到初始化接口的实现代码;根据初始化接口的实现代码,对MCU芯片进行初始化以及对控制部件进行初始化。
在一些实施例中,调度层,还用于在家电产品上电时,向功能逻辑层发送初始化指令;功能逻辑层,还用于根据初始化指令,执行初始化操作。
在一些实施例中,MCU层,还用于接收来自于MCU芯片或者控制部件的中断请求;将中断请求上报给部件层;部件层,还用于处理中断请求。
在一些实施例中,MCU层,还用于接收来自于MCU芯片或者控制部件的定时请求;将定时请求上报给部件层或者调度层;部件层,还用于处理定时请求;调度层,还用于处理定时请求。
在一些实施例中,MCU层还包括第二头文件,第二头文件适用于家电产品当前配置的MCU芯片,第二头文件用于记录以下信息中的一项或者多项:家电产品当前配置的MCU芯片的数据类型;家电产品当前配置的MCU芯片的可使用资源,以及可使用资源的参数;中断函数所使用的资源。
在一些实施例中,MCU层还包括第三头文件,第三头文件用于记录以下信息中的一项或者多项:MCU层的内核和外设资源;MCU层对于中断的配置。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本申请实施例提供的一种嵌入式系统的软件结构示意框图;
图2为本申请实施例提供的一种嵌入式系统的实现过程流程图;
图3为本申请实施例提供的另一种嵌入式系统的实现过程流程图;
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。另外,在对管线进行描述时,本申请中所用“相连”、“连接”则具有进行导通的意义。具体意义需结合上下文进行理解。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
为了便于理解,首先对本发明实施例涉及到的一些术语或技术的基本概念进行简单的介绍和说明。
MCU:即Microcontroller Unit,MCU,微控制器。又称单片微型计算机(SingleChip Microcomputer)或者单片机,是把中央处理器(Central Process Unit,CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、A/D转换、UART、PLC、DMA等周边接口,甚至LCD驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。
耦合:指的是两个类之间的联系的紧密程度;强耦合指类之间存在着直接关系。弱耦合指在两个类的中间加入一层,将原来的直接关系变成间接关系,使得两个类对中间层是强耦合,两类之间变为弱耦合。
解耦:在软件工程中,降低耦合度即可以理解为解耦,也就是将强耦合变为弱耦合的过程。模块间有依赖关系必然存在耦合,理论上的绝对零耦合是做不到的,但可以通过一些现有的方法将耦合度降至最低。
封装:即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别。
印制电路板(Printed Circuit Board,PCB):又称印刷线路板,是重要的电子部件,是电子元器件的支撑体,是电子元器件电气相互连接的载体。
如上述技术背景,普通微控制器的驱动方式和驱动参数不一致,控制软件设计又对MCU的驱动软件分层不彻底,逻辑解耦不深,造成修改代码工作量大,产品开发效率低下的问题。
基于此,本申请实施例提供一种家电产品,该家电产品安装有嵌入式系统,嵌入式系统自上而下依次包括:调度层,功能逻辑层,部件层,以及MCU层;调度层,用于确定部件驱动任务的执行时间;在到达部件驱动任务的执行时间时,调用功能逻辑层执行部件驱动任务;功能逻辑层,用于对部件驱动任务进行解析,确定控制指令;向部件层下发控制指令;部件层,用于根据控制指令,调用MCU层的目标服务接口;MCU层,用于在目标服务接口被调用的情形下,控制MCU芯片和/或MCU芯片所连接的控制部件执行目标服务接口相关的功能。从而实现家电软件中与MCU和控制部件有关的底层驱动程序与实际物理部件分离,并将部件的驱动程序由底层的MCU层触发完成,深封装了部件驱动,保证了上层代码的独立性。使控制器在更换MCU层和控制部件时,代码修改任务减小,提供高了开发效率。
为进一步对本申请的方案进行描述,下面对本申请的附图做出详细说明。
图1为本申请实施例提供的一种嵌入式系统的软件结构示意框图。如图1所示,该嵌入式系统10自上而下依次包括:调度层11、功能逻辑层12、部件层13、和MCU层14。
在一些实施例中,调度层11,用于确定部件驱动任务的执行时间。在到达部件驱动任务的执行时间时,调用功能逻辑层执行部件驱动任务。
在一些实施例中,功能逻辑层12,用于对部件驱动任务进行解析,确定控制指令;向部件层下发控制指令。
在一些实施例中,部件层,用于根据控制指令,调用MCU层的目标服务接口。
在一些实施例中,MCU层,用于在目标服务接口被调用的情形下,控制MCU芯片和/或MCU芯片所连接的控制部件执行目标服务接口相关的功能。
本申请实施例提供一种家电产品的嵌入式系统,该嵌入式系统的运行方式如图2所示:
在一些实施例中,调度层,用于在家电产品上电时,向部件层发送初始化指令。或者,调度层,还用于在家电产品上电时,向功能逻辑层发送初始化指令。
其中,上电指从电源接通后到系统稳定工作的过程。初始化即把变量赋为默认值,把控制组件设为默认状态。
在一些实施例中,功能逻辑层,用于根据调度层发来的初始化指令,执行初始化操作。
在一些实施例中,部件层,用于根据调度层发来的初始化指令,调用MCU层的初始接口。
在一些实施例中,MCU层,用于在MCU层的初始化接口被调用的情况下,对MCU芯片进行初始化以及对控制部件进行初始化。
在一些实施例中,MCU层包括第一头文件,以及与第一服务接口对应的第一源文件。
可选的,第一头文件适用于不同型号的MCU芯片,第一头文件包括各个服务接口的名称。
在具体的实现中,第一头文件用A类文件表示,以A.h代表A类文件的真实文件名名。A类文件的格式为*.h。
需理解,该A类文件支持不同厂家和不同型号的MCU芯片,是通用性文件,插入在文件的开始部分。
可选的,该A类文件可包含C.h和D.h文件,A类文件的后续部分按照MCU资源分类,分别声明MCU内核和外设资源的初始化、MCU内核和外设资源的读写以及其它访问接口函数。
可选的,当接口函数采用一般的函数格式定义时,函数声明放在A.h中,函数的实现代码也即函数体放在B.c中。
可选的,当接口函数采用宏函数格式时,需要给该函数取一个别名宏,在C.h中定义别名宏,在A.h中定义该接口宏等于别名宏。例如,定义一个查询UART端口是否发信完成的接口。
其中,UART端口为通用异步收发器,是一种通用串行数据总线,用于异步通信。
示例性的,定义一个查询UART端口是否发信完成的接口的代码如下:
在C.h文件中:
…
typedef unsigned short RSCIDType;
…
#define UART_TXDCompletedType 1/*选择采用函数格式还是宏格式*/
#define UART_isTXDCompleted_Macro(id)XXXX/*XXXX是完成该功能的代码*/
…
在A.h文件中:
…
#if(UART_TXDCompletedType)
#define UART_isTXDCompleted(id)
UART_isTXDCompleted_Macro(id)
#else
/*若UART_TXDCompletedType等于0,必须在A.c中实现下列函数*/
bool UART_isTXDCompleted(RSCIDType id);
#endif
…
其中,宏名称通过中断的类型来定义。
可选的,初始化中断使用参数可以为中断号、优先级、定时中断的周期、管脚的端口号和PIN号、触发电平、通讯参数、看门狗周期等可能的初始化中断使用参数。
可选的,通讯参数为波特率,校验位,停止位,长度。
可选的,宏名称可以为中断初始函数的宏名称、中断处理函数的宏名称、中断使能/禁能的宏函数名称、清除中断标志的宏函数名称等可能的宏名称。
在一些实施例中,MCU层,还用于接收来自于MCU芯片或者控制部件的定时请求,将定时请求上报给部件层或者调度层。
此时,部件层和调度层用于处理定时请求。
需要说明的是,因为中断使用的具体底层资源与MCU的特定实现有关,所以通过中断来定义宏名称时不要涉及中断使用的具体底层资源。
在一些实施例中,第一服务接口对应的第一源文件包括各个服务接口的实现代码。
在具体的实现中,第一源文件用B类文件来表示,以B.c代表真实的文件名。B类文件的格式为*.c。
其中,B类文件主要针对选定MCU的接口实现函数。
可选的,B类文件可包含以下内容:当A.h中的接口函数采用一般的函数格式定义时,该函数的实现代码即函数体放在本文件中。
其中,A.h中的接口函数包括外设的初始化函数、中断的初始化函数和正常工作时的接口函数,但不包括中断函数。
需要说明的是,中断函数在使用中断的部件驱动文件里,中断函数不得直接访问MCU内核和外设,必须通过MCU接口函数来实现,设计MCU接口时要考虑满足中断函数的要求。
可选的,MCU层,具体用于在目标服务接口被调用的情形下,根据目标服务接口的名称,从第一源文件中查找到目标服务接口的实现代码;根据目标服务接口的实现代码,控制MCU芯片和/或MCU芯片所连接的控制部件执行目标服务接口相关的功能。
在一些实施例中,MCU层还包括第二头文件。
其中,第二头文件用于特定MCU芯片资源和参数定义,适用于家电产品当前配置的MCU芯片。
在具体的实现中,第二头文件用C类文件来表示,以C.h代表真实的文件名。
可选的,该C类文件可以包括家电产品当前配置的MCU芯片的数据类型、家电产品当前配置的MCU芯片的可使用资源以及可使用资源的参数和中断函数所使用的资源。
需要说明的是,该文件不是通用的,是针对某一特定型号,MCU编写的代码。
可选的,该C类文件还包括,系统调试时和系统正常运行过程中所使用的宏定义和参数、使用家电产品当前配置MCU芯片可使用资源时的方式、参数等。
需要说明的是,家电产品当前配置的MCU芯片的可使用资源和使用这些资源时的方式和参数一律用宏定义格式,按类别和编号顺序定义。
示例性的,当接口函数采用宏函数格式时,需要给该函数取一个别名宏,在C类文件中定义别名宏,在A.h中定义该接口宏等于该别名宏。
可选的,按照中断的类型来规定初始化中断函数中可能使用的资源,均用宏格式定义出来,以备D类文件选用。
示例性的,中断函数所使用的资源可包括选项ID以及选择这项选项的寄存器或位域名称宏,例如定时和看门狗中断可能使用到的时钟源或支持的分频值或倍频值、UART、PWM输出或管脚中断可能使用到的管脚ID等。
其中,时钟源为对应于某配置寄存器的时钟源位域。或支持的分频值为对应于某配置寄存器的分频值位域。倍频值为对应于某配置寄存器的倍频值位域。
在一些实施例中,MCU层还包括第三头文件,第三头文件用于记录以下信息中的一项或者多项:MCU层的内核和外设资源、MCU层对于中断的配置。
其中,第三头文件为特定PCB端口映射文件。第三头文件以宏定义的方式来定义。
在具体的实现中,第三头文件用D类文件来表示,以C.h代表真实的文件名。
可选的,D类文件中MCU层的内核和外设资源可包括相关配置参数、外设类别和序号、初始化参数、运行参数等可能的内容。另外,D类文件中MCU层的内核和外设资源也包括指定外设资源使用的其它资源和算法等内容。
可选的,D类文件中要完成需要PCB链接的外部部件或MCU内部外设的使用的中断设置。
示例性的,MCU内部外设的使用的中断设置可包括中断初始化用到的在C类文件中定义的资源ID、中断参数、初始化函数、中断处理函数、使能禁能宏、清除中断标志的宏等内容。
需理解,中断处理函数除了个别在MCU层的B.c文件中以外,例如心跳中断函数,看门狗中断函数,中断处理函数的大部分中断在部件驱动模块中,因此在使用宏定义方式连接中断处理函数时,要预先声明一下。声明代码可例如:
external void CBus_TXTimer(void);
#define IRQ_Timer_A0 CBus_TXTimer;
在一些实施例中,本申请还提供一种控制部件的封装方式,具体步骤如下:
S1、对功能逻辑层代码提供统一的服务接口,使接口的格式对于不同厂家不同型号的MCU层是相同的。并将接口的格式代码放在第一头文件中,设置权限为对外公开。
进一步的,将功能逻辑层代码提供统一的服务接口的实现代码放在第一源文件中,使功能逻辑层代码提供统一的服务接口的实现代码会随着MCU层的不同和驱动电路的不同而变化。
需理解,这些变化将封装于驱动部件内部,设置权限为不对外公开。
S2、MCU层内核及外设初始化通过部件层的初始化完成。
其中,部件层工作时使用的MCU层外设资源,以及相关的配置参数也看成是部件层功能的一部分,属于MCU层的外设初始化接口和驱动接口,要在部件驱动模块(*.c文件)中调用。
S3、PCB上电初始化。其过程如图3所示。
S4、当嵌入式系统正常工作时,部件驱动任务通过MCU层中断或定时任务来完成。
其中,功能逻辑层代码按照产品逻辑的控制需要,通过部件层的通用接口直接向部件层发送控制指令。
进一步的,部件执行收到的指令时,通过MCU层各类外设的通用接口实现相关功能。
本申请实施例提供的技术方案至少带来以下有益效果:本方案通过在家电产品中安装嵌入式系统,根据调度层确定的部件驱动任务执行时间,调用功能逻辑层执行部件驱动任务,此时部件层通过控制指令,调用MCU层的目标服务接口,在目标服务接口被调用的情形下,控制MCU芯片执行目标服务接口相关的功能。从而实现家电软件中与MCU和控制部件有关的底层驱动程序与实际物理部件分离,并将部件的驱动程序由底层的MCU层触发完成,深封装了部件驱动,保证了上层代码的独立性。使控制器在更换MCU层和控制部件时,代码修改任务减小,提供高了开发效率。
本申请实施例可以根据上述结构示例对该嵌入式系统进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。可选的,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例该方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (9)
1.一种家电产品,其特征在于,所述家电产品安装有嵌入式系统,所述嵌入式系统自上而下依次包括:调度层,功能逻辑层,部件层,以及微控制器MCU层;
所述调度层,用于确定部件驱动任务的执行时间;在到达所述部件驱动任务的执行时间时,调用所述功能逻辑层执行所述部件驱动任务;
所述功能逻辑层,用于对所述部件驱动任务进行解析,确定控制指令;向所述部件层下发所述控制指令;
所述部件层,用于根据所述控制指令,调用所述MCU层的目标服务接口;
所述MCU层,用于在所述目标服务接口被调用的情形下,控制MCU芯片和/或所述MCU芯片所连接的控制部件执行目标服务接口相关的功能。
2.根据权利要求1所述的家电产品,其特征在于,所述MCU层包括第一头文件,以及与第一服务接口对应的第一源文件;其中,所述第一头文件适用于不同型号的MCU芯片,所述第一头文件包括各个服务接口的名称;所述第一服务接口对应的第一源文件包括各个服务接口的实现代码;
所述MCU层,具体用于在所述目标服务接口被调用的情形下,根据所述目标服务接口的名称,从所述第一源文件中查找到所述目标服务接口的实现代码;根据所述目标服务接口的实现代码,控制所述MCU芯片和/或所述MCU芯片所连接的控制部件执行所述目标服务接口相关的功能。
3.根据权利要求2所述的家电产品,其特征在于,
所述调度层,还用于在所述家电产品上电时,向所述部件层发送初始化指令;
所述部件层,还用于根据所述初始化指令,调用所述MCU层的初始接口;
所述MCU层,还用于在初始化接口被调用的情况下,对所述MCU芯片进行初始化以及对所述控制部件进行初始化。
4.根据权利要求3所述的家电产品,其特征在于,所述第一头文件还包括所述初始化接口的名称,所述第一源文件还包括所述初始化接口的实现代码;
所述MCU层,具体用于在所述初始化接口被调用的情况下,根据所述初始化接口的名称,从所述第一源文件中查找到所述初始化接口的实现代码;根据所述初始化接口的实现代码,对所述MCU芯片进行初始化以及对所述控制部件进行初始化。
5.根据权利要求3所述的家电产品,其特征在于,
所述调度层,还用于在所述家电产品上电时,向所述功能逻辑层发送初始化指令;
所述功能逻辑层,还用于根据所述初始化指令,执行初始化操作。
6.根据权利要求4所述的家电产品,其特征在于,
所述MCU层,还用于接收来自于所述MCU芯片或者所述控制部件的中断请求;将所述中断请求上报给所述部件层;
所述部件层,还用于处理所述中断请求。
7.根据权利要求6所述的家电产品,其特征在于,
所述MCU层,还用于接收来自于所述MCU芯片或者所述控制部件的定时请求;将所述定时请求上报给所述部件层或者所述调度层;
所述部件层,还用于处理所述定时请求;
所述调度层,还用于处理所述定时请求。
8.根据权利要求7所述的家电产品,其特征在于,所述MCU层还包括第二头文件,所述第二头文件适用于所述家电产品当前配置的MCU芯片,所述第二头文件用于记录以下信息中的一项或者多项:
所述家电产品当前配置的MCU芯片的数据类型;
所述家电产品当前配置的MCU芯片的可使用资源,以及所述可使用资源的参数;
中断函数所使用的资源。
9.根据权利要求8所述的家电产品,其特征在于,所述MCU层还包括第三头文件,所述第三头文件用于记录以下信息中的一项或者多项:
所述MCU层的内核和外设资源;
所述MCU层对于中断的配置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211564950.8A CN116165926A (zh) | 2022-12-07 | 2022-12-07 | 一种家电产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211564950.8A CN116165926A (zh) | 2022-12-07 | 2022-12-07 | 一种家电产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116165926A true CN116165926A (zh) | 2023-05-26 |
Family
ID=86413909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211564950.8A Pending CN116165926A (zh) | 2022-12-07 | 2022-12-07 | 一种家电产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116165926A (zh) |
-
2022
- 2022-12-07 CN CN202211564950.8A patent/CN116165926A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ryzhyk et al. | Automatic device driver synthesis with Termite | |
US5978862A (en) | PCMCIA card dynamically configured in first mode to program FPGA controlling application specific circuit and in second mode to operate as an I/O device | |
US20110078350A1 (en) | Method for generating multiple serial bus chip selects using single chip select signal and modulation of clock signal frequency | |
CN113849433B (zh) | 一种总线控制器的执行方法、装置、总线控制器、计算机设备和存储介质 | |
JPH08180013A (ja) | コンピュータシステム、pciバスクロック信号周波数における変化に応答してpciバス装置のコンフィギュレーションレジスタを再構成する方法、およびpciバス装置がpciバスと異なる動作速度を有することをオペレータに通知する方法 | |
KR100954661B1 (ko) | Sm버스에 대한 aml 액세스를 용이하게 하는 시스템과, sm버스 이벤트 핸들링 시스템, 방법 및 컴퓨터 판독가능 매체 | |
US6016549A (en) | Peripheral unit having at least two sequencer circuits configured to control data transfers for power saving | |
CN116301880A (zh) | 微控制单元中的指令响应方法、装置、电子设备及介质 | |
EP0657826A1 (en) | Interprocessor boot-up handshake for upgrade identification | |
CN103793263A (zh) | 一种基于PowerPC处理器的DMA事务级建模方法 | |
Brown | ACPI in Linux | |
CN116165926A (zh) | 一种家电产品 | |
CN111597137A (zh) | 一种基于spi协议的动态调试方法、装置及系统 | |
CN115617407A (zh) | 一种嵌入式操作系统的硬件驱动方法 | |
CN115617321A (zh) | 一种代码自动生成方法和装置 | |
CN105243040A (zh) | 一种基于PCIe总线支持USBTMC协议的仪器程控系统及方法 | |
Intel | ||
Shin et al. | Soft core firmware-based board management module for high performance blockchain/fintech servers | |
Grover | Modern System Power Management: Increasing demands for more power and increased efficiency are pressuring software and hardware developers to ask questions and look for answers. | |
CN111177056A (zh) | 使用协议分层实现axi vip方法、装置及计算机可读存储介质 | |
TW300296B (zh) | ||
CN114019230B (zh) | 一种智能电能表设计方法及系统 | |
CN115237849B (zh) | 可动态重构和异构的计算模块及计算装置 | |
CN113986804B (zh) | 国产嵌入式系统计算机与外设的通信方法、计算机及介质 | |
CN111581150B (zh) | Mcu中gpio功能可重构方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |