完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
一个简单的问题。我可以在单个 esp8266 上安装两个 NON OS SDK 应用程序吗?我的自定义引导加载程序(包括 os libs)和我的自定义应用程序(也包括 os libs)。不想共享库,因为整个解决方案可能很复杂。
我可以想象我会在闪光灯中出现两个 iroms。此外,我相信第一个应用程序的 iram 部分位于 FLASH 的开头,并在启动后被复制。 我不确定的是,我怎样才能设法将第二个IRAM部分存储在闪存(应用程序IRAM)中间到实际的IRAM? |
|
相关推荐
1个回答
|
|
在单个ESP8266上安装两个NON OS SDK应用程序是可能的,但需要进行一些特殊的配置和操作。以下是实现这一目标的步骤:
1. **分区表**:首先,您需要为两个应用程序创建一个合适的分区表。这将确保每个应用程序都有自己的闪存空间。您可以使用`esptool.py`工具生成一个包含两个应用程序分区的分区表。 2. **引导程序**:编写一个自定义引导程序,该引导程序将加载并启动两个应用程序。引导程序需要知道每个应用程序的起始地址和大小。您可以在引导程序中使用`spi_flash_read`函数从闪存中读取应用程序数据。 3. **应用程序IRAM**:对于每个应用程序,您需要确保它们的IRAM部分位于闪存中的正确位置。这可以通过在应用程序的链接脚本中指定IRAM的起始地址来实现。例如,您可以为第一个应用程序的IRAM部分指定一个较低的地址,为第二个应用程序的IRAM部分指定一个较高的地址。 4. **应用程序代码**:在每个应用程序中,确保它们不共享任何库或资源。这将避免在运行时出现冲突。您可以为每个应用程序创建单独的源文件和头文件,以确保它们之间没有依赖关系。 5. **编译和烧录**:使用ESP8266 NON OS SDK编译器为每个应用程序生成二进制文件。然后,使用`esptool.py`工具将引导程序、两个应用程序的IROM和IRAM部分烧录到相应的闪存地址。 6. **测试**:在烧录完成后,测试ESP8266以确保两个应用程序可以正常启动并运行。您可能需要调整引导程序或应用程序代码以解决任何启动问题。 总之,虽然在单个ESP8266上安装两个NON OS SDK应用程序是可能的,但这需要进行一些额外的配置和操作。确保为每个应用程序分配足够的闪存空间,并在引导程序中正确加载它们。同时,确保应用程序之间不共享任何资源或库,以避免运行时冲突。 |
|
|
|
只有小组成员才能发言,加入小组>>
545浏览 6评论
457浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
437浏览 5评论
441浏览 4评论
411浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 05:50 , Processed in 0.899274 second(s), Total 83, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号