LUA开发基础知识,移步<这里>。
-
关于数据类型,
LUA
只有table
表(数组+字符串), 并且下标还是从1
开始的! -
"~="
这个在LUA
中才是不等于号 -
LUA只要赋值一个变量,这个变量就自动定义为全局变量了!
-
没有连
+
比如+=
。 -
for
的两种写法
--遍历tab获取键值对
--No.1
for k, v in pairs(tab) do
print(k .. " - " .. v)
end
--No.2
for i=1, 10 do
print(a[i])
end
-
对多变量赋值要进行依次赋值。
-
特别注意,当索引是字符串类型的时候,才能去掉引号,直接用点。
a = {}
a["key"] = "key"
print(a["key"])
print(a.key)
- string.char(arg) 和 string.byte(arg[,int])
- char 将整型数字转成字符并连接
- byte 转换字符为整数值(可以指定某个字符,默认第一个字符)。
print(string.char(97,98,99,100))
>abcd
print(string.byte("ABCD",2)) --B的ASCII是66
>66
print(string.byte("ABCD")) --A的ASCII是65
>65
- 获取数据中某一位的方法
data:byte(×)
data = "ABCD"
print(data:byte(4))
>68
if Mode:byte(1) == 48 then
print("Wifi MODE: SOFTAP")
wifi.setmode(wifi.SOFTAP)
elseif Mode:byte(1) == 49 then
print("Wifi MODE: STATION")
wifi.setmode(wifi.STATION)
else
print("Wifi MODE: STATIONAP")
wifi.setmode(wifi.STATIONAP)
end
-
uart.on (×)
表示串口接收数据监听函数,注意之间是点不要与前面的:
搞混淆了! -
socket:close()
中的close
是一个函数,需要加括号的! -
uart.write(0,data)
使用的时候,要特别声明是串口0! -
LUA
的条件分支
if(条件) then
..
end
elseif(条件) then
..
end
else
..
end
-
UdpSocket:on("receive", function(socket, data, port, ip)
此处的socket
以及data
参数在前面 -
UdpSocket:send(ConnectPort, ConnectIP, data)
data
参数在后面 -
string.len
获取字符串的长度 -
string.sub
截取字符串的部分