新版lvgl演示效果
Edgi-Talk SDK 1.4.0 的重点,是把开发者第一次创建工程、编译、烧写、运行示例的流程进一步简化。
以前开发 Edgi-Talk 工程时,启动链路里需要单独关注 Secure M33,也就是常说的 S 核固件。完整流程需要先编译 S 核,再编译 M33,最后再编译 M55,并且烧写时也要理解这几个固件之间的启动关系。这个流程对熟悉 PSoC Edge 启动机制的开发者来说没有问题,但对第一次使用 SDK 的用户来说,步骤偏多,也容易把注意力从应用开发转移到启动固件准备上。
在 SDK 1.4.0 中,S 核相关内容已经集成到 M33 工程流程里。开发者日常使用时,不再需要单独创建和编译 S 核工程,只需要根据目标应用选择 M33 核工程 或 M55 核工程 即可。
开发体验上的变化:
01
不再单独处理 S 核工程
S 核固件的构建和打包流程已经纳入 M33 工程体系。开发者不需要再把 Secure M33 当作一个独立示例工程去编译、管理和烧写。
这对示例验证尤其重要。现在拿到开发板后,可以直接在 RT-Thread Studio 中安装 Edgi-Talk BSP,然后从示例列表中选择目标工程。
02
示例工程更接近可直接运行状态
SDK 1.4.0 中的示例工程已经带好工程配置、RT-Thread 配置、板级驱动配置和下载配置。新建工程后,通常只需要做两类动作:
-
在 RT-Thread Settings 中打开或切换功能。
-
修改 applications 下的业务代码。
工程会自动处理 rt-thread、libraries、libs 等依赖路径。编译完成后生成 rtthread.hex,Studio 的 OpenOCD 下载配置会直接使用该固件进行烧写。
03
M33 和 M55 示例边界更清晰
M33 工程适合做基础控制、外设验证、USB RoleSwitch、IPC 启动侧等场景。M55 工程更适合承载图形、AI、网络和复杂应用逻辑,例如 LVGL、WIFI、小智和 DeepCraft 相关示例。
用户可以先按示例验证硬件链路,再基于对应核心的模板或示例工程继续开发自己的应用。
新的开发启动流程:
现在的开发入口可以理解为两个选择:
-
做 M33 侧应用:选择 M33 工程,编译并烧写。
-
做 M55 侧应用:选择 M55 工程进行应用开发;首次运行 M55 示例前,使用 M33 模板工程准备好 M55 启动配置。
也就是说,开发者面对的是 M33 和 M55 两类工程,而不是先单独准备 S 核、再准备 M33、最后准备 M55 的三段式流程。
旧流程需要按顺序处理三个固件:
先编译 S 核 -> 再编译 M33 -> 再编译 M55 -> 按启动顺序烧写 -> 运行示例
SDK 1.4.0 后的日常开发流程变成:
选择 M33 或 M55 示例工程 -> 编译当前工程 -> 烧写 -> 运行示例
对于 M55 示例,如果开发板还没有烧写过用于启动 M55 的 M33 固件,先烧写一次 Edgi_Talk_M33_Template 即可。SDK 1.4.0 中该模板工程默认已经打开 M55 启动相关配置:

完成这一步后,后续调试 M55 示例时,开发重点就可以回到 M55 工程本身。
如果希望同时开发 M33 和 M55,可以基于 Edgi_Talk_M33_Template,只保留 Enable CM55 Core,不启用 Enable CM33 DeepSleep after starting CM55。这样 M33 会负责启动 M55,同时自身仍保留在 RT-Thread 应用中运行,便于两侧业务一起调试。
SDK 1.4.0 示例工程简介:
01
Edgi_Talk_M33_Template
M33 模板工程,既可以作为 M55 示例运行前的基础启动工程,也可以作为空白 M33 应用开发起点。
默认配置下,Template 已经开启:
-
SOC_Enable_CM55:对应 RT-Thread Settings 中的 Enable CM55 Core。M33 板级初始化阶段会调用启动接口,把 M55 核拉起来,用于运行 M55 侧 LVGL、WIFI、小智等示例。
-
SOC_Enable_CM33_DeepSleep:对应 Enable CM33 DeepSleep after starting CM55。M33 启动 M55 后会进入 DeepSleep,适合 M55 作为主应用运行、M33 只负责前置启动的场景。
如果要同时开发 M33 和 M55,可以只开启 SOC_Enable_CM55,关闭 SOC_Enable_CM33_DeepSleep。此时 M33 会启动 M55,但不会进入 DeepSleep,两个核心都可以保留业务逻辑,适合做多核协同调试。
不建议使用 Edgi_Talk_M33_Driver_All 来启动 M55。该示例用于集中验证 M33 外设驱动,默认启用了较多外设资源,可能与 M55 侧 LVGL、WIFI、音频等示例发生资源冲突。M55 示例的启动底座建议继续使用 Edgi_Talk_M33_Template。
另外,Edgi_Talk_M55_LVGL 和 Edgi_Talk_M55_XiaoZhi 工程包含的源码、资源和第三方组件目录较多,在 Windows 上不建议放到层级过深的路径下。路径过长时,Windows 或部分构建工具可能无法正确处理文件,表现为编译失败、文件找不到、资源未复制等看起来不稳定的问题。建议将 SDK 或工程放在较短路径中,例如 D:\SDK\sdk-bsp-psoc_e84-edgi-talk。
02
Edgi_Talk_M55_LVGL
M55 图形显示示例工程,基于 LVGL 9.2,默认启动 Virtual3D Animated Emoji。它可以同时验证 LCD 显示、触摸输入、LVGL 渲染流程、M55 Cache 配置以及 AXIDMAC 区域拷贝优化。
工程支持在配置中切换多个 LVGL demo:
-
BSP_LVGL_DEMO_VIRTUAL3D_EMOJI
-
BSP_LVGL_DEMO_MUSIC
-
BSP_LVGL_DEMO_BENCHMARK
-
BSP_LVGL_DEMO_STRESS
其中 Virtual3D emoji demo 只支持 LCD 旋转 0 度或 180 度。如果要使用 90 度或 270 度横屏旋转,需要切换到其它 LVGL demo。
03
Edgi_Talk_M55_WIFI
M55 WIFI 示例工程,用于验证板载 CYW55512 WIFI 模块、网络初始化和 RT-Thread 网络组件。适合做联网应用、Socket 通信、HTTP/MQTT 等功能的后续开发基础。
04
Edgi_Talk_M55_XiaoZhi
小智示例工程,面向语音交互和联网智能应用场景。它比基础 WIFI 工程更接近完整应用形态,适合参考网络、音频、UI 和应用逻辑之间的组织方式。
05
Edgi_Talk_CherryUSB
CherryUSB 示例集合包含 USB Device、Host、RoleSwitch、UVC 和扩展屏相关工程。用户可以根据目标核心选择 M33 或 M55 版本:
-
Edgi_Talk_M33_USB_RoleSwitch
-
Edgi_Talk_M55_USB_RoleSwitch
-
Edgi_Talk_M55_USB_UVC
-
Edgi_Talk_Extend_Screen
-
Edgi_Talk_USB_Deepcraft
这类示例适合验证 USB CDC ACM、USB Host MSC、UVC 摄像头和 USB 扩展显示等功能。
06
Edgi_Talk_IPC
IPC 示例用于验证 M33 与 M55 之间的通信。多核应用通常需要 M33 做启动、控制或资源管理,M55 做高负载业务处理,IPC 示例可以作为两核协作开发的参考。
07
Edgi_Talk_M33_Driver_All / Edgi_Talk_M55_Driver_All
外设驱动集合示例,适合快速检查 GPIO、I2C、SPI、UART、ADC、PWM、SDIO、音频等外设驱动配置。做板级 bring-up 或外设验证时,可以先从这类工程开始。
演示:修改 LVGL Demo、编译并烧写
下面用 Edgi_Talk_M55_LVGL 演示一次典型开发流程。
1
新建 LVGL 工程
在 RT-Thread Studio 中新建工程:

2
修改 LVGL Demo 配置
打开 RT-Thread Settings,进入:

然后在 LVGL demo 中选择需要运行的示例:
Virtual3D emoji
当前 LVGL 工程默认配置为:
CONFIG_BSP_LCD_ROTATION_0=y
如果选择 Virtual3D emoji,LCD rotation 请保持 0 度或 180 度。保存配置后自动重新生成工程配置。
3
编译工程
在 RT-Thread Studio 中点击构建即可。
编译完成后会生成:
rtthread.hex
4
烧写固件
使用板载 KitProg3/DAP 将开发板连接到 PC,然后在 Studio 中使用工程自带的 OpenOCD Debug/Download 配置下载固件。
正常情况下,用户不需要手动编写 OpenOCD 命令。点击下载或调试后,Studio 会完成烧写、复位和连接调试。
5
查看运行效果
默认配置下,LCD 会显示 Virtual3D Animated Emoji,底部提示为:
Drag the 3D emoji
串口会打印当前启动的 demo 和 LCD 旋转角度,例如:
LVGL virtual3d_emoji demo start, lcd rotation=0
如果切换为 Music、Benchmark 或 Stress,LCD 会显示对应的 LVGL 官方示例界面。
其他示例演示:

小结
SDK 1.4.0 最核心的变化,是把 Edgi-Talk 的开发启动流程简化了。S 核不再作为开发者需要单独处理的工程入口,而是集成到 M33 工程流程中;日常开发时,只需要根据应用目标选择 M33 或 M55 示例工程。
这让第一次上手更直接,也让后续二次开发更清楚:先选核心,再选示例,修改配置和应用代码,编译烧写验证。对于图形、网络、USB、IPC、AI 等场景,SDK 1.4.0 已经提供了可以直接参考和扩展的工程基础。
也欢迎大家基于当前示例继续做出更有趣的应用。比如在 Edgi_Talk_M55_LVGL 上扩展自己的交互界面和动画效果,在 Edgi_Talk_M55_WIFI 上加入天气、消息推送或远程控制,在 Edgi_Talk_M55_XiaoZhi 上尝试语音交互和联网助手,在 CherryUSB 示例上扩展 U 盘、摄像头玩法,也可以利用 IPC 示例让 M33 负责外设采集、M55 负责 UI 或算法处理。SDK 1.4.0 先把工程启动和示例验证这条路铺顺,后面真正有趣的部分,就可以看大家的创意了。
评论区
登录后即可参与讨论
立即登录