分页: 1 / 1

micropython运行mpy文件问题

发表于 : 2021年 7月 22日 20:19
无名1992
按照RT-THREAD官方的移植,在自己的板子上运行python。micropython可以运行py文件了,文件名是test.py,但是通过mpy-cross将py文件编译成mpy文件后,在命令行界面import test正常,下一步执行test.ttt(),会报错name not defined。请问各位这是哪里导致的,工程代码需要改哪个地方?谢谢文件内容是一个简单的打印:   
def ttt():
        print("12345")

Re: micropython运行mpy文件问题

发表于 : 2021年 7月 22日 21:32
shaoziyang
不编译时是正常的吗?

Re: micropython运行mpy文件问题

发表于 : 2021年 7月 23日 08:44
无名1992
是的,只是运行py文件的话是完全正常的。编译成mpy文件后(test.mpy),执行import test也正常,然后我在命令行界面输入test.t然后按Tab键,能够自动补齐test.ttt,所以感觉解释器已经把npy文件解析出来了。但是我继续执行test.ttt()就会报错
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "test.py", line 2, in ttt
NameError: name not defined

Re: micropython运行mpy文件问题

发表于 : 2021年 7月 23日 08:46
shaoziyang
先看看micropython版本是不是最新版本,可以在其它板子上也试试,确定一下是mpy-cross问题,rtt移植的问题,还是micropython的bug。

Re: micropython运行mpy文件问题

发表于 : 2021年 7月 23日 09:57
Ediwin
可能是UTF-8的问题
mpy-cross-amd64.exe -mno-unicode text.py
 

Re: micropython运行mpy文件问题

发表于 : 2021年 7月 23日 11:56
无名1992
我有个nucleo-h743zi的板子,我想编译一下micropython官方的移植试一下的,现在板子可以正常跑,想问一下您,怎么把mpy文件下载到板子里面
 

Re: micropython运行mpy文件问题

发表于 : 2021年 7月 23日 12:09
无名1992
Ediwin 写了:
2021年 7月 23日 09:57
可能是UTF-8的问题
mpy-cross-amd64.exe -mno-unicode text.py
 

 
试了一下,不是这个问题。这样编译的话,import的时候就提示ValueError: incompatible .mpy file了
 

Re: micropython运行mpy文件问题

发表于 : 2021年 7月 23日 21:07
15268026301
应该是rtt不支持mpy