LuatOS ——運行在嵌入式硬件的實時操作系統,開啟全新物聯網生態。
聚焦嵌入式應用生態,內置功能可支持絕大多數物聯網應用場景。深度整合Lua語言,只需少量內存和Flash空間就能運行。不局限於合宙產品,不局限於通信模塊,更注重各軟硬件平台的可移植性。
LuatOS全新在線模擬器,可快速體驗開發流程、熟悉開發接口,無需硬件設備、無需軟件設置,隨時隨地發揮創意,在線實驗即刻實現!
復制鏈接至瀏覽器,即可使用:
https://wiki.luatos.com/pages/emulator.html
在線模擬示例:點燈
通過在線運行以下代碼,即可實現上圖點燈效果。可以根據自己想要的各種點燈效果,修改代碼嘗試。
\--加載sys庫
sys = require("sys")
\-- 設置gpio1為輸出模式,初始狀態為低電平,返回的led1為控制gpio的函數
led1 = gpio.setup(1,0,gpio.PULLUP)
\-- 設置gpio1為高電平,點亮led1
led1(1)
\-- 設置gpio2為輸出模式,初始狀態為低電平,返回的led1為控制gpio的函數
led2 = gpio.setup(2,0,gpio.PULLUP)
\-- 記錄上次的led狀態
local last = false
\-- 一秒改變一次led2的狀態
sys.timerLoopStart(function()
led2(last and 0 or 1)\-- 根據上次狀態決定是否亮燈
log.info("led2",last)
last = not last\--更改狀態標志
end,1000)
\-- 用戶代碼已結束--
\-- 運行lua task,只能調用一次,而且必須寫在末尾
\-- 結尾總是這一句
sys.run()
\-- sys.run()之后后面不要加任何語句!!!!!
在線模擬示例:PWM控制轉速
通過在線運行以下代碼,即可實現上圖PWM轉速控制效果。可根據所需,調整相關參數以實現不同轉速。
\--加載sys庫
sys = require("sys")
\-- 打開PWM0, 頻率1kHz, 占空比1%
pwm.open(0, 1000, 1)
\--開個任務,讓pwm轉速慢慢增大后,循環
sys.taskInit(function()
local speed = 0
while true do
speed = speed + 10
if speed > 100 then speed = 0 end
log.info("pwm","speed now",speed,"%")
pwm.open(0, 1000, speed)
sys.wait(5000)
end
end)
\--不用的時候應該關掉
\--pwm.close(0)
\-- 用戶代碼已結束--
\-- 運行lua task,只能調用一次,而且必須寫在末尾
\-- 結尾總是這一句
sys.run()
\-- sys.run()之后后面不要加任何語句!!!!!
更多示例,請通過LuatOS在線模擬器體驗:
https://wiki.luatos.com/pages/emulator.html
我們也為普通的Lua開發,提供了在線的交互調試工具:
https://wiki.luatos.com/_static/repl/index.html
隨時隨地,發揮你的靈感創意吧~