我的ESP32實做書籍:https://youyouyou.pixnet.net/blog/post/121105860
博客來網址:https://www.books.com.tw/products/0010901195


這是ESP32輔助版內建的燈號控制,輔助版內建八個控制燈,包括RGB LED三個燈以及訊號指示燈x5。

8個燈號理論上要使用八個腳位控制,不過我們加裝PCF8574 i2c晶片,所以只用了兩個腳位26,27
也代表你如果要使用板子上的燈號,26, 27請不要使用其他感測器。

以下的範例是說明如何控制三個LED燈及五個訊號指示燈

image

請先下載函式庫zip檔案:https://bit.ly/3qD2lCL

安裝程式庫:功能表/草稿碼/匯入程式庫/加入.ZIP程式庫

image

選擇上面下載的ZIP檔案

image

完成匯入程式庫

image

接下來直接開啟範例檔,或者複製以下程式

image


/*Younger Yang and 夜市小霸王
  本範例說明如何使用本教學輔助板(ESP32 Matrix)的LED
  教學板使用GPIO 26,27連接附加的I2C晶片
  一、依照LED編號開啟或關閉:
    MatrixInt(LED編號,開關);//燈號(0~7),開關(1/0)
    燈編號列表:訊號指示燈:0~4,Red:5,Green:6,Blue:7
    Example:
    MatrixInt(1,1);//開1號燈
    MatrixInt(5,0);//關5號燈
  二、按信號強度開啟訊號指示燈:
    MatrixLEDrssi(rssi);
    MatrixLEDrssi(-60);//大於-65:5 Leds
    MatrixLEDrssi(-70);//大於-75:4 Leds
    MatrixLEDrssi(-80);//大於-85:3 Leds
    MatrixLEDrssi(-90);//大於-95:2 Leds
    MatrixLEDrssi(-100);//大於-105:1 Leds
    //其餘均為0 Led
*/
#include <Wire.h>
#include "MatrixInt.h"

void setup() {
  Serial.begin(115200);
  Wire.begin(26, 27);
}

void loop() {
  Serial.println("Turn on ALL LEDs by ID");
  for (int i = 0; i < 8; ++i)
  {
    MatrixInt(i, 1);//亮燈
    delay(1000);
    MatrixInt(i, 0);//關燈    
  }
  Serial.println("Turn on RSSI LED by RSSI value");
  for (int i = -50; i > -120; i=i-5)
  {
    Serial.println("RSSI=" +  String(i));
    MatrixLEDrssi(i);
    delay(500);
  }
  delay(1000);
}


 

arrow
arrow
    全站熱搜

    夜市 小霸王 發表在 痞客邦 留言(0) 人氣()