打包工具

RTL87x2G

RTL87x2G 是一系列IC类型的缩写。 以下以 RTL8762G 为例进行说明。

在开始之前,请在SDK目录下的(\subsys\gui\gui_engine\example\screen_800_480\root_image_800_480)选择一个合适的示例,或者基于示例创建一个新的打包目录。 然后,将bat和py脚本复制到该目录中,确保root文件夹以及bat和py脚本都处于该目录下。



  1. 将所有生成的bin文件从resource文件夹复制到root文件夹中。

  2. 双击批处理文件(.bat)以运行它,这将执行打包过程并生成root bin文件和.h文件

  3. .h文件包含了文件系统中每个文件的地址偏移量,可以在不使用文件系统的情况下直接访问。在开发GUI代码之前,请将包含.h的文件夹添加到包含目录中。

  4. 使用MPTool工具将root_xx.bin文件烧录到Flash存储中。

RTL8762D

以下以RTL8762D为例进行说明:

  1. 将所有生成的bin文件复制到文件夹\src\app\dashboard\application\root_image\root中。

  2. \src\app\dashboard\application\root_image目录下,双击mkromfs_0xa00000.bat脚本文件以执行它,并生成root文件夹的镜像。执行后,该目录下将出现一个新的.bin文件和.h文件。

  3. 其中,.bin文件是根文件夹的镜像文件,而.h文件则包含了文件系统中每个文件的地址偏移量。这样,开发者可以在不使用文件系统的情况下直接访问这些文件。



RTL8763E and RTL8773DO

RTL8763E是一个IC系列的名称,包含RTL8763EWE-VP和RTL8763EW-VC。RTL8763E和RTL877DO有不同的打包流程。

解压 userdata.zip

解压 userdata.zip 文件,并将 userdata.zip 中的文件移动到 sdk/src/sample/bt_audio_trx/panel/userdata 目录下。



配置设定

由于IC类型不同,批处理文件(bat)也会不一样。

如果IC类型是RTL8763EWE-VP或RTL8763EW-VC。



如果IC类型是RTL8773DO。


请根据自己的IC类型设置批处理(bat)配置。

生成用户数据(userdata bin)

生成过程如下:

  1. 将所有生成的bin文件复制到文件夹\src\sample\bt_audio_trx\panel\user_data\root中。

  2. 双击\src\sample\bt_audio_trx\panel\user_data目录中的gen_root_image.bat文件以执行脚本并生成root文件夹的镜像。一个新的.bin文件和.h文件将出现在目录中。

  3. 在这两个文件中,.bin文件是镜像文件,而.h文件是文件系统中每个文件的地址偏移量,可以直接访问而无需使用文件系统。



RTL8773E

RTL8773E是一个IC系列的名称,包含RTL8773EWE和RTL8773EWE-VP等,用户数据(userdata)打包处理过程如下

生成用户数据(userdata)

  1. 将生成的图像bin文件复制到 \src\app\watch\gui_application\root_image\root\8773e_watch目录,并将生成的字体bin文件复制到 \src\app\watch\gui_application\root_image\root\font目录。

  2. 修改构建地址(build address):开发者需要通过修改 mkromfs_0x4400000.bat 文件(python_bin_mkromfs_0x4400000.py –binary --addr 0x238b400 root root(0x4400000).bin)。这里的 --addr 参数对应于闪存映射中的 userdata 地址加上 0x400(图像头部大小)。

  3. \src\app\watch\gui_application\root_image目录中双击mkromfs_0x4400000.bat文件来执行脚本,并生成root文件夹的镜像。一个新的bin文件 root(0x4400000).bin 和头文件 ui_resource.h 将出现在目录中。

  4. 在这两个文件中,.bin 文件是包含root目录内容的镜像文件,而 .h 文件则包含了文件系统中每个文件的地址偏移量,这些偏移量允许开发者在不使用文件系统的情况下直接访问这些文件。



注意:生成的 ui_resource.h 文件需要手动添加以下代码。

#if defined _WIN32
#else
#include "flash_map.h"

#define   MUSIC_NAME_BIN_ADDR       APP_DEFINED_SECTION_ADDR
#define   MUSIC_HEADER_BIN_ADDR     (MUSIC_NAME_BIN_ADDR + 0xA000)
#define   MUSIC_NAME_BIN_SIZE       (MUSIC_HEADER_BIN_ADDR - MUSIC_NAME_BIN_ADDR)
#define   MUSIC_HEADER_BIN_SIZE     0x5000
#endif

生成用户数据(userdata bin)

使用MPPGTOOL来生成用户数据,生成过程如下:


注意:最大size必须大于实际size,否则,需要更改 flash_map 中的用户数据大小。