Git Product home page Git Product logo

rt-thread-qboot's Introduction

Quick bootloader

1. 简介

Quick bootloader 是一个用于快速制作bootloader的组件。

1.1 目录结构

Quick bootloader 软件包目录结构如下所示:

qboot
├───doc                                // 说明文档目录
│   │   qboot各项配置资源占用情况说明.md  // 资源占用说明
│   │   qboot工作流程说明.md            // 工作流程说明
│   │   qboot命令详述.md            	  // shell命令说明
│   │   qboot使用指导.md               // 使用示例详解
│   │   极简版Bootloader制作.md        // 极简bootloader制作示例
│   └───qboot状态指示灯说明.md          // 状态指示灯说明
├───inc                               // 头文件目录
│   │   qboot.h                       // 主模块头文件
│   │   qboot_aes.h                   // aes解密模块头文件
│   │   qboot_fastlz.h                // fastlz解压模块头文件
│   │   qboot_gzip.h                  // gzip解压模块头文件
│   └───qboot_quicklz.h     	      // quicklz解压模块头文件
├───src                               // 源码目录
│   │   qboot.c                       // 主模块
│   │   qboot_aes.c                   // aes解密模块
│   │   qboot_fastlz.c                // fastlz解压模块
│   │   qboot_gzip.c                  // gzip解压模块
│   └───qboot_quicklz                 // quicklz解压模块
├───tools                             // 工具目录
│   └───QBootPackager_V1.00.zip       // 升级包打包器
│   license                           // 软件包许可证
│   readme.md                         // 软件包使用说明
└───SConscript                        // RT-Thread 默认的构建脚本

1.2 许可证

Quick bootloader 遵循 LGPLv2.1 许可,详见 LICENSE 文件。

1.3 依赖

  • RT_Thread 4.0
  • fal
  • crclib

2. 使用

2.1 获取组件

  • 方式1: 通过 Env配置工具RT-Thread studio 开启软件包,根据需要配置各项参数;配置路径为 RT-Thread online packages -> system -> qboot

2.2 功能选项宏定义说明

选项宏 说明
QBOOT_APP_PART_NAME 应用代码使用的fal分区名称
QBOOT_DOWNLOAD_PART_NAME 下载固件使用的fal分区名称
QBOOT_FACTORY_PART_NAME 出厂固件使用的fal分区名称
QBOOT_USING_PRODUCT_CODE 使用产品码验证,防止非法升级
QBOOT_PRODUCT_CODE 定义产品码
QBOOT_USING_AES 使用AES解密功能
QBOOT_AES_IV AES的16字节初始向量
QBOOT_AES_KEY AES的32字节密钥
QBOOT_USING_GZIP 使用gzip解压缩功能
QBOOT_USING_QUICKLZ 使用quicklz解压缩功能
QBOOT_USING_FASTLZ 使用fastlz解压缩功能
QBOOT_USING_SHELL 使用命令行功能
QBOOT_SHELL_KEY_CHK_TMO 等待用户按键进入shell的超时时间
QBOOT_USING_SYSWATCH 使用系统看守组件
QBOOT_USING_OTA_DOWNLOAD 使用OTA downloader组件
QBOOT_USING_PRODUCT_INFO 使用启动时产品信息输出
QBOOT_PRODUCT_NAME 产品名称
QBOOT_PRODUCT_VER 产品版本
QBOOT_PRODUCT_MCU 产品使用的MCU
QBOOT_USING_STATUS_LED 使用状态指示灯
QBOOT_STATUS_LED_PIN 指示灯使用的引脚
QBOOT_STATUS_LED_LEVEL 指示灯的点亮电平
QBOOT_USING_FACTORY_KEY 使用恢复出厂按键
QBOOT_FACTORY_KEY_PIN 按键使用的引脚
QBOOT_FACTORY_KEY_LEVEL 按键按下后的引脚电平
QBOOT_FACTORY_KEY_CHK_TMO 检测按键持续按下的超时时间

2.3 各功能模块资源使用情况,详见 :qboot各项配置资源占用情况说明

2.4 如何使用QBoot组件快速制作bootloader,详见:QBoot使用指导

3. 联系方式

rt-thread-qboot's People

Contributors

chenxuanzhao avatar lianghongquan avatar qiyongzhong0 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.