码迷,mamicode.com
首页 > 其他好文 > 详细

arduino MQ135空气质量传感器 OLED显示屏 实现空气质量检测显示

时间:2020-03-15 16:25:57      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:驱动   最新版本   ==   加载   inpu   查找   switch   字体大小   eset   

1.先上效果图:

技术图片

实现效果:arduino开发板每两秒获取A0引脚MQ135数据并显示到OLED显示屏中

MQ135接线图:

烟雾传感器模块的VCC、GND分别连接到开发板的5V、GND。模块的AO引脚连接到开发板的模拟引脚A0,模块的DO引脚连接到开发板的数字引脚2。

技术图片

OLED显示屏接线图:

OLED屏的VCC和GND分别连接开发板的3.3V和GND,OLED屏的SDA和SCL分别连接开发板A4和A5。

技术图片

烧录代码前先安装驱动库:

OLED显示屏驱动库非常多,本篇我们使用两个库:「Adafruit_SSD1306」和「Adafruit_GFX」。在Arduino IDE中点击「项目」—「加载库」—「管理库」,分别查找选择最新版本进行安装。

arduino烧录代码:

/*
 * MQ135 + OLED显示
 */
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#include <Arduino.h>

#define Sensor_AO A0
#define Sensor_DO 2

#define OLED_RESET     4
Adafruit_SSD1306 display(128, 64, &Wire,OLED_RESET);
unsigned int sensorValue = 0;

void setup() {

  pinMode(Sensor_DO, INPUT);
  Serial.begin(9600);
  
  display.begin(SSD1306_SWITCHCAPVCC,0x3C);
  display.setTextColor(WHITE);//开像素点发光
  
  display.display(); // 开显示
 
}

void loop() {
  display.clearDisplay();//清屏
  sensorValue = analogRead(Sensor_AO);
  Serial.print("Sensor AD Value = ");
  Serial.println(sensorValue);

  display.setTextSize(1); //设置字体大小  
  display.setCursor(35, 5);//设置显示位置
  display.println("-Air quality-");
  
  display.setTextSize(2);//设置字体大小  
  display.setCursor(15, 30);//设置显示位置
  display.println(sensorValue);
  
  display.display(); // 开显示

  if (digitalRead(Sensor_DO) == LOW)
  {
    Serial.println("Alarm!");
  }
  delay(2000);
}

参考自:

Arduino提高篇11—烟雾传感器MQ-2:https://blog.csdn.net/TonyIOT/article/details/103380128

Arduino提高篇01—点亮OLED显示屏:https://blog.csdn.net/TonyIOT/article/details/96367511

MQ135传感器详细资料:http://www.icdemi.com/MQ-135_97675.html

 

arduino MQ135空气质量传感器 OLED显示屏 实现空气质量检测显示

标签:驱动   最新版本   ==   加载   inpu   查找   switch   字体大小   eset   

原文地址:https://www.cnblogs.com/Strangers/p/12498156.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!