ESP-WROOM-02의 다양한 비망록

5502 단어 ESP-WROOM-02

핀 배치


  • 프로그램 쓰기를 위해 세 개의 핀을 PULL-UP/DOWN해야 합니다.
  • IO0, IO2, IO15는 다른 용도로 이용하지 않는 것이 좋습니다.




  • 이름



    3V3
    3.3V 전원(VDD)

    EN
    ChipEnablePin (Active HIGH)

    RST
    리셋 핀.

    TOUT
    아날로그 입력 핀. 0V(0)~1.0V(1024)까지

    RXD
    UART0_RXD/GPIO3

    TXD
    UART0_TXD/GPIO1



    이름

    Digital In
    Digital Out
    Analog In
    Analog Out


    IO0
    GPIO0(프로그램 쓰기 모드 선택에 사용)
    -
    -
    -
    -

    IO2
    GPIO2(부팅 시 3.3V로 풀업)
    -
    -
    -
    -

    IO4
    GPIO4/SDA





    IO5
    GPIO5/SCL





    IO12
    GPIO12/MISO





    IO13
    GPIO13/MOSI





    IO14
    GPIO14/CLK





    IO15
    GPIO15/CS(부팅 시 GND로 풀다운)
    -
    -
    -
    -

    IO16
    GPIO16






    견적 출처:
    - ぇ tp // 에ぇcぉg. 구이 tsq. 이 m/2015/08/에 sp-w 여우 m02. HTML
    - h tps : // sy p. 오늘 / rd / SP-W 여우 M02_b ㎃ k / 펑 003. HTML
    - htps : // 코 m / 우미 _ 카파 / ms / 아 c3d37db44 아 2dc 71fd

    칩 정보 / 플래시 크기 확인


  • 아래 코드에서 플래시 메모리 용량을 확인하고 쓰기 설정의 FlashSize에서 SPIFF의 필요한 양을 지정합니다.
  • void setup(void) {
      Serial.begin(115200);
    
      Serial.print("CPU Frequency = ");
      Serial.print(ESP.getCpuFreqMHz());
      Serial.println(" MHz");
    
      Serial.print("ChipID = ");
      Serial.println(ESP.getChipId(), HEX); //MACアドレスの下位3バイト
    
      Serial.print("Flash Chip IDE Size = ");
      Serial.print(ESP.getFlashChipSize()); //Arduino IDE 設定の Flash Size になる
      Serial.println(" byte");
    
      Serial.print("Flash Chip Real Size = ");
      Serial.print(ESP.getFlashChipRealSize()); //ESP-WROOM-02 内蔵最大 Flash Size になる
      Serial.println(" byte");
    
      Serial.print("Free Heap Size = ");
      Serial.println(ESP.getFreeHeap());
    
      Serial.print("Free Sketch Size = ");
      Serial.println(ESP.getFreeSketchSpace());
    
      Serial.print("Sketch Size = ");
      Serial.println(ESP.getSketchSize());  
    }  
    

    아날로그 입력


  • 아날로그 입력은 TOUT 핀 전용. 최대 1.0V까지인데 주의.
  • system_adc_read()라는 함수를 사용하여 아날로그 값을 가져옵니다.
  • extern "C" {
      #include "user_interface.h"
    }
    
    void setup() {
      Serial.begin(115200);
    }
    
    void loop() {
      int res = system_adc_read();
      Serial.println(res);
    }
    

    I2C


  • I2C 용 단자는 ESP8266 데이터 시트에서 IO2/IO14이지만 pins_arduino.h에서 IO4/IO5로 정의되므로 Wire.begin ()을 그대로 (핀 지정 없음) 사용하는 경우는 IO4=SDA, IO5=SCL입니다.
  • 사용할 핀을 변경하려면 Wire.begin(SDA,SCL) 형태로 핀을 지정합니다.
  • void setup() {
      Serial.begin(115200);
      Wire.begin(); // = Wire.begin(4, 5);
    }
    

    타이머


  • ESP에서 가장 사용하기 쉬운 타이머는 Ticker입니다. 라이브러리를 포함하고 사용합니다.
  • 시간은 msec 단위로 지정합니다.
  • #include <Ticker.h>
    
    Ticker ticker1;
    
    void ticker1Loop() {
      Serial.print("Loop!");
    }
    
    void setup() {
      Serial.begin(115200);
      ticker1.attach_ms(1000, ticker1Loop); //連続使用
      ticker1.once_ms(1000, your_loop1);    //1回のみ
    }
    
    void loop() {
      ticker1.detach(); //タイマー停止する場合
    }
    

    인용 소스 : htps : // 이 m / 에우 gs / ms / 34 아 b51 에 b2d35207629b

    수면


  • 3종류의 수면이 존재.
  • Deep-Sleep이 가장 낮은 전력 소비이지만 시간 제한 타이머 또는 스위치로의 복귀 만.
  • Modem-Sleep/Light-Sleep 는 무선 통신등의 인터럽트에서도 복귀 가능.



  • Parameters
    현재


    Modem-Sleep
    15,000 uA

    Light-Sleep
    900 uA

    Deep-Sleep
    10 uA


    1.Modem-Sleep/Light-Sleep


  • setup 함수 내에서 wifi_set_sleep_type( type )을 실행한다.
  • 실행 후 적당한 타이밍에 자동으로 수면과 각성을 반복한다.
  • extern "C" {
    #include <user_interface.h>
    }
    
    void setup() {
      // ... Wi-Fi設定等
      wifi_set_sleep_type(MODEM_SLEEP_T);
      //wifi_set_sleep_type(LIGHT_SLEEP_T);
    }
    

    2.Deep Sleep


  • 지정된 시간이 경과하면 재설정이 실행되고 재부팅이 필요합니다. 소비 전력은 단단하고 낮다.
  • 리셋 실행을 위해 (IO16이 GND로 떨어지기 때문에) IO16을 RST (리셋)에 연결해야합니다.
  • 슬립 시간은 마이크로초로 지정한다.
  • 소비 전류는 WiFi 접속으로부터 데이터 송신 등까지는 70~80mA 정도의 전류가 흐르고, DeepSleep에 들어가면 0.9mA 정도에.
  • void setup() {
      // ... Wi-Fi設定等
      // setup の末尾に記述
      ESP.deepSleep(60 * 1000 * 1000); //60秒(1分に1回)でスリープ復帰する場合
    }
    
    void loop() {
    }
    

    견적 출처:
    - htps : // 코 m / 에우 gs / ms / 9 에 df9 에 2 바 8f69800 에 4c5
    - htps : // 아비다. 이오/bぉg/2017/06/05/에 sp8266-쿤 t/

    좋은 웹페이지 즐겨찾기