ขยายขา Input Analog ESP8266 NodeMCU ADC ด้วย MCP3008
ขา Analog Read ของ NodeMCU มีเพียงขาเดียวคือขา A1 เราจึงไม่สามารถอ่านค่า Analog จากเซนเซอร์ได้มากกว่า 1 ช่อง ด้วยข้อจำกัดนี้เราสามารถแก้ไขได้โดยใช้ IC MCP3008 ซึ่งเป็น IC สำหรับอ่านค่า Analog ใช้สายสัญญาณเพียง 4 เส้น สามารถอ่านได้ถึง 8 ช่องในต้วเดียว ค่าที่อ่านได้มีความละเอียด 10bit คือ ค่าระหว่าง 0-1023 ต่อวงจร ESP8266 MCP3008
ดังนี้
3.ดาวน์โหลดไลบารีที่นี่ http://www.arduinoall.net/arduino-tutor/code/MCP3008.rar ตัวอย่างโคด Arduino ESP8266 MCP3008
#include
#define CS_PIN D8
#define CLOCK_PIN D5
#define MOSI_PIN D7
#define MISO_PIN D6
MCP3008 adc(CLOCK_PIN, MOSI_PIN, MISO_PIN, CS_PIN);
void setup()
{
Serial.begin(115200);
}
void loop()
{
int val = adc.readADC(0); // read Channel 0 from MCP3008 ADC (pin 1)
Serial.println(val);
delay(1000);
}
ข้อมูลไลบารี https://github.com/nodesign/MCP3008
คลิปวีดีโอสอน Arduino ESP8266 NodeMCU ADC Expand : ขยายขา Analog NodeMCU ด้วย MCP3008