diff --git a/README.html b/README.html
deleted file mode 100644
index 6ec3d874d8..0000000000
--- a/README.html
+++ /dev/null
@@ -1,1238 +0,0 @@
-
nodeMcu API说明
-English Version
-版本 0.9.2 build 2014-11-20
-
-变更日志:
-2014-11-20
-修正tmr.delay,支持2s以上的延时,但是长延时可能会引起beacon timer out,导致与AP之间重新连接。
-增加tmr.wdclr(),用来重置看门狗计数器,用在长循环中,以防芯片因看门狗重启。
-修正net模块UDP无法连接问题。
-createServer(net.TCP, timeout)函数增加连接超时参数设置。
-2014-11-19
-增加adc模块,adc.read(0)读取adc的值。
-wifi模块增加wifi.sta.getap() 函数,用于获取ap列表。
-2014-11-18
-修正tcp服务器不能使用:close()函数关闭tcp连接的问题。
-tcp服务器: 服务器将关闭30s内未使用的闲置的连接。(修正前为180s)
-增加了函数node.input()用来向lua解释器输入lua代码段, 支持多行输入。
-增加了函数node.ouput(function)用来将串口输出重定向于回调函数。
-file.readline()函数返回值包含了EOL’\n’, 当读到EOF时,返回nil。
-2014-11-12
-全功能版本固件
-2014-11-11
-文件模块中增加了file.seek()函数。
-最多支持6个PWM输出。
-2014-11-10
-log模块更名为file模块
-文件操作支持多次读写。
-当前仅支持打开一个文件进行操作。
-2014-11-5
-node模块中删除了log函数。
-增加了log模块。
-修改wifi模块的函数。
-修改了node.key长按与短按的默认回调函数。
-只有当按钮被松开后,key才会被触发。
-flash 错误
-注意:有些模块在烧写之后启动,串口输出 ERROR in flash_read: r=。。。
-这是因为模块原来的flash内部没有擦除。
-可使用blank512k.bin,
-内容为全0xFF,从0x00000开始烧入。
-烧入之后可以正常运行。
-概述
-
-- 快速、自动连接无线路由器
-- 基于Lua 5.1.4,使用者需了解最简单的Lua语法
-- 采用事件驱动的编程模型
-- 内置file, timer, pwm, i2c, net, gpio, wifi模块
-- 串口波特率:9600-8N1
-- 对模块的引脚进行编号;gpio,i2c,pwm等模块需要使用引脚编号进行索引
-- 目前的编号对应表格:
-
-
-
- IO index | ESP8266 pin | IO index | ESP8266 pin |
-
-
- 0 | GPIO12 | 8 | GPIO0 |
-
-
- 1 | GPIO13 | 9 | GPIO2 |
-
-
- 2 | GPIO14 | 10 | GPIO4 |
-
-
- 3 | GPIO15 | 11 | GPIO5 |
-
-
- 4 | GPIO3 | | |
-
-
- 5 | GPIO1 | | |
-
-
- 6 | GPIO9 | | |
-
-
- 7 | GPIO10 | |
-
-
-
-固件烧写
-地址
-nodemcu_512k.bin: 0x00000
-node模块
-
-node.restart()
-描述
-重新启动
-语法
-node.restart()
-参数
-nil
-返回值
-nil
-示例
-
-
-
-参见
--
-
-node.dsleep()
-描述
-进入睡眠模式,计时时间之后唤醒
-语法
-node.dsleep(us)
--注意: 如需使用此功能,需要将esp8266的PIN32(RST)和PIN8(XPD_DCDC)短接。
-参数
-us: 睡眠时间,单位:us
-返回值
-nil
-示例
-
-
-
-参见
--
-
-node.chipid()
-描述
-返回芯片ID
-语法
-node.chipid()
-参数
-nil
-返回值
-number:芯片ID
-示例
-
-
-
-参见
--
-
-node.heap()
-描述
-返回当前系统剩余内存大小,单位:字节
-语法
-node.heap()
-参数
-nil
-返回值
-number: 系统剩余内存字节数
-示例
- heap_size = node.heap();
-
-
-
-参见
--
-
-node.key()
-描述
-定义按键的功能函数, 按键与GPIO16相连。
-语法
-node.key(type, function())
-参数
-type: type取字符串”long”或者”short”. long:按下按键持续3s以上, short: 短按按键(时间短于3s)
-function(): 用户自定义的按键回调函数。 如果为nil, 则取消用户定义的回调函数。
-默认函数:long:改变LED闪烁频率,short:重新启动。
-返回值
-nil
-示例
- node.key("long", function(){print('hello world')})
-
-
-
-参见
--
-
-node.led()
-描述
-设置LED的亮/暗时间, LED连接到GPIO16, 与node.key()复用。
-语法
-node.led(low, high)
-参数
-Low: LED关闭时间,如设置为0,则LED处于常亮状态。单位:毫秒,时间分辨率:80~100ms
-High: LED打开时间,单位:毫秒,时间分辨率:80~100ms
-返回值
-nil
-示例
- -- LED常亮.
- node.led(0);
-
-
-
-参见
--
-
-
-描述
-接收字符串并将字符串传入lua解释器。
-功能同pcall(loadstring(str)),增加了支持多行输入的功能。
-语法
-node.input(str)
-参数
-str: Lua代码段
-返回值
-nil
-示例
- -- 注意:该函数不支持在命令行中使用。
- sk:on("receive", function(conn, payload) node.input(payload) end)
-
-
-
-参见
--
-
-node.output()
-描述
-将lua解释器输出重定向于回调函数。
-语法
-node.output(function(str), serial_debug)
-参数
-function(str): 接收lua解释器输出的str作为输入,可以将该输出通过socket发送。
-serial_debug: 1:将输出送至串口; 0:输出不送至串口
-返回值
-nil
-示例
- function tonet(str)
- sk:send(str)
- -- print(str) 错误!!! 千万不要在此函数中再使用print函数
- -- 因为这样会导致函数的嵌套调用!!
- end
- node.ouput(tonet, 1) -- serial also get the lua output.
-
-
-
-参见
--
-file 模块
-
-file.remove()
-描述
-删除文件。
-语法
-file.remove(filename)
-参数
-filename: 需要删除的文件。
-返回值
-nil
-示例
- -- 删除foo.lua文件
- file.remove("foo.lua")
-
-
-
-参见
-- file.open()
-- file.close()
-
-file.open()
-描述
-打开文件。
-语法
-file.open(filename, mode)
-参数
-filename: 需要打开的文件,不支持文件夹。
-mode:
- “r”: read mode (the default)
- “w”: write mode
- “a”: append mode
- “r+”: update mode, 文件内的数据保留
- “w+”: update mode, 文件内的数据清除
- “a+”: append update mode, 文件内的数据保留,要写入的数据仅能增加在文件最后。
-返回值
-nil
-示例
- -- 打开'init.lua',并打印文件的第一行。
- file.open("init.lua", "r")
- print(file.readline())
- file.close()
-
-
-
-参见
-- file.close()
-- file.readline()
-
-file.close()
-描述
-关闭文件。
-语法
-file.close()
-参数
-nil
-返回值
-nil
-示例
- -- 打开'init.lua',并打印文件的第一行,然后关闭文件。
- file.open("init.lua", "r")
- print(file.readline())
- file.close()
-
-
-
-参见
-- file.open()
-- file.readline()
-
-file.readline()
-描述
-读取文件的一行。
-语法
-file.readline()
-参数
-nil
-返回值
-逐行返回文件内容。返回值末尾包含EOL(‘\n’)
-如果读到EOF返回nil。
-示例
- -- 打开'init.lua',读取并打印文件的第一行,然后关闭文件。
- file.open("init.lua", "r")
- print(file.readline())
- file.close()
-
-
-
-参见
-- file.open()
-- file.close()
-
-file.writeline()
-描述
-向文件写入一行,行末尾增加’\n’。
-语法
-file.writeline(string)
-参数
-string: 需要写入的字符串
-返回值
-true: 写入成功
-nil: 写入失败
-示例
- -- 以'a+'的模式打开'init.lua'
- file.open("init.lua", "a+")
- -- 将'foo bar'写到文件的末尾
- file.writeline('foo bar')
- file.close()
-
-
-
-参见
-- file.open()
-- file.write()
-
-file.write()
-描述
-向文件写入字符串。
-语法
-file.write(string)
-参数
-string: 需要写入的字符串
-返回值
-true: 写入成功
-nil: 写入失败
-示例
- -- 以'a+'的模式打开'init.lua'
- file.open("init.lua", "a+")
- -- 将'foo bar'写到文件的末尾
- file.writeline('foo bar')
- file.close()
-
-
-
-参见
-- file.open()
-- file.writeline()
-
-file.flush()
-描述
-清空缓存写入文件。
-语法
-file.flush()
-参数
-nil
-返回值
-nil
-示例
- -- 以'a+'的模式打开'init.lua'
- file.open("init.lua", "a+")
- -- 将'foo bar'写到文件的末尾
- file.write('foo bar')
- file.flush()
- file.close()
-
-
-
-参见
-- file.open()
-- file.writeline()
-
-file.seek()
-描述
-设置或者读取文件的读写位置,位置等于whence加上offset的值。
-语法
-file.seek(whence, offset)
-参数
-whence:
-“set”: base is position 0 (beginning of the file);
-“cur”: base is current position;(default value)
-“end”: base is end of file;
-offset: default 0
-返回值
-成功: 返回当前的文件读写位置
-失败: 返回nil
-示例
- -- 以'a+'的模式打开'init.lua'
- file.open("init.lua", "a+")
- -- 将'foo bar'写到文件的末尾
- file.write('foo bar')
- file.flush()
- --将文件读写位置设置在文件开始
- file.seek("set")
- --读取并打印文件的第一行
- print(file.readline())
- file.close()
-
-
-
-参见
-- file.open()
-- file.writeline()
-
-file.list()
-描述
-显示所有文件。
-语法
-file.list()
-参数
-nil
-返回值
-返回包含{文件名:文件大小}的lua table
-示例
- l = file.list();
- for k,v in pairs(l) do
- print("name:"..k..", size:"..v)
- end
-
-
-
-参见
-- file.remove()
-wifi模块
-常量
-wifi.STATION, wifi.SOFTAP, wifi.STATIONAP
-
-wifi.setmode(mode)
-描述
-设置wifi的工作模式。
-语法
-wifi.setmode(mode)
-参数
-mode: 取值为:wifi.STATION, wifi.SOFTAP or wifi.STATIONAP
-返回值
-返回设置之后的mode值
-示例
- wifi.setmode(wifi.STATION)
-
-
-
-参见
-- wifi.getmode()
-
-wifi.getmode(mode)
-描述
-获取wifi的工作模式。
-语法
-wifi.getmode()
-参数
-nil
-返回值
-返回wifi的工作模式
-示例
-
-
-
-参见
-- wifi.setmode()
-
-wifi.startsmart()
-描述
-开始自动配置,如果配置成功自动设置ssid和密码。
-语法
-wifi.startsmart(channel, function succeed_callback())
-参数
-channel: 1~13, 启动寻找的初始频段,如果为nil默认值为6频段。每个频段搜寻20s。
-succeed_callback: 配置成功的回调函数,配置成功并连接至AP后调用此函数。
-返回值
-nil
-示例
- wifi.startsmart(6, cb())
-
-
-
-参见
-- wifi.stopsmart()
-
-wifi.stopsmart()
-描述
-停止配置。
-语法
-wifi.stopsmart()
-参数
-nil
-返回值
-nil
-示例
-
-
-
-参见
-- wifi.startsmart()
-wifi.sta 子模块
-
-wifi.sta.config()
-描述
-设置station模式下的ssid和password。
-语法
-wifi.sta.config(ssid, password)
-参数
-ssid: 字符串,长度小于32字节。
-password: 字符串,长度小于64字节。
-返回值
-nil
-示例
- wifi.sta.config("myssid","mypassword")
-
-
-
-参见
-- wifi.sta.connect()
-- wifi.sta.disconnect()
-
-wifi.sta.connect()
-描述
-station模式下连接AP。
-语法
-wifi.sta.connect()
-参数
-nil
-返回值
-nil
-示例
-
-
-
-参见
-- wifi.sta.disconnect()
-- wifi.sta.config()
-
-wifi.sta.disconnect()
-描述
-station模式下与AP断开连接。
-语法
-wifi.sta.disconnect()
-参数
-nil
-返回值
-nil
-示例
-
-
-
-参见
-- wifi.sta.config()
-- wifi.sta.connect()
-
-wifi.sta.autoconnect()
-描述
-station模式下自动连接。
-语法
-wifi.sta.autoconnect(auto)
-参数
-auto: 0:取消自动连接,1:使能自动连接。
-返回值
-nil
-示例
-
-
-
-参见
-- wifi.sta.config()
-- wifi.sta.connect()
-- wifi.sta.disconnect()
-
-wifi.sta.getip()
-描述
-station模式下获取ip
-语法
-wifi.sta.getip()
-参数
-nil
-返回值
-ip地址字符串,如:”192.168.0.111”
-示例
- -- print current ip
- print(wifi.sta.getip())
-
-
-
-参见
-- wifi.sta.getmac()
-
-wifi.sta.getmac()
-描述
-station模式下获取mac地址。
-语法
-wifi.sta.getmac()
-参数
-nil
-返回值
-mac地址字符串,如:”18-33-44-FE-55-BB”
-示例
- -- 打印当前的mac地址
- print(wifi.sta.getmac())
-
-
-
-参见
-- wifi.sta.getip()
-
-wifi.sta.getap()
-描述
-扫描并列出ap,结果以一个lua table为参数传递给回调函数。
-语法
-wifi.sta.getap(function(table))
-参数
-function(table): 当扫描结束时,调用此回调函数
- 扫描结果是一个lua table,key为ap的ssid,value为其他信息,格式:authmode,rssi,bssid,channel
-返回值
-nil
-示例
- -- print ap list
- function listap(t)
- for k,v in pairs(t) do
- print(k.." : "..v)
- end
- end
- wifi.sta.getap(listap)
-
-
-
-参见
-- wifi.sta.getip()
-wifi.ap 子模块
-
-wifi.ap.config()
-描述
-设置ap模式下的ssid和password
-语法
-wifi.ap.config(cfg)
-参数
-cfg: 设置AP的lua table
-示例:
- cfg={}
- cfg.ssid="myssid"
- cfg.pwd="mypwd"
- wifi.ap.setconfig(cfg)
-
-
-
-返回值
-nil
-示例
- wifi.ap.config(ssid, 'password')
-
-
-
-参见
--
-
-wifi.ap.getip()
-描述
-ap模式下获取ip
-语法
-wifi.ap.getip()
-参数
-nil
-返回值
-ip地址字符串,如:”192.168.0.111”
-示例
-
-
-
-参见
-- wifi.ap.getmac()
-
-wifi.ap.getmac()
-描述
-ap模式下获取mac地址。
-语法
-wifi.ap.getmac()
-参数
-nil
-返回值
-mac地址字符串,如:”1A-33-44-FE-55-BB”
-示例
-
-
-
-参见
-- wifi.ap.getip()
-timer 模块
-
-tmr.delay()
-描述
-延迟us微秒。
-语法
-tmr.dealy(us)
-参数
-us: 延迟时间,单位:微秒
-返回值
-nil
-示例
- -- delay 100us
- tmr.delay(100)
-
-
-
-参见
-- tmr.now()
-
-tmr.now()
-描述
-返回系统计数器的当前值,uint32,单位:us。
-语法
-tmr.now()
-参数
-nil
-返回值
-uint32: value of counter
-示例
- -- 打印计数器的当前值。
- print(tmr.now())
-
-
-
-参见
-- tmr.delay()
-
-tmr.alarm()
-描述
-闹钟函数。
--注意: 只能允许存在一个闹钟,如果在调用tmr.stop()之前重复调用tmr.alarm(),以最后一次设置的为准,此前定义的闹钟都将失效。
-语法
-tmr.alarm(interval, repeat, function do())
-参数
-Interval: 定时时间,单位:毫秒。
-repeat: 0:一次性闹钟;1:重复闹钟。
-function do(): 定时器到时回调函数。
-返回值
-nil
-示例
- -- 每1000ms输出一个hello world
- tmr.alarm(1000, 1, function() print("hello world") end )
-
-
-
-参见
-- tmr.now()
-
-tmr.stop()
-描述
-停止闹钟功能。
-语法
-tmr.stop()
-参数
-nil.
-返回值
-nil
-示例
- -- 每隔1000ms打印hello world
- tmr.alarm(1000, 1, function() print("hello world") end )
-
- -- 其它代码
-
- -- 停止闹钟
- tmr.stop()
-
-
-
-参见
-- tmr.now()
-
-tmr.wdclr()
-描述
-清除看门狗计数器。
-语法
-tmr.wdclr()
-参数
-nil.
-返回值
-nil
-示例
- for i=1,10000 do
- print(i)
- tmr.wdclr() -- 一个长时间的循环或者事务,需内部调用tmr.wdclr() 清楚看门狗计数器,防止重启。
- end
-
-
-
-参见
-- tmr.delay()
-GPIO 模块
-常量
-gpio.OUTPUT, gpio.INPUT, gpio.INT, gpio.HIGH, gpio.LOW
-
-gpio.mode()
-描述
-将pin初始化为GPIO并设置输入输出模式。
-语法
-gpio.mode(pin, mode)
-参数
-pin: 0~11, IO编号
-mode: 取值为:gpio.OUTPUT or gpio.INPUT, or gpio.INT(中断模式)
-返回值
-nil
-示例
- -- 将GPIO0设置为输出模式
- gpio.mode(0, gpio.OUTPUT)
-
-
-
-参见
-- gpio.read()
-
-gpio.read()
-描述
-读取管脚电平高低。
-语法
-gpio.read(pin)
-参数
-pin: 0~11, IO编号
-返回值
-number:0:低电平, 1:高电平。
-示例
- -- 读取GPIO0的电平
- gpio.read(0)
-
-
-
-参见
-- gpio.mode()
-
-gpio.write()
-描述
-设置管脚电平
-语法
-gpio.write(pin)
-参数
-pin: 0~11, IO编号
-level: gpio.HIGH or gpio.LOW
-返回值
-nil
-示例
- -- 设置GPIP1为输出模式,并将输出电平设置为高
- pin=1
- gpio.mode(pin, gpio.OUTPUT)
- gpio.write(pin, gpio.HIGH)
-
-
-
-参见
-- gpio.mode()
-- gpio.read()
-
-gpio.trig()
-描述
-设置管脚中断模式的回调函数。
-语法
-gpio.trig(pin, type, function(level))
-参数
-pin: 0~11, IO编号
-type: 取值为”up”, “down”, “both”, “low”, “high”, 分别代表上升沿、下降沿、双边沿、低电平、高电平触发方式。
-function(level): 中断触发的回调函数,GPIO的电平作为输入参数。如果此处没有定义函数,则使用之前定义的回调函数。
-返回值
-nil
-示例
- -- 使用GPIO0检测输入脉冲宽度
- pulse0 = 0
- du = 0
- gpio.mode(0,gpio.INT)
- function pin0cb(level)
- du = tmr.now() – pulse0
- print(du)
- pulse0 = tmr.now()
- if level == 1 then gpio.trig(0, "down ") else gpio.trig(0, "up ") end
- end
- gpio.trig(0, "down ",pin0cb)
-
-
-
-参见
-- gpio.mode()
-- gpio.write()
-PWM模块
-
-pwm.setup()
-描述
-设置管脚为pwm模式,最多支持6个pwm。
-语法
-pwm.setup(pin, clock, duty)
-参数
-pin: 0~11, IO编号
-clock: 1~500, pwm频率
-duty: 0~100, pwm占空比,百分比表示。
-返回值
-nil
-示例
- -- 将管脚0设置为pwm输出模式,频率100Hz,占空比50-50
- pwm.setup(0, 100, 50)
-
-
-
-参见
-- pwm.start()
-
-pwm.close()
-描述
-退出pwm模式。
-语法
-pwm.close(pin)
-参数
-pin: 0~11, IO编号
-返回值
-nil
-示例
-
-
-
-参见
-- pwm.start()
-
-pwm.start()
-描述
-pwm启动,可以在对应的GPIO检测到波形。
-语法
-pwm.start(pin)
-参数
-pin: 0~11, IO编号
-返回值
-nil
-示例
-
-
-
-参见
-- pwm.stop()
-
-pwm.stop()
-描述
-暂停pwm输出波形。
-语法
-pwm.stop(pin)
-参数
-pin: 0~11, IO编号
-返回值
-nil
-示例
-
-
-
-参见
-- pwm.start()
-
-pwm.setclock()
-描述
-设置pwm的频率
--Note: 设置pwm频率将会同步改变其他pwm输出的频率,当前版本的所有pwm仅支持同一频率输出。
-语法
-pwm.setclock(pin, clock)
-参数
-pin: 0~11, IO编号
-clock: 1~500, pwm周期
-返回值
-nil
-示例
-
-
-
-参见
-- pwm.getclock()
-
-pwm.getclock()
-描述
-获取pin的pwm工作频率
-语法
-pwm.getclock(pin)
-参数
-pin: 0~11, IO编号
-返回值
-number:pin的pwm工作频率
-示例
-
-
-
-参见
-- pwm.setclock()
-
-pwm.setduty()
-描述
-设置pin的占空比。
-语法
-pwm.setduty(pin, duty)
-参数
-pin: 0~11, IO编号
-duty: 0~100, pwm的占空比,以百分数表示
-返回值
-nil
-示例
-
-
-
-参见
-- pwm.getduty()
-
-pwm.getduty()
-描述
-获取pin的pwm占空比。
-语法
-pwm.getduty(pin)
-参数
-pin: 0~11, IO编号
-返回值
-nil
-示例
- -- D0 连接绿色led
- -- D1 连接蓝色led
- -- D2 连接红色led
- pwm.setup(0,500,50)
- pwm.setup(1,500,50)
- pwm.setup(2,500,50)
- pwm.start(0)
- pwm.start(1)
- pwm.start(2)
- function led(r,g,b)
- pwm.setduty(0,g)
- pwm.setduty(1,b)
- pwm.setduty(2,r)
- end
- led(50,0,0) -- led显示红色
- led(0,0,50) -- led显示蓝色
-
-
-
-参见
-- pwm.setduty()
-net 模块
-常量
-net.TCP, net.UDP
-
-net.createServer()
-描述
-创建一个server。
-语法
-net.createServer(type, timeout)
-参数
-type: 取值为:net.TCP 或者 net.UDP
-timeout: 1~28800, 当为tcp服务器时,客户端的超时时间设置。
-返回值
-net.server子模块
-示例
- net.createServer(net.TCP, 30)
-
-
-
-参见
-- net.createConnection()
-
-net.createConnection()
-描述
-创建一个client。
-语法
-net.createConnection(type, secure)
-参数
-type: 取值为:net.TCP 或者 net.UDP
-secure: 设置为1或者0, 1代表安全连接,0代表普通连接。
-返回值
-net.server子模块
-示例
- net.createConnection(net.UDP, 0)
-
-
-
-参见
-- net.createServer()
-net.server 子模块
-
-listen()
-描述
-侦听指定ip地址的端口。
-语法
-net.server.listen(port,[ip],function(net.socket))
-参数
-port: 端口号
-ip:ip地址字符串,可以省略
-function(net.socket): 连接创建成功的回调函数,可以作为参数传给调用函数。
-返回值
-nil
-示例
- -- 创建一个server
- sv=net.createServer(net.TCP, 30) -- 30s 超时
- -- server侦听端口80,如果收到数据将数据打印至控制台,并向远端发送‘hello world’
- sv:listen(80,function(c)
- c:on("receive", function(sck, pl) print(pl) end)
- c:send("hello world")
- end)
-
-
-
-参见
-- net.createServer()
-
-close()
-描述
-关闭server
-语法
-net.server.close()
-参数
-nil
-返回值
-nil
-示例
- -- 创建server
- sv=net.createServer(net.TCP, 5)
- -- 关闭server
- sv:close()
-
-
-
-参见
-- net.createServer()
-net.socket 子模块
-
-connect()
-描述
-连接至远端。
-语法
-connect(port, ip)
-参数
-port: 端口号
-ip: ip地址字符串
-返回值
-nil
-参见
-- net.socket:on()
-
-send()
-描述
-通过连接向远端发送数据。
-语法
-send(string, function(sent))
-参数
-string: 待发送的字符串
-function(sent): 发送字符串后的回调函数。
-返回值
-nil
-参见
-- net.socket:on()
-
-on()
-描述
-向事件注册回调函数。
-语法
-on(event, function cb())
-参数
-event: 字符串,取值为: “connection”, “reconnection”, “disconnection”, “receive”, “sent”
-function cb(net.socket, [string]): 回调函数。第一个参数是socket.
-如果事件是”receive”, 第二个参数则为接收到的字符串。
-返回值
-nil
-示例
- sk=net.createConnection(net.TCP, 0)
- sk:on("receive", function(sck, c) print(c) end )
- sk:connect(80,"192.168.0.66")
- sk:send("GET / HTTP/1.1\r\nHost: 192.168.0.66\r\nConnection: keep-alive\r\nAccept: */*\r\n\r\n")
-
-
-
-参见
-- net.createServer()
-
-close()
-描述
-关闭socket。
-语法
-close()
-参数
-nil
-返回值
-nil
-参见
-- net.createServer()
-
-dns()
-描述
-获取当前域的ip
-语法
-dns(domain, function(net.socket, ip))
-参数
-domain: 当前域的名称
-function (net.socket, ip): 回调函数。第一个参数是socket,第二个参数是当前域的ip字符串。
-返回值
-nil
-参见
-- net.createServer()
-i2c模块
-常量
-i2c.SLOW, i2c.TRANSMITTER, i2c. RECEIVER. FAST(400k)模式目前不支持。
-
-i2c.setup()
-描述
-初始化i2c。
-语法
-i2c.setup(id, pinSDA, pinSCL, speed)
-参数
-id = 0
-pinSDA: 0~11, IO编号
-pinSCL: 0~11, IO编号
-speed: i2c.SLOW
-返回值
-nil
-参见
-- i2c.read()
-
-i2c.start()
-描述
-启动i2c传输。
-语法
-i2c.start(id)
-参数
-id = 0
-返回值
-nil
-参见
-- i2c.read()
-
-i2c.stop()
-描述
-停止i2c传输。
-语法
-i2c.stop(id)
-参数
-id = 0
-返回值
-nil
-参见
-- i2c.read()
-
-i2c.address()
-描述
-设置i2c地址以及读写模式。
-语法
-i2c.address(id, device_addr, direction)
-参数
-id=0
-device_addr: 设备地址。
-direction: i2c.TRANSMITTER:写模式;i2c. RECEIVER:读模式。
-返回值
-nil
-参见
-- i2c.read()
-
-i2c.write()
-描述
-向i2c写数据。数据可以是多个数字, 字符串或者lua table。
-语法
-i2c.write(id, data1, data2,…)
-参数
-id=0
-data: 数据可以是多个数字, 字符串或者lua table。
-返回值
-nil
-示例
- i2c.write(0, "hello", "world")
-
-
-
-参见
-- i2c.read()
-
-i2c.read()
-描述
-读取len个字节的数据。
-语法
-i2c.read(id, len)
-参数
-id=0
-len: 数据长度。
-返回值
-string:接收到的数据。
-示例
- id=0
- sda=1
- scl=0
-
- -- 初始化i2c, 将pin1设置为sda, 将pin0设置为scl
- i2c.setup(id,sda,scl,i2c.SLOW)
-
- -- 用户定义函数:读取地址dev_addr的寄存器reg_addr中的内容。
- function read_reg(dev_addr, reg_addr)
- i2c.start(id)
- i2c.address(id, dev_addr ,i2c.TRANSMITTER)
- i2c.write(id,reg_addr)
- i2c.stop(id)
- i2c.start(id)
- i2c.address(id, dev_addr,i2c.RECEIVER)
- c=i2c.read(id,1)
- i2c.stop(id)
- return c
- end
-
- -- 读取0x77的寄存器0xAA中的内容。
- reg = read_reg(0x77, 0xAA)
- pirnt(string.byte(reg))
-
-
-
-参见
-- i2c.write()
-adc 模块
-常量
-无
-
-adc.read()
-描述
-读取adc的值,esp8266只有一个10bit adc,id为0,引脚为TOUT,最大值1024
-语法
-adc.read(id)
-参数
-id = 0
-返回值
-adc 值 10bit,最大1024.
-参见
--
\ No newline at end of file
diff --git a/nodemcu_api_cn.md b/nodemcu_api_cn.md
deleted file mode 100644
index 272a39fd57..0000000000
--- a/nodemcu_api_cn.md
+++ /dev/null
@@ -1,1796 +0,0 @@
-# **nodeMcu API说明** #
-[English Version](https://github.com/funshine/nodemcu-firmware/wiki/nodemcu_api_en)
-###版本 0.9.2 build 2014-11-20
-nodeMcu API Instruction
-中文版本
-version 0.9.2 build 2014-11-20
-
-change log:
-2014-11-20
-fix tmr.delay to support more than 2s delay, may cause bacon time out, lost connection to AP.
-add tmr.wdclr to clear watchdog counter in chip, use in long time loop.
-fix UDP part of net module.
-add a timeout para to createServer(net.TCP, timeout).
-2014-11-19
-add adc module, use adc.read(0) to read adc value, no tests made.
-add wifi.sta.getap() api to wifi.sta module, to get ap list.
-2014-11-18
-bug fixed: net.socket:connect() has no effect.
-2014-11-18
-bug fixed: as a tcp server, the connection can’t closed with :close().
-tcp server: inactive connection will closed by server in 30s (previously 180s).
-add a test api node.input() to put lua chunk into lua interpretor, multi-line supported.
-add a test api node.ouput(function) to direct serial output to a callback function.
-file.readline() now returns line include EOL(‘\n’), and returns nil when EOF.
-2014-11-12
-full version firmware
-2014-11-11
-add file.seek() api to file module
-now max 6 pwm channel is supported
-2014-11-10
-change log module to file module
-now file operation support multiple read/write
-for now file module only allowed one file opened
-2014-11-5
-delete log operation api from node module
-add log module
-modify wifi module api
-modify node.key long_press and short_press default function
-key is triged only when key is released
-Summary
-
-- Easy to access wireless router
-- Based on Lua 5.1.4, Developers are supposed to have experience with Lua Program language.
-- Event-Drive programming modal.
-- Build-in file, timer, pwm, i2c, net, gpio, wifi module.
-- Serial Port BaudRate:9600
-- Re-mapped GPIO pin, use the index to program gpio, i2c, pwm.
-- GPIO Map Table:
-
-
-
- IO index | ESP8266 pin | IO index | ESP8266 pin |
-
-
- 0 | GPIO12 | 8 | GPIO0 |
-
-
- 1 | GPIO13 | 9 | GPIO2 |
-
-
- 2 | GPIO14 | 10 | GPIO4 |
-
-
- 3 | GPIO15 | 11 | GPIO5 |
-
-
- 4 | GPIO3 | | |
-
-
- 5 | GPIO1 | | |
-
-
- 6 | GPIO9 | | |
-
-
- 7 | GPIO10 | |
-
-
-
-Burn/Flash Firmware
-Address
-nodemcu_512k.bin: 0x00000
-node module
-
-node.restart()
-Description
-restart the chip.
-Syntax
-node.restart()
-Parameters
-nil
-Returns
-nil
-Example
-
-
-
-See also
--
-
-node.dsleep()
-Description
-Enter deep sleep mode, wake up when timed out
-Syntax
-node.dsleep(us)
--Note: This function can only be used in the condition that esp8266 PIN32(RST) and PIN8(XPD_DCDC) are connected together.
-Parameters
-us: sleep time in micro second
-Returns
-nil
-Example
-
-
-
-See also
--
-
-node.chipid()
-Description
-return chip ID
-Syntax
-node.chipid()
-Parameters
-nil
-Returns
-number:chip ID
-Example
-
-
-
-See also
--
-
-node.heap()
-Description
-return the remain HEAP size in bytes
-Syntax
-node.heap()
-Parameters
-nil
-Returns
-number: system heap size left in bytes
-Example
- heap_size = node.heap();
-
-
-
-See also
--
-
-node.key()
-Description
-define button function, button is connected to GPIO16.
-Syntax
-node.key(type, function())
-Parameters
-type: type is either string “long” or “short”. long: press the key for 3 seconds, short: press shortly(less than 3 seconds)
-function(): user defined function which is called when key is pressed. If nil, cancling the user defined function.
-Default function: long: change LED blinking rate, short: reset chip
-Returns
-nil
-Example
- node.key("long", function(){print('hello world')})
-
-
-
-See also
--
-
-node.led()
-Description
-setup the on/off time for led, which connected to GPIO16, multiplexing with node.key()
-Syntax
-node.led(low, high)
-Parameters
-Low: LED off time, LED keeps on when low=0. Unit: milliseconds, time resolution: 80~100ms
-High: LED off time. Unit: milliseconds, time resolution: 80~100ms
-Returns
-nil
-Example
- -- turn led on forever.
- node.led(0);
-
-
-
-See also
--
-
-
-Description
-accept a string and put the string into Lua interpretor.
-same as pcall(loadstring(str)) but support multi seperated line.
-Syntax
-node.input(str)
-Parameters
-str: Lua chunk
-Returns
-nil
-Example
- -- never use node.input() in console. no effect.
- sk:on("receive", function(conn, payload) node.input(payload) end)
-
-
-
-See also
--
-
-node.output()
-Description
-direct output from lua interpretor to a call back function.
-Syntax
-node.output(function(str), serial_debug)
-Parameters
-function(str): a function accept every output as str, and can send the output to a socket.
-serial_debug: 1 output also show in serial. 0: no serial output.
-Returns
-nil
-Example
- function tonet(str)
- sk:send(str)
- -- print(str) WRONG!!! never ever print something in this function
- -- because this will cause a recursive function call!!!
- end
- node.ouput(tonet, 1) -- serial also get the lua output.
-
-
-
- -- a simple telnet server
- s=net.createServer(net.TCP)
- s:listen(2323,function(c)
- con_std = c
- function s_output(str)
- if(con_std~=nil)
- then con_std:send(str)
- end
- end
- node.output(s_output, 0) -- re-direct output to function s_ouput.
- c:on("receive",function(c,l)
- node.input(l) -- works like pcall(loadstring(l)) but support multiple separate line
- end)
- c:on("disconnection",function(c)
- con_std = nil
- node.output(nil) -- un-regist the redirect output function, output goes to serial
- end)
- end)
-
-
-
-See also
--
-file module
-
-file.remove()
-Description
-remove file from file system.
-Syntax
-file.remove(filename)
-Parameters
-filename: file to remove
-Returns
-nil
-Example
- -- remove "foo.lua" from file system.
- file.remove("foo.lua")
-
-
-
-See also
-- file.open()
-- file.close()
-
-file.open()
-Description
-open file.
-Syntax
-file.open(filename, mode)
-Parameters
-filename: file to be opened, directories are not supported
-mode:
- “r”: read mode (the default)
- “w”: write mode
- “a”: append mode
- “r+”: update mode, all previous data is preserved
- “w+”: update mode, all previous data is erased
- “a+”: append update mode, previous data is preserved, writing is only allowed at the end of file
-Returns
-nil
-Example
- -- open 'init.lua', print the first line.
- file.open("init.lua", "r")
- print(file.readline())
- file.close()
-
-
-
-See also
-- file.close()
-- file.readline()
-
-file.close()
-Description
-close the file.
-Syntax
-file.close()
-Parameters
-nil
-Returns
-nil
-Example
- -- open 'init.lua', print the first line.
- file.open("init.lua", "r")
- print(file.readline())
- file.close()
-
-
-
-See also
-- file.open()
-- file.readline()
-
-file.readline()
-Description
-read one line of file which is opened before.
-Syntax
-file.readline()
-Parameters
-nil
-Returns
-file content in string, line by line, include EOL(‘\n’)
-return nil when EOF.
-Example
- -- print the first line of 'init.lua'
- file.open("init.lua", "r")
- print(file.readline())
- file.close()
-
-
-
-See also
-- file.open()
-- file.close()
-
-file.writeline()
-Description
-write string to file and add a ‘\n’ at the end.
-Syntax
-file.writeline(string)
-Parameters
-string: content to be write to file
-Returns
-true: write ok.
-nil: there is error
-Example
- -- open 'init.lua' in 'a+' mode
- file.open("init.lua", "a+")
- -- write 'foo bar' to the end of the file
- file.writeline('foo bar')
- file.close()
-
-
-
-See also
-- file.open()
-- file.write()
-
-file.write()
-Description
-write string to file.
-Syntax
-file.write(string)
-Parameters
-string: content to be write to file.
-Returns
-true: write ok.
-nil: there is error
-Example
- -- open 'init.lua' in 'a+' mode
- file.open("init.lua", "a+")
- -- write 'foo bar' to the end of the file
- file.write('foo bar')
- file.close()
-
-
-
-See also
-- file.open()
-- file.writeline()
-
-file.flush()
-Description
-flush to file.
-Syntax
-file.flush()
-Parameters
-nil
-Returns
-nil
-Example
- -- open 'init.lua' in 'a+' mode
- file.open("init.lua", "a+")
- -- write 'foo bar' to the end of the file
- file.write('foo bar')
- file.flush()
- file.close()
-
-
-
-See also
-- file.open()
-- file.writeline()
-
-file.seek()
-Description
-Sets and gets the file position, measured from the beginning of the file, to the position given by offset plus a base specified by the string whence.
-Syntax
-file.seek(whence, offset)
-Parameters
-whence:
-“set”: base is position 0 (beginning of the file);
-“cur”: base is current position;(default value)
-“end”: base is end of file;
-offset: default 0
-Returns
-success: returns the final file position
-fail: returns nil
-Example
- -- open 'init.lua' in 'a+' mode
- file.open("init.lua", "a+")
- -- write 'foo bar' to the end of the file
- file.write('foo bar')
- file.flush()
- file.seek("set")
- print(file.readline())
- file.close()
-
-
-
-See also
-- file.open()
-- file.writeline()
-
-file.list()
-Description
-list all files.
-Syntax
-file.list()
-Parameters
-nil
-Returns
-a lua table which contains the {file name: file size} pairs
-Example
- l = file.list();
- for k,v in l do
- print("name:"..k..", size:"..v)
- end
-
-
-
-See also
-- file.remove()
-wifi module
-CONSTANT
-wifi.STATION, wifi.SOFTAP, wifi.STATIONAP
-
-wifi.setmode(mode)
-Description
-setup wifi operation mode.
-Syntax
-wifi.setmode(mode)
-Parameters
-mode: value should be: wifi.STATION, wifi.SOFTAP or wifi.STATIONAP
-Returns
-current mode after setup
-Example
- wifi.setmode(wifi.STATION)
-
-
-
-See also
-- wifi.getmode()
-
-wifi.getmode(mode)
-Description
-get wifi operation mode.
-Syntax
-wifi.getmode()
-Parameters
-nil
-Returns
-wifi operation mode
-Example
-
-
-
-See also
-- wifi.setmode()
-
-wifi.startsmart()
-Description
-starts to auto configuration, if success set up ssid and pwd automatically .
-Syntax
-wifi.startsmart(channel, function succeed_callback())
-Parameters
-channel: 1~13, startup channel for searching, if nil, default to 6. 20 seconds for each channel.
-succeed_callback: callback function called after configuration, which is called when got password and connected to AP.
-Returns
-nil
-Example
- wifi.startsmart(6, cb())
-
-
-
-See also
-- wifi.stopsmart()
-
-wifi.stopsmart()
-Description
-stop the configuring process.
-Syntax
-wifi.stopsmart()
-Parameters
-nil
-Returns
-nil
-Example
-
-
-
-See also
-- wifi.startsmart()
-wifi.sta module
-
-wifi.sta.config()
-Description
-set ssid and password in station mode.
-Syntax
-wifi.sta.config(ssid, password)
-Parameters
-ssid: string which is less than 32 bytes.
-password: string which is less than 64 bytes.
-Returns
-nil
-Example
- wifi.sta.config("myssid","mypassword")
-
-
-
-See also
-- wifi.sta.connect()
-- wifi.sta.disconnect()
-
-wifi.sta.connect()
-Description
-connect to AP in station mode.
-Syntax
-wifi.sta.connect()
-Parameters
-nil
-Returns
-nil
-Example
-
-
-
-See also
-- wifi.sta.disconnect()
-- wifi.sta.config()
-
-wifi.sta.disconnect()
-Description
-disconnect from AP in station mode.
-Syntax
-wifi.sta.disconnect()
-Parameters
-nil
-Returns
-nil
-Example
-
-
-
-See also
-- wifi.sta.config()
-- wifi.sta.connect()
-
-wifi.sta.autoconnect()
-Description
-auto connect to AP in station mode.
-Syntax
-wifi.sta.autoconnect(auto)
-Parameters
-auto: 0 to disable auto connecting. 1 to enable auto connecting
-Returns
-nil
-Example
-
-
-
-See also
-- wifi.sta.config()
-- wifi.sta.connect()
-- wifi.sta.disconnect()
-
-wifi.sta.getip()
-Description
-get ip address in station mode.
-Syntax
-wifi.sta.getip()
-Parameters
-nil
-Returns
-ip address in string, for example:”192.168.0.111”
-Example
- -- print current ip
- print(wifi.sta.getip())
-
-
-
-See also
-- wifi.sta.getmac()
-
-wifi.sta.getmac()
-Description
-get mac address in station mode.
-Syntax
-wifi.sta.getmac()
-Parameters
-nil
-Returns
-mac address in string, for example:”18-33-44-FE-55-BB”
-Example
- -- print current mac address
- print(wifi.sta.getmac())
-
-
-
-See also
-- wifi.sta.getip()
-
-wifi.sta.getap()
-Description
-scan and get ap list as a lua table into callback function.
-Syntax
-wifi.sta.getap(function(table))
-Parameters
-function(table): a callback function to receive ap table when scan is done
- this function receive a table, the key is the ssid, value is other info in format: authmode,rssi,bssid,channel
-Returns
-nil
-Example
- -- print ap list
- function listap(t)
- for k,v in pairs(t) do
- print(k.." : "..v)
- end
- end
- wifi.sta.getap(listap)
-
-
-
-See also
-- wifi.sta.getip()
-wifi.ap module
-
-wifi.ap.config()
-Description
-set ssid and password in ap mode.
-Syntax
-wifi.ap.config(cfg)
-Parameters
-cfg: lua table to setup ap.
-Example:
- cfg={}
- cfg.ssid="myssid"
- cfg.pwd="mypwd"
- wifi.ap.setconfig(cfg)
-
-
-
-Returns
-nil
-Example
- wifi.ap.config(ssid, 'password')
-
-
-
-See also
--
-
-wifi.ap.getip()
-Description
-get ip in ap mode.
-Syntax
-wifi.ap.getip()
-Parameters
-nil
-Returns
-ip address in string, for example:”192.168.0.111”
-Example
-
-
-
-See also
-- wifi.ap.getmac()
-
-wifi.ap.getmac()
-Description
-get mac address in ap mode.
-Syntax
-wifi.ap.getmac()
-Parameters
-nil
-Returns
-mac address in string, for example:”1A-33-44-FE-55-BB”
-Example
-
-
-
-See also
-- wifi.ap.getip()
-timer module
-
-tmr.delay()
-Description
-delay us micro seconds.
-Syntax
-tmr.dealy(us)
-Parameters
-us: delay time in micro second
-Returns
-nil
-Example
- -- delay 100us
- tmr.delay(100)
-
-
-
-See also
-- tmr.now()
-
-tmr.now()
-Description
-return the current value of system counter: uint32, us.
-Syntax
-tmr.now()
-Parameters
-nil
-Returns
-uint32: value of counter
-Example
- -- print current value of counter
- print(tmr.now())
-
-
-
-See also
-- tmr.delay()
-
-tmr.alarm()
-Description
-alarm time.
-Syntax
-tmr.alarm(interval, repeat, function do())
-Parameters
-Interval: alarm time, unit: millisecond
-repeat: 0 - one time alarm, 1 - repeat
-function do(): callback function for alarm timed out
-Returns
-nil
-Example
- -- print "hello world" every 1000ms
- tmr.alarm(1000, 1, function() print("hello world") end )
-
-
-
-See also
-- tmr.now()
-
-tmr.stop()
-Description
-stop alarm.
--Note: only one alarm is allowed, the previous one would be replaced if tmr.alarm() called again before tmr.stop().
-Syntax
-tmr.stop()
-Parameters
-nil.
-Returns
-nil
-Example
- -- print "hello world" every 1000ms
- tmr.alarm(1000, 1, function() print("hello world") end )
-
- -- something else
-
- -- stop alarm
- tmr.stop()
-
-
-
-See also
-- tmr.now()
-
-tmr.wdclr()
-Description
-clear system watchdog counter.
-Syntax
-tmr.wdclr()
-Parameters
-nil.
-Returns
-nil
-Example
- for i=1,10000 do
- print(i)
- tmr.wdclr() -- should call tmr.wdclr() in a long loop to avoid hardware reset caused by watchdog.
- end
-
-
-
-See also
-- tmr.delay()
-GPIO module
-CONSTANT
-gpio.OUTPUT, gpio.INPUT, gpio.INT, gpio.HIGH, gpio.LOW
-
-gpio.mode()
-Description
-initialize pin to GPIO mode, set the pin in/out mode.
-Syntax
-gpio.mode(pin, mode)
-Parameters
-pin: 0~11, IO index
-mode: gpio.OUTPUT or gpio.INPUT, or gpio.INT(interrupt mode)
-Returns
-nil
-Example
- -- set gpio 0 as output.
- gpio.mode(0, gpio.OUTPUT)
-
-
-
-See also
-- gpio.read()
-
-gpio.read()
-Description
-read pin value.
-Syntax
-gpio.read(pin)
-Parameters
-pin: 0~11, IO index
-Returns
-number:0 - low, 1 - high
-Example
- -- read value of gpio 0.
- gpio.read(0)
-
-
-
-See also
-- gpio.mode()
-
-gpio.write()
-Description
-set pin value.
-Syntax
-gpio.write(pin)
-Parameters
-pin: 0~11, IO index
-level: gpio.HIGH or gpio.LOW
-Returns
-nil
-Example
- -- set pin index 1 to GPIO mode, and set the pin to high.
- pin=1
- gpio.mode(pin, gpio.OUTPUT)
- gpio.write(pin, gpio.HIGH)
-
-
-
-See also
-- gpio.mode()
-- gpio.read()
-
-gpio.trig()
-Description
-set the interrupt callback function for pin.
-Syntax
-gpio.trig(pin, type, function(level))
-Parameters
-pin: 0~11, IO index
-type: “up”, “down”, “both”, “low”, “high”, which represent rising edge, falling edge, both edge, low level, high level trig mode separately.
-function(level): callback function when triggered. The gpio level is the param. Use previous callback function if undefined here.
-Returns
-nil
-Example
- -- use pin 0 as the input pulse width counter
- pulse0 = 0
- du = 0
- gpio.mode(0,gpio.INT)
- function pin0cb(level)
- du = tmr.now() – pulse0
- print(du)
- pulse0 = tmr.now()
- if level == 1 then gpio.trig(0, "down ") else gpio.trig(0, "up ") end
- end
- gpio.trig(0, "down ",pin0cb)
-
-
-
-See also
-- gpio.mode()
-- gpio.write()
-PWM module
-
-pwm.setup()
-Description
-set pin to PWM mode. Only 3 pins can be set to PWM mode at the most.
-Syntax
-pwm.setup(pin, clock, duty)
-Parameters
-pin: 0~11, IO index
-clock: 1~500, pwm frequency
-duty: 0~100, pwm duty cycle in percentage
-Returns
-nil
-Example
- -- set pin index 0 as pwm output, frequency is 100Hz, duty cycle is 50-50.
- pwm.setup(0, 100, 50)
-
-
-
-See also
-- pwm.start()
-
-pwm.close()
-Description
-quit PWM mode for specified pin.
-Syntax
-pwm.close(pin)
-Parameters
-pin: 0~11, IO index
-Returns
-nil
-Example
-
-
-
-See also
-- pwm.start()
-
-pwm.start()
-Description
-pwm starts, you can detect the waveform on the gpio.
-Syntax
-pwm.start(pin)
-Parameters
-pin: 0~11, IO index
-Returns
-nil
-Example
-
-
-
-See also
-- pwm.stop()
-
-pwm.stop()
-Description
-pause the output of PWM waveform.
-Syntax
-pwm.stop(pin)
-Parameters
-pin: 0~11, IO index
-Returns
-nil
-Example
-
-
-
-See also
-- pwm.start()
-
-pwm.setclock()
-Description
-set pwm frequency for pin.
--Note: setup pwm frequency will synchronously change others if there are any. Only one PWM frequency can be allowed for the system.
-Syntax
-pwm.setclock(pin, clock)
-Parameters
-pin: 0~11, IO index.
-clock: 1~500, pwm frequency.
-Returns
-nil
-Example
-
-
-
-See also
-- pwm.getclock()
-
-pwm.getclock()
-Description
-get pwm frequency of pin.
-Syntax
-pwm.getclock(pin)
-Parameters
-pin: 0~11, IO index.
-Returns
-number:pwm frequency of pin
-Example
-
-
-
-See also
-- pwm.setclock()
-
-pwm.setduty()
-Description
-set duty clycle for pin.
-Syntax
-pwm.setduty(pin, duty)
-Parameters
-pin: 0~11, IO index
-duty: 0~100, pwm duty cycle in percentage
-Returns
-nil
-Example
-
-
-
-See also
-- pwm.getduty()
-
-pwm.getduty()
-Description
-get duty clycle for pin.
-Syntax
-pwm.getduty(pin)
-Parameters
-pin: 0~11, IO index
-Returns
-nil
-Example
- -- D0 is connected to green led
- -- D1 is connected to blue led
- -- D2 is connected to red led
- pwm.setup(0,500,50)
- pwm.setup(1,500,50)
- pwm.setup(2,500,50)
- pwm.start(0)
- pwm.start(1)
- pwm.start(2)
- function led(r,g,b)
- pwm.setduty(0,g)
- pwm.setduty(1,b)
- pwm.setduty(2,r)
- end
- led(50,0,0) -- set led to red
- led(0,0,50) -- set led to blue.
-
-
-
-See also
-- pwm.setduty()
-net module
-CONSTANT
-net.TCP, net.UDP
-
-net.createServer()
-Description
-create a server.
-Syntax
-net.createServer(type, timeout)
-Parameters
-type: net.TCP or net.UDP
-timeout: for a TCP server, timeout is 1~28800 seconds, for a inactive client to disconnected.
-Returns
-net.server sub module
-Example
- net.createServer(net.TCP, 30) -- 30s timeout
-
-
-
-See also
-- net.createConnection()
-
-net.createConnection()
-Description
-create a client.
-Syntax
-net.createConnection(type, secure)
-Parameters
-type: net.TCP or net.UDP
-secure: 1 or 0, 1 for ssl link, 0 for normal link
-Returns
-net.server sub module
-Example
- net.createConnection(net.UDP, 0)
-
-
-
-See also
-- net.createServer()
-net.server module
-
-listen()
-Description
-listen on port from [ip] address.
-Syntax
-net.server.listen(port,[ip],function(net.socket))
-Parameters
-port: port number
-ip:ip address string, can be omitted
-function(net.socket): callback function, pass to Caller function as param if a connection is created successfully
-Returns
-nil
-Example
- -- create a server
- sv=net.createServer(net.TCP, 30) -- 30s time out for a inactive client
- -- server listen on 80, if data received, print data to console, and send "hello world" to remote.
- sv:listen(80,function(c)
- c:on("receive", function(sck, pl) print(pl) end)
- c:send("hello world")
- end)
-
-
-
-See also
-- net.createServer()
-
-close()
-Description
-close server.
-Syntax
-net.server.close()
-Parameters
-nil
-Returns
-nil
-Example
- -- create a server
- sv=net.createServer(net.TCP, 30)
- -- close server
- sv:close()
-
-
-
-See also
-- net.createServer()
-net.socket module
-
-connect()
-Description
-connect to remote.
-Syntax
-connect(port, ip)
-Parameters
-port: port number
-ip: ip address in string
-Returns
-nil
-See also
-- net.socket:on()
-
-send()
-Description
-send data to remote via connection.
-Syntax
-send(string, function(sent))
-Parameters
-string: data in string which will be sent to remote
-function(sent): callback function for sending string
-Returns
-nil
-See also
-- net.socket:on()
-
-on()
-Description
-register callback function for event.
-Syntax
-on(event, function cb())
-Parameters
-event: string, which can be: “connection”, “reconnection”, “disconnection”, “receive”, “sent”
-function cb(net.socket, [string]): callback function. The first param is the socket.
-If event is”receive”, the second param is received data in string.
-Returns
-nil
-Example
- sk=net.createConnection(net.TCP, 0)
- sk:on("receive", function(sck, c) print(c) end )
- sk:connect(80,"192.168.0.66")
- sk:send("GET / HTTP/1.1\r\nHost: 192.168.0.66\r\nConnection: keep-alive\r\nAccept: */*\r\n\r\n")
-
-
-
-See also
-- net.createServer()
-
-close()
-Description
-close socket.
-Syntax
-close()
-Parameters
-nil
-Returns
-nil
-See also
-- net.createServer()
-
-dns()
-Description
-get domain ip
-Syntax
-dns(domain, function(net.socket, ip))
-Parameters
-domain: domain name.
-function (net.socket, ip): callback function. The first param is the socket, the second param is the ip address in string.
-Returns
-nil
-See also
-- net.createServer()
-i2c module
-CONSTANT
-i2c.SLOW, i2c.TRANSMITTER, i2c. RECEIVER. FAST(400k)is not supported for now.
-
-i2c.setup()
-Description
-initialize i2c.
-Syntax
-i2c.setup(id, pinSDA, pinSCL, speed)
-Parameters
-id = 0
-pinSDA: 0~11, IO index
-pinSCL: 0~11, IO index
-speed: i2c.SLOW
-Returns
-nil
-See also
-- i2c.read()
-
-i2c.start()
-Description
-start i2c transporting.
-Syntax
-i2c.start(id)
-Parameters
-id = 0
-Returns
-nil
-See also
-- i2c.read()
-
-i2c.stop()
-Description
-stop i2c transporting.
-Syntax
-i2c.stop(id)
-Parameters
-id = 0
-Returns
-nil
-See also
-- i2c.read()
-
-i2c.address()
-Description
-setup i2c address and read/write mode.
-Syntax
-i2c.address(id, device_addr, direction)
-Parameters
-id=0
-device_addr: device address.
-direction: i2c.TRANSMITTER for writing mode , i2c. RECEIVER for reading mode
-Returns
-nil
-See also
-- i2c.read()
-
-i2c.write()
-Description
-write data to i2c, data can be multi numbers, string or lua table.
-Syntax
-i2c.write(id, data1, data2,…)
-Parameters
-id=0
-data: data can be numbers, string or lua table.
-Returns
-nil
-Example
- i2c.write(0, "hello", "world")
-
-
-
-See also
-- i2c.read()
-
-i2c.read()
-Description
-read data for len bytes.
-Syntax
-i2c.read(id, len)
-Parameters
-id=0
-len: data length
-Returns
-string:data received.
-Example
- id=0
- sda=1
- scl=0
-
- -- initialize i2c, set pin1 as sda, set pin0 as scl
- i2c.setup(id,sda,scl,i2c.SLOW)
-
- -- user defined function: read from reg_addr content of dev_addr
- function read_reg(dev_addr, reg_addr)
- i2c.start(id)
- i2c.address(id, dev_addr ,i2c.TRANSMITTER)
- i2c.write(id,reg_addr)
- i2c.stop(id)
- i2c.start(id)
- i2c.address(id, dev_addr,i2c.RECEIVER)
- c=i2c.read(id,1)
- i2c.stop(id)
- return c
- end
-
- -- get content of register 0xAA of device 0x77
- reg = read_reg(0x77, 0xAA)
- pirnt(string.byte(reg))
-
-
-
-See also
-- i2c.write()
-adc module
-CONSTANT
-none
-
-adc.read()
-Description
-read adc value of id, esp8266 has only one 10bit adc, id=0, pin TOUT
-Syntax
-adc.read(id)
-Parameters
-id = 0
-Returns
-adc value
-See also
--
\ No newline at end of file
diff --git a/nodemcu_api_en.md b/nodemcu_api_en.md
deleted file mode 100644
index 7837e675d4..0000000000
--- a/nodemcu_api_en.md
+++ /dev/null
@@ -1,1816 +0,0 @@
-# **nodeMcu API Instruction** #
-[中文版本](https://github.com/funshine/nodemcu-firmware/wiki/nodemcu_api_cn)
-###version 0.9.2 build 2014-11-20
-