feature(BL):修改BL文件为默认文件名,简化使用。
This commit is contained in:
@@ -26,15 +26,15 @@
|
|||||||
## 用法
|
## 用法
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python merge_bin.py <bootloader.bin> <app.bin> [-o 输出文件] [--app-addr 地址] [--flag-addr 地址]
|
python merge_bin.py <app.bin> [-b bootloader.bin] [-o 输出文件] [--app-addr 地址] [--flag-addr 地址]
|
||||||
```
|
```
|
||||||
|
|
||||||
### 参数说明
|
### 参数说明
|
||||||
|
|
||||||
| 参数 | 必填 | 默认值 | 说明 |
|
| 参数 | 必填 | 默认值 | 说明 |
|
||||||
|------|:----:|--------|------|
|
|------|:----:|--------|------|
|
||||||
| `bootloader` | ✅ | — | Bootloader 的 .bin 文件路径 |
|
|
||||||
| `app` | ✅ | — | Application 的 .bin 文件路径 |
|
| `app` | ✅ | — | Application 的 .bin 文件路径 |
|
||||||
|
| `-b, --bootloader` | ❌ | `gd32e230f8_bootloader_hulk.bin` | Bootloader 的 .bin 文件路径 |
|
||||||
| `-o, --output` | ❌ | `<APP文件名>_BL.bin` | 输出文件路径 |
|
| `-o, --output` | ❌ | `<APP文件名>_BL.bin` | 输出文件路径 |
|
||||||
| `--app-addr` | ❌ | `0x08002000` | APP 在 Flash 中的起始地址 |
|
| `--app-addr` | ❌ | `0x08002000` | APP 在 Flash 中的起始地址 |
|
||||||
| `--flag-addr` | ❌ | `0x0800FFFC` | APP 有效标志位的地址 |
|
| `--flag-addr` | ❌ | `0x0800FFFC` | APP 有效标志位的地址 |
|
||||||
@@ -44,20 +44,27 @@ python merge_bin.py <bootloader.bin> <app.bin> [-o 输出文件] [--app-addr 地
|
|||||||
**基本用法**(使用默认地址,输出自动命名为 `app_BL.bin`):
|
**基本用法**(使用默认地址,输出自动命名为 `app_BL.bin`):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python merge_bin.py bootloader.bin app.bin
|
python merge_bin.py app.bin
|
||||||
|
```
|
||||||
|
|
||||||
|
默认会读取当前目录下固定文件名:`gd32e230f8_bootloader_hulk.bin`。
|
||||||
|
|
||||||
|
**指定 Bootloader 文件**:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python merge_bin.py app.bin -b bootloader.bin
|
||||||
```
|
```
|
||||||
|
|
||||||
**指定自定义地址**:
|
**指定自定义地址**:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python merge_bin.py bootloader.bin app.bin --app-addr 0x08002000 --flag-addr 0x0800FFFC -o merged.bin
|
python merge_bin.py app.bin -b bootloader.bin --app-addr 0x08002000 --flag-addr 0x0800FFFC -o merged.bin
|
||||||
```
|
```
|
||||||
|
|
||||||
**实际项目示例**(默认输出为 `CeramixNano-MB_V1.0.9_APP_2026-03-23_BL.bin`):
|
**实际项目示例**(默认输出为 `CeramixNano-MB_V1.0.9_APP_2026-03-23_BL.bin`):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
python merge_bin.py \
|
python merge_bin.py \
|
||||||
gd32e23x_V1.0.0_bootloader_2026-03-23.bin \
|
|
||||||
CeramixNano-MB_V1.0.9_APP_2026-03-23.bin
|
CeramixNano-MB_V1.0.9_APP_2026-03-23.bin
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -65,7 +72,6 @@ python merge_bin.py \
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
python merge_bin.py \
|
python merge_bin.py \
|
||||||
gd32e23x_V1.0.0_bootloader_2026-03-23.bin \
|
|
||||||
CeramixNano-MB_V1.0.9_APP_2026-03-23.bin \
|
CeramixNano-MB_V1.0.9_APP_2026-03-23.bin \
|
||||||
-o custom_output.bin
|
-o custom_output.bin
|
||||||
```
|
```
|
||||||
|
|||||||
+7
-1
@@ -26,6 +26,7 @@ import os
|
|||||||
|
|
||||||
FLASH_BASE = 0x08000000
|
FLASH_BASE = 0x08000000
|
||||||
FLASH_SIZE = 64 * 1024 # 64KB
|
FLASH_SIZE = 64 * 1024 # 64KB
|
||||||
|
DEFAULT_BOOTLOADER = "gd32e230f8_bootloader_hulk.bin"
|
||||||
|
|
||||||
|
|
||||||
def merge(bootloader_path, app_path, output_path, app_addr, flag_addr):
|
def merge(bootloader_path, app_path, output_path, app_addr, flag_addr):
|
||||||
@@ -83,8 +84,13 @@ def merge(bootloader_path, app_path, output_path, app_addr, flag_addr):
|
|||||||
|
|
||||||
def main():
|
def main():
|
||||||
parser = argparse.ArgumentParser(description="合成 GD32E230 初始烧录固件 (bootloader + app)")
|
parser = argparse.ArgumentParser(description="合成 GD32E230 初始烧录固件 (bootloader + app)")
|
||||||
parser.add_argument("bootloader", help="Bootloader bin 文件路径")
|
|
||||||
parser.add_argument("app", help="Application bin 文件路径")
|
parser.add_argument("app", help="Application bin 文件路径")
|
||||||
|
parser.add_argument(
|
||||||
|
"-b",
|
||||||
|
"--bootloader",
|
||||||
|
default=DEFAULT_BOOTLOADER,
|
||||||
|
help=f"Bootloader bin 文件路径 (默认: {DEFAULT_BOOTLOADER})",
|
||||||
|
)
|
||||||
parser.add_argument("-o", "--output", default=None, help="输出文件路径 (默认: APP文件名_BL.bin)")
|
parser.add_argument("-o", "--output", default=None, help="输出文件路径 (默认: APP文件名_BL.bin)")
|
||||||
parser.add_argument("--app-addr", default="0x08002000", help="APP 起始地址 (默认: 0x08002000)")
|
parser.add_argument("--app-addr", default="0x08002000", help="APP 起始地址 (默认: 0x08002000)")
|
||||||
parser.add_argument("--flag-addr", default="0x0800FFFC", help="标志位地址 (默认: 0x0800FFFC)")
|
parser.add_argument("--flag-addr", default="0x0800FFFC", help="标志位地址 (默认: 0x0800FFFC)")
|
||||||
|
|||||||
Reference in New Issue
Block a user