2165浏览
查看: 2165|回复: 0

【试用测评】FireBeetle ESP32-E扩展板——温感灯

[复制链接]
【试用测评】FireBeetle ESP32-E扩展板——温感灯图10



数字RGB全彩LED】
【试用测评】FireBeetle ESP32-E扩展板——温感灯图2

数字RGB全彩LED模块是一款可级联的RGB全彩单灯珠模块。与传统RGB全彩灯珠需要3根控制信号线,硬件占用资源多不同,该模块控制仅需一根信号线,符合Gravity-3P数字接口规范,配合DF各类扩展板,即插即用,可方便用于Arduinomicro:bitESP32LattePanda树莓派等各类主控平台。
安装Adafruit NeoPixel库

https://www.arduinolibraries.info/libraries/adafruit-neo-pixel
【试用测评】FireBeetle ESP32-E扩展板——温感灯图1

【安装灯】
【试用测评】FireBeetle ESP32-E扩展板——温感灯图4


【试用测评】FireBeetle ESP32-E扩展板——温感灯图3


【亮灯】
程序
  1. #include <Adafruit_NeoPixel.h>
  2. #define PIN        16
  3. #define NUMPIXELS 1
  4. Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
  5. void setup() {
  6.   pixels.begin();
  7. }
  8. void loop() {
  9.   pixels.clear();
  10.   pixels.setPixelColor(0, pixels.Color(255,0, 0));
  11.   pixels.show();   
  12.   
  13. }
复制代码


【试用测评】FireBeetle ESP32-E扩展板——温感灯图5

SHT31-F数字温湿度传感器
【试用测评】FireBeetle ESP32-E扩展板——温感灯图6

Gravity: SHT31-F数字温湿度传感器采用业内知名的瑞士Sensirion公司推出的新一代SHT31-F温湿度传感器芯片。得益于Sensirion的CMOSens®技术,高集成度电容式测湿元件和能隙式测温元件,SHT31-F能够提供极高的可靠性和出色的长期稳定性,具有功耗低、反应快、抗干扰能力强等优点。IIC通讯,兼容3.3V/5V,可以非常容易的集成到智能楼宇、天气站、仓库存储、养殖、孵化等应用场景中。

  1.   #include <DFRobot_SHT3x.h>
  2. //DFRobot_SHT3x sht3x(&Wire,/*address=*/0x45,/*RST=*/4);
  3.     DFRobot_SHT3x   sht3x;
  4.     void setup() {
  5.       Serial.begin(9600);
  6.       //Initialize the chip
  7.       while (sht3x.begin() != 0) {
  8.         Serial.println("Failed to Initialize the chip, please confirm the wire connection");
  9.         delay(1000);
  10.       }
  11.       /**
  12.        * readSerialNumber Read the serial number of the chip.
  13.        * @return Return 32-digit serial number.
  14.        */
  15.       Serial.print("Chip serial number");
  16.       Serial.println(sht3x.readSerialNumber());
  17.        if(!sht3x.softReset()){
  18.          Serial.println("Failed to Initialize the chip....");
  19.        }
  20.       Serial.println("------------------Read adta in single measurement mode-----------------------");
  21.     }
  22.     void loop() {
  23.       Serial.print("Ambient Temperature(°C/F):");
  24.       Serial.print(sht3x.getTemperatureC());
  25.       Serial.print(" C/");
  26.       Serial.print(sht3x.getTemperatureF());
  27.       Serial.print(" F ");
  28.       Serial.print("Relative Humidity(%RH):");
  29.       Serial.print(sht3x.getHumidityRH());
  30.       Serial.println(" %RH");
  31.       DFRobot_SHT3x::sRHAndTemp_t data = sht3x.readTemperatureAndHumidity(sht3x.eRepeatability_High);
  32.       if(data.ERR == 0){
  33.         Serial.print("Ambient Temperature(°C/F):");
  34.         Serial.print(data.TemperatureC);
  35.         Serial.print(" C/");
  36.         Serial.print(data.TemperatureF);
  37.         Serial.print(" F ");
  38.         Serial.print("Relative Humidity(%RH):");
  39.         Serial.print(data.Humidity);
  40.         Serial.println(" %RH");
  41.       }
  42.       */
  43.       delay(1000);
  44.     }
复制代码

【试用测评】FireBeetle ESP32-E扩展板——温感灯图7


【温控灯】
【试用测评】FireBeetle ESP32-E扩展板——温感灯图8


【试用测评】FireBeetle ESP32-E扩展板——温感灯图9


扩大温度值,让灯颜色变化更加明显。
  1. #include <Adafruit_NeoPixel.h>
  2. #include <DFRobot_SHT3x.h>
  3. #define PIN        16
  4. #define NUMPIXELS 1
  5. DFRobot_SHT3x   sht3x;
  6. Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
  7. int number=0;
  8. void setup() {
  9.     Serial.begin(9600);
  10.     while (sht3x.begin() != 0) {
  11.         Serial.println("Failed to Initialize the chip, please confirm the wire connection");
  12.         delay(1000);
  13.       }
  14.      pixels.begin();
  15. }
  16. void loop() {
  17.       DFRobot_SHT3x::sRHAndTemp_t data = sht3x.readTemperatureAndHumidity(sht3x.eRepeatability_High);
  18.       if(data.ERR == 0){
  19.                
  20.         int number=map(int(data.TemperatureC*100),2700,3400,0,65535);
  21.         pixels.clear();
  22.         Serial.println(int(data.TemperatureC*100));
  23.         Serial.println(number);
  24.         if(number>65535){
  25.           number=65535;
  26.         }
  27.         if(number<0){
  28.           number=0;
  29.         }
  30.         int r = number >> 16;
  31.         int g = number >> 8 & 0xFF;
  32.         int b = number & 0xFF;
  33.         pixels.setPixelColor(0, pixels.Color(r,g, b));
  34.         pixels.show();   
  35.         
  36.       }
  37.       delay(2000);
  38.   
  39. }
复制代码

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail