首页 > 其他分享 >WQ框架构思

WQ框架构思

时间:2022-10-07 01:44:05浏览次数:49  
标签:初始化 HAL 框架 -- BROAD APP PLATFORM 构思 WQ

概述

耦合度较低,且代码复用性较强的多平台多板件简易嵌入式框架

框架图

整体框架图如下:

graph TD; APP-->HAL; APP-->LIB; APP-->RTOS; RTOS-->PLATFORM; HAL-->BROAD; BROAD-->HAL HAL-->PLATFORM; LIB-->HAL;

APP: 用户代码,主要有两种写法,状态机和多线程。

LIB:软件类库,如AT库,LOG库等存放地,依赖HAL库。

RTOS:实时操作系统,以freeRTOS为主。

HAL:硬件抽象层,参考stm32的hal库,以及安卓的321注册方式。

BROAD:板件操作层,根据不同的情况先调用已经抽象化的HAL库再去注册新的HAL库。采用O3C架构。

PLATFORM:平台层,负责各个芯片平台的驱动,同样采用Q3C架构。

初始化方式

stateDiagram [*] --> 根据PLATFORM的CONF配置在HAL中初始化,注册硬件 根据PLATFORM的CONF配置在HAL中初始化,注册硬件 --> 通过调用HAL库硬件,来初始化,注册BROAD硬件 通过调用HAL库硬件,来初始化,注册BROAD硬件 --> 初始化RTOS、LIB 初始化RTOS、LIB --> 初始化APP,并运行状态机or线程 初始化APP,并运行状态机or线程 --> [*]

O3C架构

BROAD和PLATFORM采用F3C,即:

CONFIG:配置

CORE:官方核心

CHECK:测试

OPERATE:操作指令

单独PLATFORM可独立测试运行,BROAD测试依赖HAL和PLATFORM层运行。

标签:初始化,HAL,框架,--,BROAD,APP,PLATFORM,构思,WQ
From: https://www.cnblogs.com/ataoblog/p/16758984.html

相关文章

  • Java Collections:专为集合框架而生的工具类
    titleshortTitlecategorytagdescriptionheadJavaCollections:专为集合框架而生的工具类Collections工具类Java核心常用工具类Java程序员进......
  • 接口自动化框架脚手架-从Excel读取用例发起调用做断言
    作者:软件质量保障大家工作中统计测试用例、测试进度以及各种测试报表,或多或少离不开Excel,我们可以使用Excel公式实现自动化统计,当然也可以使用代码实现Excel数据的统计。今......
  • LowcodeCore 低代码开发框架——快速搭建数据操作API、数据中台
    @目录技术交流QQ群:2727291761.背景介绍2.LowcodeCore介绍2.1开发环境2.2框架依赖3.LowcodeCore开发文档3.1快速搭建LowcodeCore项目3.1.1步骤一:新建项目3.1.2步骤......
  • LowcodeCore 低代码开发框架——组件说明
    @目录技术交流QQ群:2727291761.背景介绍2.框架组件2.1组件列表2.2组件配置规则说明2.3组件管道配置说明2.4获取HttpContext参数2.4.1HttpContext.Url参数2.4.2HttpC......
  • LowcodeCore低代码开发框架
    最近上线一款低代码开发框架,基于C#.Net6+SQLServer实现;用于快速开始开发API服务;1、LowcodeCore低代码开发框架——快速搭建数据操作API、数据中台https://www.cnblo......
  • Flask框架:运用SocketIO实现WebSSH
    Flask框架中如果想要实现WebSocket功能有许多种方式,运用SocketIO库来实现无疑是最简单的一种方式,Flask中封装了一个flask_socketio库该库可以直接通过pip仓库安装,如下内容......
  • MyBatis框架:第十章:mybatis缓存
    mybatis缓存说明:缓存指的是把一些常用的数据,保存到一个可以高速读取的缓冲区中。方便程序在频繁读取的时候,可以快速的取出数据。这就叫做缓存。一级缓存指的是,这些缓存......
  • 框架
    1.渲染层和逻辑层小程序的运行环境分成渲染层和逻辑层,其中WXML模板和WXSS样式工作在渲染层,JS脚本工作在逻辑层。......
  • 若依框架前端启动报错
    问题:npmrundev报错Toinstallit,youcanrun:npminstall--save@/api/system/project解决方案:在对应目录下添加project.vue文件......
  • 【持久层框架】- SpringData - JPA
    JPA简介JPA即JavaPersistenceAPI。是一款持久层框架,中文名Java持久层API,是JDK5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。JPA的对象......