大模型开发套件默认出厂烧录了TF卡应用加载固件,支持通过 TF 卡动态加载应用示例,实现通过菜单选择的方式动态加载应用,省去了连接PC进行固件烧录的操作。
本文将介绍TF 卡应用菜单功能的使用以及如何制作一张应用合集TF卡。
新版大模型套件(CSK6-MIX2.0)默认配套了集合了大部分应用示例的 TF 卡且开发套件默认烧录了用于加载 TF 卡内应用的固件,用户可直接上电开机体验。旧版本套件用户若需使用此功能,可参照 镜像TF卡制作章节制作TF卡进行使用。
下次使用套件时,若依旧选择上一次加载的应用,则无需等待。
开发板出厂默认烧录了一个TF卡应用启动固件,该固件位于 flash 的起始地址(0x00
),其功能为加载 TF 卡中存放的应用镜像并将它们的图标展示在屏幕上,当点击某个应用图标时,启动固件会将该应用的镜像从 TF 卡中拷贝并烧录至开发板的 flash 中,并在烧录完成后从应用启动地址(0x100000
)运行该应用。
由于芯片默认从 0x00 地址启动,当我们往开发板的起始地址(
0x00
)烧录其他测试固件时,芯片启动将默认运行新固件而不再加载 TF 卡应用菜单,如需恢复 TF 卡应用菜单的显示与使用,需重新往给地址烧录 TF卡应用启动固件。
1:点击下载TF卡启动固件(用于加载TF卡中的应用):zephyr.mcuboot.eaf133.bin
固件必须放在纯英文的文件路径中才能正确烧录,中文路径会导致烧录报错。
2:下载并安装 cskburn desktop 烧录工具后,双击图标运行软件
3:通过数据线连接电脑与开发套件的DAP_USB
接口
4: 点击cskburn_desktop
软件的串口下拉框,选择连接开发套件后识别到的串口编号,将已经下载好的.bin
文件拖拽进烧录区域,点击开始烧录
。
通过读卡器将 TF 卡连接电脑进行格式化,可使用默认的格式化格式(文件系统为FAT32),如图:
下载以下文件并解压,将解压后的multiapps
目录整个拷贝至 TF 卡根目录下:
文件 | 更新时间 | 操作 |
---|---|---|
multiapps.zip | 2025·5·14 | 下载 |
完成 TF 卡文件拷贝后,将TF卡插入开发板左下角卡槽中:
开发板复位运行后,固件将自动运行,可看到开发板屏幕已加载出 TF 中的应用清单,可以通过滑动屏幕并长按图标进行应用加载。
屏幕仅显示标题 “ListenAi Demo” ,但未显示应用图标,或提示“请插入T卡”:
排查方法:
当您有将自己修改后的固件放入 TF 卡以方便快速进行加载运行的需求时,可参照本部分教程。
本教程将以把做过自定义修改的 LLM_pic 示例放进 TF 卡为例进行讲解
1.打开计划加入 TF 卡并且已根据自己需求完成修改的固件项目工程,打开应用目录下的 prj.conf
文件,将配置项 CONFIG_APPLICATION_PACK_IMAGES
改为n
,如下图,以LLM_pic
为例:
2.在SDK根目录(duomotai_ap
)下执行编译指令,编译完成后在 duomotai_ap > build >zephyr
路径下查看 zephyr.bin
的大小并记录下来。
以编译 LLM_pic
为例:
lisa zep build -b csk6_duomotai_devkit apps\LLM_pic -p
如图,记录下编译出来的 zephyr.bin
文件的 大小。
3.打开工程的dts文件(应用工程目录/boards/*.overlay),检查ap分区(ap_code_partition
)分配的地址大小是否超过第二步中编译所得固件的大小至少 1MB,例如第 2 步实际编译出来固件是 2.58 MB,而当前 dts 中设置 ap 分区地址范围为0x00000 ~ 0x400000
,即 4MB
,大于 2.58MB+1MB (3.58 MB)
,代表此应用可以正常放入 TF 卡中进行加载并启动:
如果发现 ap 分区分配的地址大小未能超过第二步中固件大小至少1MB:
处理方式1:尝试修改固件减少其大小占用至满足要求;
处理方式2:如方式 1 无法实现,请联系聆思开发者助手。
4.在应用目录/icon
下留一个图标(建议像素不要太高,可使用72*72的像素尺寸),png格式,可参照应用示例中已有的图标;
5.将prj.conf
文件中的配置项 CONFIG_APPLICATION_PACK_IMAGES
修改回y
并保存,
并保证在根目录(duomotai_ap
)下能正常编译且烧录可正常运行,以编译 LLM_pic
为例::
lisa zep build -b csk6_duomotai_devkit apps/LLM_pic -p
6.确认电脑已安装了 python (建议版本号 ≥ 3.10后,在 SDK 根目录(duomotai_ap
)下运行打包脚本(可根据编译环境是west或者lisa自行修改脚本代码),以打包 LLM_pic
为例:
python3 tools/multiapps_switch/multiapps_pkg.py -t apps/LLM_pic
此操作会将 apps/LLM_pic 目录的应用进行打包,并将打包后的可放入 TF 卡的固件目录生成在tools/multiapps_switch 目录下
如图,打包成功后,可在tools\multiapps_switch\multiapps\apps
目录下看到新生成的 TF 卡固件目录
7.把新生成文件夹拷贝到 TF 卡中的multiapps
,即可完成制作。
如需修改在 TF 卡应用菜单中显示的应用名称,可修改应用目录中config 文件的 "app_name" 字段。