gpt4 book ai didi

python - Micropython 1.9.3 - 如何将 .py @micropython.native 代码编译成 .mpy?

转载 作者:行者123 更新时间:2023-11-28 18:18:06 27 4
gpt4 key购买 nike

我在 Micropython 1.9.3 .我知道如何使用 mpy-cross.py 转换为可以由 Micropython 虚拟机执行的已编译 python .mpy

问题是,如果我尝试使用 @micropython.native 进行编译,即将 Python 脚本编译为 native 代码而不是字节码,我会收到一个错误:

../../mpy-cross/mpy-cross -o build/frozen_mpy/./frozentest.mpy -s frozentest.py  frozentest.py

ValueError: can only save bytecode

在下面的.py

@micropython.native
def native_add(a,b):
return (a+b)

c = native_add(2342,4542)

问题

难道不能以.mpy格式嵌入原生代码吗?我错过了 mpy-cross/mpconfigport.h 中的某些选项吗? ?

我唯一改变的是:

#define MICROPY_EMIT_THUMB (0)//将其更改为 1

最佳答案

我从 micropython forum 上的某人那里得到了答案:

You cannot. It is an TODO item. If you want to put it into flash memory, you can embed it as frozen source code in some ports. Just put these files in a subdirectory called scripts, like esp8266/scripts or stm32/scripts. But it will still be compiled at import time and consume RAM. Typically, that should not hurt, when this variant of coding is used only for small, time-critical sections of the code.

关于python - Micropython 1.9.3 - 如何将 .py @micropython.native 代码编译成 .mpy?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47127671/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com