第4期ThreadX视频教程:单片机动态APP加载玩法,像手机电脑一样加载卸载多个应用软件(2022-05-01)
视频教程汇总帖:https://www.armbbs.cn/forum.php?mod=viewthread&tid=110519
单片机动态APP加载玩法就跟安卓应用似的,可以从SD卡,NAND,NOR, eMMC等各种地方加载应用程序到支持执行程序的SRAM,SDRAM,QSPI Flash,内部Flash等空间执行。
而且支持MPU的话,可以隔离APP,APP死机了系统都不会挂掉。
本期视频教程将基础玩法给大家做个说明,下次视频教程来期高级玩法。
视频:
https://www.bilibili.com/video/BV1hS4y1w75u
本次视频主要分为以下几个内容:
1、应用场景和优缺点
(1) 仅需更新部分程序,协议或者功能时,可以使用动态APP,代码更新量很小。
(2) 芯片内部资源不足时,可以需要什么功能时,加载什么功能APP即可。
(3) 根据用户在主程序里面注册的一批API,实现各种小程序,不再限制Flash里面已经下载的程序,就跟手机电脑安装APP差不多。
(4) 硬件资源需求跟大家独立使用ThreadX实现相应功能是一样的,没有额外的资源需求。
2、动态APP玩法和BOOT + APP加载玩法区别。
最大区别是BOOT程序跳转到APP后,BOOT就不再用到了,而动态APP玩法所有程序都是在运行中,APP可以调用主程序的各种API。
3、实现原理:
通过程序代码给大家介绍下原理。
(1) 主程序中动态加载管理器实现原理,只要资源够,可以加载无限个APP。
(2) 动态APP工程设计。
(3) 动态APP调用主程序API的方法。
4、实战说明:
创建了一个主程序,两个动态加载的APP程序。
例子下载:
链接:https://pan.baidu.com/s/1I6JJwKWKXHy0wR1QWeqcKw 提取码:ksek
参考资料:
官方文档:
https://docs.microsoft.com/zh-cn ... dx-modules/chapter1
MDK的C库启动过程和初始化,即__main函数的执行全过程
https://www.armbbs.cn/forum.php?mod=viewthread&tid=111658
Tag_ABI_PCS_RO_data, Tag_ABI_PCS_RW_data的作用
https://www.armbbs.cn/forum.php?mod=viewthread&tid=112196
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端