当前位置:首页 > 项目 > Wpython > 正文内容

micrpython编译javascript版

Watrt2年前 (2022-06-22)Wpython12120

1、首先安装emsdk

git clone https://github.com/emscripten-core/emsdk.git
cd <path-to-emsdk>
git pull
./emsdk install latest
./emsdk activate latest
source ./emsdk_env.sh

2、获取micropython源码

git clone --recursive  https://github.com/micropython/micropython.git
cd micropython
make
make min

3、Node.js 测试

node build/micropython.js

4、在html中测试

<html>

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <script src="build/micropython.js"></script>

</head>

<body>
  <div><textarea id="cmd" cols="100%" rows="10">
import display_driver
import lvgl as lv
# Create a button with a label
scr = lv.obj()
btn = lv.btn(scr)
btn.align(lv.ALIGN.CENTER, 0, 0)
label = lv.label(btn)
label.set_text('Hello World!')
lv.scr_load(scr)</textarea><button id="cmdbtn">运行</button></div>
  <pre id="mp_js_stdout" style="background-color:#000000;color: #ffffff;"></pre>
  <script>
    var cmd = document.getElementById("cmd").value;
    setTimeout(function () {
      document.getElementById('mp_js_stdout').addEventListener('print', function (e) {
        document.getElementById('mp_js_stdout').innerText += e.data;
      }, false);

      mp_js_init(64 * 1024);
      mp_js_do_str("help()");
    }, 1000);
    var cmdbtn = document.getElementById("cmdbtn")
    cmdbtn.onclick = function () {
      cmd = document.getElementById("cmd").value;
      mp_js_do_str(cmd);
      console.log(cmd);
    }


  </script>
</body>


</html>


我编译好可以运行的文件:

micropython_javascript.zip


111.jpg

分享给朋友:

相关文章

wpython_GUI 1.6板子回来了

wpython_GUI 1.6板子回来了

板子打出来了。小的元件已经SMT好了,大的元件我已经自己手焊好了,先给大家看看样板两个LED因为出于成本的原因是单面贴,双面太贵了,而且感觉不重要就先没有焊正面,大体算正常吧,但是也现在了两个BUG,还是缺少经验。1、ESP32的IO36脚和IO39脚,只支持输入模式,而且没有内部上拉,所以要外挂上拉,这点在画板的时间 没有想到。目前使用的是补焊两个电阻补救上(KEY_A、KEY_B)。2、还有一个就是屏的背景使用的是S8050当做背光开关,结果发现在虽然可以过通IO来控制引脚,但是背景电压太低...

LVGL_micropython 模拟器

LVGL_micropython 模拟器

在使用micropython编写lvgl界面时有时间非常的麻烦。要在设备上才看得到效果。比较麻烦。npx的GUI-Guider软件中的模拟器给抠出来了单独使用,非常不错。下面是运行实例:import SDL import utime as time import usys as sys import lvgl as lv import lodepng as p...

micropython 实现文件下载保存到本地

micropython 实现文件下载保存到本地

import sys import gc import ussl import usocket gc.collect() debug = False index_urls = ["https://micropython.org/pi", "https://pypi.org/pypi"] install_path = None c...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。