一说到国产操作系统,可能很多同学会觉得根本就没有这种东西。但是实际上,国内有很多优秀的国产操作系统,虽然有些并不是供普通消费者使用的,但是它们都各有特色,并且有些系统在其专业细分领域使用率已经很高了,今天推荐的 LuatOS 就是这样一款物联网操作系统。
项目名称:LuatOS
项目作者:Wendal
开源许可协议:MIT
LuatOS 是运行在嵌入式硬件的实时操作系统,只需要少量内存的 flash 空间就能运行,用户编写 lua 代码就可完成各种功能。
- 基于Lua 5.3.5
- 低内存需求, 最低32kb, 96kb flash空间
- 硬件抽象层兼容M3/arm/risc-v等
- 可测试,可模拟(qemu)
- 在线升级
- 可裁剪,可扩展
总体架构
代码示例节选
local sys = require("sys") sys.subscribe("WLAN_READY", function () print("!!! wlan ready event !!!") -- 马上进行时间同步 socket.ntpSync() end) disp.init("ssd1306") display_str("Booting ...") -- 配网回调 sys.subscribe("WLAN_PW_RE", function(ssid, password) if ssid then log.info(TAG, "airkiss GOT", ssid, password) local conf = {ssid=ssid,password=password} json.encodeFile(conf, "/wlan.json") else log.info(TAG, "airkiss fail") end end) -- 业务流程, 联网后定时发送温度数据到服务器 sys.taskInit(function() while 1 do if wlan.ready() == 1 then sys.wait(1000) local temp = (sensor.ds18b20(28) or "") display_str("Temp: " .. temp .. " rssi:" .. tostring(wlan.rssi())) local t = {"GET /api/w60x/report/ds18b20?mac=", wlan.get_mac(), "&temp=", temp, " HTTP/1.0\r\n", "Host: site0.cn\r\n", "User-Agent: LuatOS/0.1.0\r\n", "\r\n"} socket.tsend("site0.cn", 80, table.concat(t)) log.info("network", "tsend complete, sleep 5s") sys.wait(5000) else log.warn("main", "wlan is not ready yet") sys.waitUntil("WLAN_READY", 30000) end end end) -- 主循环, 必须加 sys.
项目地址:https://gitee.com/wendal/LuatOS
如果你想要认识更多国产开源操作系统,可以点击了解更多看看。
到此这篇lua 开源项目_lua游戏脚本自动打怪的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/luakf/1972.html