아두이노 NodeMCU + 슬라이드 가변 저항 + I2CLCD 디스플레이드 연결

슬라이드 가변 저항(Slide Potentiometer)을 연결하자. 연결은 간단하다. GND/5V/Anlog Output 데이터 신호를 보드의 A0에 접속하면 된다. 아날로그 값을 수용할 수 있게 된다.

//필요한 라이브러리를 포함합니다.#include<ESP8266WiFi.h>//WiFi접속 설정 const char*ssid=”*”;const char*password=”*”;//가변 저항이 연결된 핀 설정 const int analog Pin=A0;//Slide Potentiometerint slide Poten=0;void setup(){//직렬 통신 개시 Serial.begin(9600);//WiFi연결 WiFi.begin(ssid, password);while(WiFi.status()!=WL_CONNECTED){delay(1000);Serial.println(“Connecting to WiFi…”);}Serial.println(“Connected to WiFi”);}void loop(){//가변저항에서값을 읽어옵니다.int sensorValue=analogRead(analogPin);// 읽어 온 값을 새로운 변수에 매핑 slidePoten=map(sensorValue, 0, 1023, 0, 255);//변환된 LED밝기 값을 출력합니다.Serial.print(“Sensor Value:”);Serial.print(sensorValue);Serial.print(“-SlidePoten:”);Serial.println(slidePoten);//0.1초 동안 대기합니다.delay(100);}

// 필요한 라이브러리를 포함합니다.#include <ESP8266WiFi.h> // WiFi 연결 설정 const char*ssid=”*”; const char*password=”*”*”; // 가변 저항이 연결된 핀 설정 const intanalog Pin= A0; // Slide Potentiometerint slide Poten= 0; void setup(){//실리얼통신개시Serial.begin(9600);// WiFi 연결 WiFi。begin(ssid, password);while (WiFi.status() != WL_CONNECTED) {delay(1000); Serial.println(“Connecting to WiFi…”);} Serial.println(“Connected to WiFi”);}void loop() {// 가변저항에서 값을 읽어옵니다。 int sensorValue=analogRead(analogPin); // 읽어온 값을 새 변수에 매핑 slidePoten=map(sensorValue, 0, 1023, 0, 255); // 변환된 LED 밝기 값을 출력합니다. Serial.print(“Sensor Value: “); Serial.print(sensorValue); Serial.print(” – SlidePoten: “); Serial.println(slide Poten); // 0.1초간 대기합니다.delay(100);}

// 필요한 라이브러리를 포함합니다.#include <ESP8266WiFi.h> // WiFi 연결 설정 const char*ssid=”*”; const char*password=”*”*”; // 가변 저항이 연결된 핀 설정 const intanalog Pin= A0; // Slide Potentiometerint slide Poten= 0; void setup(){//실리얼통신개시Serial.begin(9600);// WiFi 연결 WiFi。begin(ssid, password);while (WiFi.status() != WL_CONNECTED) {delay(1000); Serial.println(“Connecting to WiFi…”);} Serial.println(“Connected to WiFi”);}void loop() {// 가변저항에서 값을 읽어옵니다。 int sensorValue=analogRead(analogPin); // 읽어온 값을 새 변수에 매핑 slidePoten=map(sensorValue, 0, 1023, 0, 255); // 변환된 LED 밝기 값을 출력합니다. Serial.print(“Sensor Value: “); Serial.print(sensorValue); Serial.print(” – SlidePoten: “); Serial.println(slide Poten); // 0.1초간 대기합니다.delay(100);}

시리얼 모니터를 열어보면 센서에서 읽어온 값(0~1024)과 0~255로 변환한 값이 출력되는 것을 확인할 수 있다. 다음은 이러한 값을 I2CLCD 디스플레이에 표시하는 예를 만들어 보자. 16자리 2열로 구성된 LCD 디스플레이에서 I2C 프로토콜을 이용해 제어하는 방식이다. 이 방식은 기존에 사용되던 병렬 방식과 달리 핀 수가 적어 사용하기 편하다. 4개의 핀(VCC, GND, SDA, SCL)을 이용해 아두이노보드와 연결하면 된다. VCC-3.3 VGND-GNDSDA-D2SCL-D1의 첫 번째 행에는 Hello world를 표시하고 두 번째 행에는 슬라이드 가변 저항 값을 표시하도록 해보자.

설치해야 라이브러리가 있다. 라이브러리 관리자로부터 Liquid Crystal_I2C를 검색하여 설치하도록 하자.

결과 확인

error: Content is protected !!