承接上文将c函数绑定到micropython 后,我们进行下一步工作
在 将Micropython嵌入Arduino项目 中我们定义了一个执行micropython代码的函数mp_embed_exec_str(const char* example_code)
接下来我们需要搭建一个网页,在网页端输入micropython代码后可以传输到esp32中执行,并获得一定的信息反馈
难点在于将micropython执行命令语句后返回的结果返回到网页,我取了点巧,只将部分需要的函数返回结果返回到网页中
在文本输入框中输入micropython代码,点击submit执行(只实现了部分built_in代码)
在“将c函数绑定到micropython”中我新添加了两个函数:getvalue(channelNo)
和setvalue(channelNo,val)
注意:这两个函数中的参数channelNo都是从0开始计数的
参考代码
print('hello')
getvalue(0) #读取channel 0 的值
setvalue(0,1) #向channel 0 中写入1
在测试中,我只开启了2个Sensors,所以channels数组的大小为2,值分别为:
channels[0]=0;
channels[1]=6.0;
print('hello')
print('hello'
getvalue(1)
getvalue(2)
servalue(1,1.2)
servalue(2,1.2)
已上传gitlab仓库
http://www.jtext.cn:23080/zhdyz/neoplc-plus
Sensor文件在CustomSensor/mpyEmbed下
micropython embed库在micropython_embed/lib下
本文章使用limfx的vscode插件快速发布