推荐一个支持js的嵌入式设备开发平台

可以通过vscode开发js,实时推送js代码到设备里运行,无需编译,支持屏幕,感兴趣的可以看看 https://github.com/duoxianwulian/dxdop
提供很多js库,可以控制gpio,pwm,蓝牙,nfc,二维码识别,人脸识别,网络,mqtt,tcp,看门狗,ui等等,支持多线程
也支持多种设备。
以下是一个代码示例和效果图示例

点击查看代码
import log from '../dxmodules/dxLogger.js'
import driver from './driver.js'
import std from '../dxmodules/dxStd.js'
import mqtthandler from './mqtthandler.js'
import codehandler from './codehandler.js'
const worker = 'service'
function run() {
    driver.initService()
    driver.mqtt.on(function (data) { mqtthandler.invoke(data) })
    driver.mqtt.onConnectChanged(function (data) { mqtthandler.connectChanged(data) })
    driver.code.on(function (data) { codehandler.invoke(data) })
    driver.net.on(function (data) { mqtthandler.netInvoke(data) })

    std.setInterval(() => {
        try {
            driver.loop()
            driver.code.loop()
            driver.watchdog.feed(worker, 30)
        } catch (error) {
            log.error(error)
        }
    }, 10)
}


try {
    run()
} catch (error) {
    log.error(error)
}


平台概述

dxdop是一个嵌入式二次开发软件平台,它使用JS语言作为主开发语音,减少开发成本,降低开发难度,愿景是让嵌入式开发变的很简单,它应用在许多终端场景有着出色的表现。

功能丰富

gpio、pwm、rs485、rs232、usb、wiegand、capturer、net、watchdog、alsa等硬件控制
tcp、tcpserver、mqtt、udp、http、webserver网络协议
可以用JS绘制LVGL屏幕UI,支持所有LVGL原生能力
有着丰富的外设接入(刷卡、指纹、蓝牙、人脸识别)、加解密(base64、aes、md5、hmac、crc、bcc)等配套组件库
支持植入原生C库的方式开发
硬件环境

目前平台仅适配 酷豆物联设备 做二次开发。
工具和服务

使用VScode && DXIDE 插件 开发调试

包含 UI组件示例 、 驱动组件示例 以及 组件源码,开源项目demo

🚀 技术背景
平台以Linux、quickjs、LVGL为基础框架支撑,提高开发效率的同时,保有超高的运行效率。

Linux:具备Linux系统进程、线程、资源调度能力

quickjs:支持 ES2023规范,且小巧快速的JS引擎,具备异步

LVGL:LVGL 是最流行的免费开源嵌入式图形库,可以使用JS轻松绘制漂亮的UI