2015年8月17日月曜日

ESP-WROOM-02のメモ(8):モード切替GPIOポートについての検証2

前回に引き続きモード切替GPIOポートについての懸賞
以下はモード切替GPIOポートが起動後も入力ポートとして働くかどうか確認するためのプロジェクト

データシートより
プロジェクト概要:
 GPIO0、GPIO2、GPIO15が入力ポートとして動作することを確認する
  各ポートに接続されたタクトスイッチの状態を読み取りLEDを点滅させる

準備すること:
 ・3V3とGNDに電源を接続
 ・LEDと適当な抵抗を3つ用意(まだ接続しないこと
 ・タクトスイッチを3つ用意(まだ接続しないこと

作成方法&実行方法:
 ・ソースをコピペ
 ・ダウンロードモードでESP-WROOM-02を起動する
 ・ビルドして書き込み
 ・GPIO0、GPIO2、GPIO15にタクトスイッチを接続(→もう片側をGNDへ)
  (※ブート用の接続は外すこと/ジャンパなど)
 ・GPIO12、GPIO13、GPIO14に抵抗とLEDを直列に接続(→もう片側をGNDへ)
  (※すでにフラッシュブートしているので注意)

 実行するとGPIO0、GPIO2、GPIO15が入力ピンとして機能するのがわかる


 
#define CONFIG_PIN_1 0
#define CONFIG_PIN_2 2
#define CONFIG_PIN_3 15

#define LED_PIN_1 12
#define LED_PIN_2 13
#define LED_PIN_3 14

void setup() {
  pinMode(CONFIG_PIN_1, INPUT_PULLUP);
  pinMode(CONFIG_PIN_2, INPUT_PULLUP);
  pinMode(CONFIG_PIN_3, INPUT_PULLUP);  
  
  pinMode(LED_PIN_1, OUTPUT);  
  pinMode(LED_PIN_2, OUTPUT);  
  pinMode(LED_PIN_3, OUTPUT);    
}

void loop() {  
  if(digitalRead(CONFIG_PIN_1) == LOW)
  {
    digitalWrite(LED_PIN_1, HIGH);
  }
  else
  {
    digitalWrite(LED_PIN_1, LOW);    
  }

  if(digitalRead(CONFIG_PIN_2) == LOW)
  {
    digitalWrite(LED_PIN_2, HIGH);
  }
  else
  {
    digitalWrite(LED_PIN_2, LOW);    
  }

  if(digitalRead(CONFIG_PIN_3) == LOW)
  {
    digitalWrite(LED_PIN_3, HIGH);
  }
  else
  {
    digitalWrite(LED_PIN_3, LOW);    
  }
  
  delay(10);
}

 



0 件のコメント:

コメントを投稿