...

Embeded/NodeMCU(ESP8266) +4
반응형


NodeMCU 핀맵인데요

핀맵을 보면 RX0,TX0이 CP2102로 연결된 USB to UART입니다

RX2,TX2에 연결 하셔도 되지만

USB만 연결 하면 되는 RX0,TX0로 연결하시는게 편합니다

하지만 아두이노 IDE에서 프로그램 다운 받을때 RXD0,TXD0을 사용해서

프로그램 다운 받을 때는 포트 연결을 끊고 해야 됩니다


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <SoftwareSerial.h>
 
SoftwareSerial ESPserial(31); // RXD0 | TXD0
//SoftwareSerial ESPserial(13, 15); // RXD2 | TXD2
 
 
void setup() {
  // put your setup code here, to run once:
  // 시리얼 통신을 9600의 속도로 연다
  ESPserial.begin(9600);
}
 
void loop() {
 
  // 시리얼을 통해서 들어온 데이터가 있을 경우 수신 버퍼에 읽지 않은 데이터 수 리턴
  if(ESPserial.available())
  {
    // 수신한 데이터를 1byte 수신
    unsigned char data = ESPserial.read();
 
    // 수신한 데이터가 a일 경우 x출력
    if(data == 'a')
    {
      ESPserial.write('x');
    }
    else if(data =='b'// 수신한 데이터가 b 일경우 y출력
    {
      ESPserial.write('y');
    }
 
    // 데이터 수신한 데이터 출력
    //ESPserial.write(data);
 
    // 수신한 데이터를 바로 출력(ECHO)
    //ESPserial.write(ESPserial.read());
    
  }
cs


소스는 위에 주석이 달려 있어 어렵지 않을 겁니다

포트를 열고 수신버퍼에 데이터가 있는지 확인 후 데이터가 있을 경우

데이터를 받아서 처리 하시면 됩니다