Esp-12F 시작하기


Esp-12F는 시장에 나와 있는 소형 WiFi 모듈입니다. 마이크로 컨트롤러 또는 프로세서에 대한 무선 네트워크 연결을 설정하는 데 사용됩니다. Esp-12F는 소형 SMD22 패키지에 32Mbit 플래시가 내장된 ESP8266 모듈을 기반으로 합니다.

Esp-12F 모듈을 프로그래밍하는 방법에는 여러 가지가 있습니다. 일부는 다음을 포함합니다.
  • 전용 프로그래머 보드 사용
  • NodeMCU 사용
  • 전용 USB-직렬 어댑터 사용
  • 재치있는 클라우드 개발보드를 이용한

  • 이 튜토리얼에서는 전용 USB-to-Serial 어댑터를 사용하여 Arduino IDE를 통해 Esp-12F 모듈을 프로그래밍합니다.

    요구 사항



    ESP-12F
    USB-직렬 FTDI(YP-05)
    Esp-12F 브레이크아웃 보드
    점퍼 와이어 몇 개

    장치 연결



    Esp-12F 모듈과의 연결을 쉽게 하기 위해 브레이크아웃 보드를 사용하고 있습니다.



    아래와 같이 장치를 연결하고 있습니다.


    첫 번째 프로그램 실행



    Esp-12F 모듈을 시작하기 위해 사용하는 코드는 WiFi 스캔 코드입니다. 이 프로그램은 모듈이 도달할 수 있는 모든 WiFi 네트워크를 스캔합니다.

    코드를 실행하기 전에 노트북에 installing FTDI drivers 있습니다. 웹 사이트에서 제공되는 문서는 설치 프로세스에 대한 명확한 가이드를 제공합니다. Arduino IDE가 FTDI를 COM 포트로 읽을 수 있도록 다이버를 설치하고 있습니다.

    설치가 완료되면 WiFi Scan을 위해 아래에 표시된 코드를 업로드하고 있습니다. 연결이 올바르고 코드가 성공적으로 실행되면 직렬 모니터에 WiFi 네트워크가 표시됩니다.

    #include "ESP8266WiFi.h"
    #define BLINK_PERIOD 250
    long lastBlinkMillis;
    boolean ledState;
    
    #define SCAN_PERIOD 5000
    long lastScanMillis;
    
    void setup()
     {
      Serial.begin(115200);
      Serial.println();
    
      pinMode(LED_BUILTIN, OUTPUT);
    
      WiFi.mode(WIFI_STA);
      WiFi.disconnect();
      delay(100);
    }
    
    void loop()
    {
      long currentMillis = millis();
    
      // blink LED
      if (currentMillis - lastBlinkMillis > BLINK_PERIOD)
      {
        digitalWrite(LED_BUILTIN, ledState);
        ledState = !ledState;
        lastBlinkMillis = currentMillis;
      }
    
      // trigger Wi-Fi network scan
      if (currentMillis - lastScanMillis > SCAN_PERIOD)
      {
        WiFi.scanNetworks(true);
        Serial.print("\nScan start ... ");
        lastScanMillis = currentMillis;
      }
    
      // print out Wi-Fi network scan result upon completion
      int n = WiFi.scanComplete();
      if(n >= 0)
      {
        Serial.printf("%d network(s) found\n", n);
        for (int i = 0; i < n; i++)
        {
          Serial.printf("%d: %s, Ch:%d (%ddBm) %s\n", i+1, WiFi.SSID(i).c_str(), WiFi.channel(i), WiFi.RSSI(i), WiFi.encryptionType(i) == ENC_TYPE_NONE ? "open" : "");
        }
        WiFi.scanDelete();
      }
    }
    

    좋은 웹페이지 즐겨찾기