NodeMCU API
ในการพัฒนา Application บน NodeMCU ด้วย Lua Script นั้นข้อนข้างง่ายเพราะ NodeMCU นั้นได้มีการสร้าง API ให้เราเรียกใช้งานได้ข้อนข้างสะดวก เช่น
- การจัดการเกี่ยวกับ Hardware เช่น การ Restart ตัว Hardware (node module)
- เรื่องของระบบ File (file module)
- การจัดการเกี่ยวกับ Wifi ทั้ง AP และ Station
- ใน NodeMCU ก็ยังมี timer ให้เราใช้งาน (timer module)
- GPIO (gpio module)
- PWM (pwm module)
- Network (net module)
- การใช้งาน MQTT (mqtt module)
- การทำงานกับ Json Data (cjson module)
- การใช้งาน OLED LCD i2c (u8g module)
ใน NodeMCU จะไม่ได้ใช้หมายเลข GPIO ของ Hardware ในใช้งานตรง ๆ แต่จะมี Table Mapping ใช้ในการอ้างอิงด้วย Index แทน เช่น Index 5 จะเท่ากับ GPIO14 ก่อนทำการทดลองให้ลองกลับไปอ่าน Setup NodeMCU ในการทำงานแบบ Interactive Mode
การใช้งาน GPIO ด้วย Lua Script
การใช้งาน GPIO ของ ESP8266 นั้นเราต้องกำหนด Direction ก่อนว่าเราต้องการใช้เป็น Input หรือ Output
gpio.mode()
Description
initialize pin to GPIO mode, set the pin in/out mode, internal pullup.
Syntax
gpio.mode(pin, mode, pullup)
Parameters
pin: 0~12, IO index
mode: gpio.OUTPUT or gpio.INPUT, or gpio.INT(interrupt mode) pullup: gpio.PULLUP or gpio.FLOAT, default: gpio.FLOAT
mode: gpio.OUTPUT or gpio.INPUT, or gpio.INT(interrupt mode) pullup: gpio.PULLUP or gpio.FLOAT, default: gpio.FLOAT
ตัวอย่าง Code การ Set Mode GPIO
gpio.read()
Description
read pin value.
Syntax
gpio.read(pin)
Parameters
pin: 0~12, IO index
Returns
number:0 - low, 1 - high
-- set gpio 0 as output.
gpio.mode(0, gpio.OUTPUT)
gpio.write()
Description
set pin value.
Syntax
gpio.write(pin)
Parameters
pin: 0~12, IO index
level: gpio.HIGH or gpio.LOW
level: gpio.HIGH or gpio.LOW
ตัวอย่าง Code การอ่านค่าสถานะ Input และ Output
-- read value of gpio 0.
gpio.read(0)
ตัวอย่าง Code การเขียนค่าสถานะ Output
-- 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)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น