使用 esp8266 的 micropython 二进制映像预编译 main.py
Precompile main.py with the micropython binary image for esp8266
micropython 图像中默认有 boot.py 可用。
我测试了 python 模块 main.py 中的代码。我想做以下事情
我想编译一个镜像,这样可以更容易地将它刷写到 10 个以上的设备上,而且我不必启动 webrepl。
有没有办法停止显示微python版本号等的启动消息?
我尝试了以下方法:显然它们已经被激活了:
https://forum.micropython.org/viewtopic.php?t=2334
我使用以下方法成功编译了图像:
https://cdn-learn.adafruit.com/downloads/pdf/building-and-running-micropython-on-the-esp8266.pdf
问题:
如何使用 main.py 创建图像,此文件应放在此文件夹中的什么位置 /home/vagrant/micropython/esp8266?
1) boot.py 由以下脚本生成:
/home/vagrant/micropython/esp8266/script/inisetup.py
函数:setup()
在每次启动时将 boot.py 写入文件系统。
这将是添加 main.py 的地方,也将其写入文件中。
或将其添加到脚本中并以 boot.py
启动
2) 停止引导消息:"performing initial checks" 开启 inisetup.py。有些在脚本文件夹中 port_diag.py。
您需要更改 micropython\esp8266\modules\inisetup.py
。
在这个文件中,一段代码在 micropython 启动时写入 boot.py 文件。喜欢下面
with open("boot.py", "w") as f:
f.write("""\
# This file is executed on every boot (including wake-boot from deepsleep)
#import esp
#esp.osdebug(None)
import gc
#import webrepl
#webrepl.start()
gc.collect()
import mymain
""")
注意最后一行 import mymain
。将 mymain.py 文件复制到 micropython\esp8266\modules
目录。
mymain.py
文件应该 而不是 有 if __name__ == '__main__'
块,以便在导入时执行。 mymain
正在导入的所有其他文件也应该在 modules
目录中。构建代码后,所有必需的文件都将包含在二进制文件中。
micropython 图像中默认有 boot.py 可用。
我测试了 python 模块 main.py 中的代码。我想做以下事情
我想编译一个镜像,这样可以更容易地将它刷写到 10 个以上的设备上,而且我不必启动 webrepl。
有没有办法停止显示微python版本号等的启动消息?
我尝试了以下方法:显然它们已经被激活了: https://forum.micropython.org/viewtopic.php?t=2334
我使用以下方法成功编译了图像: https://cdn-learn.adafruit.com/downloads/pdf/building-and-running-micropython-on-the-esp8266.pdf
问题:
如何使用 main.py 创建图像,此文件应放在此文件夹中的什么位置 /home/vagrant/micropython/esp8266?
1) boot.py 由以下脚本生成:
/home/vagrant/micropython/esp8266/script/inisetup.py
函数:setup()
在每次启动时将 boot.py 写入文件系统。
这将是添加 main.py 的地方,也将其写入文件中。
或将其添加到脚本中并以 boot.py
2) 停止引导消息:"performing initial checks" 开启 inisetup.py。有些在脚本文件夹中 port_diag.py。
您需要更改 micropython\esp8266\modules\inisetup.py
。
在这个文件中,一段代码在 micropython 启动时写入 boot.py 文件。喜欢下面
with open("boot.py", "w") as f:
f.write("""\
# This file is executed on every boot (including wake-boot from deepsleep)
#import esp
#esp.osdebug(None)
import gc
#import webrepl
#webrepl.start()
gc.collect()
import mymain
""")
注意最后一行 import mymain
。将 mymain.py 文件复制到 micropython\esp8266\modules
目录。
mymain.py
文件应该 而不是 有 if __name__ == '__main__'
块,以便在导入时执行。 mymain
正在导入的所有其他文件也应该在 modules
目录中。构建代码后,所有必需的文件都将包含在二进制文件中。