2229|3

229

帖子

3

TA的资源

一粒金砂(高级)

楼主
 

【DFRobot 云雀气象仪评测】Arduino无线智能空气监测系统搭建-04全彩OLED显示获取数据 [复制链接]

本帖最后由 eew_TKwwQ7 于 2023-12-3 23:09 编辑

一、实现功能

将DFRobot 云雀气象仪连接到Arduino开发板上,实时显示云雀气象仪采集到的数据,需要用到的硬件有:

 

 

改模块采用SPI接口,可使用Arduino对应Adafruit_SSD1331、SPI库进行驱动,模块分辨率为96*64,个性化显示数据够用了,为了便于操作OLED直接插入开发板上,单片机直驱供电(工作电流小于30mA,可以直接驱动供电)

序号 引脚 名称 ARDUINO引脚
1 GND 电源地 /
2 VCC 电源正 Pin13
3 SCX 时钟线 Pin12
4 SDA 数据线 Pin11
5 RES 复位线 Pin10
6 DC 数据/命令 Pin9
7 CS 片选 Pin8

 

全彩OLED屏幕资料: 7pin彩屏RGB_0.95oled_TEST.rar (1.59 MB, 下载次数: 0)

 

二、程序代码

 


#include "DFRobot_LarkWeatherStation.h"
#include <Wire.h>
#include <Arduino.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1331.h>
#include <SPI.h>

#define DEVICE_ADDR                  0x42

#define MODESWITCH        /*UART:*/0 /*I2C: 0*/

#define sclk   12//SCL
#define mosi    11//SDA
#define cs      8// CS
#define rst    10//RES
#define dc     9//DC
// Color definitions
#define  BLACK          0x0000
#define BLUE            0x001F
#define RED             0xF800
#define GREEN           0x07E0
#define CYAN            0x07FF
#define MAGENTA         0xF81F
#define YELLOW          0xFFE0  
#define WHITE           0xFFFF


Adafruit_SSD1331 display = Adafruit_SSD1331(cs, dc, mosi, sclk, rst);  

DFRobot_LarkWeatherStation_I2C atm(DEVICE_ADDR,&Wire);
void setup(void){
Serial.begin(115200);
atm.begin();

pinMode(13, OUTPUT);//OLED供电
digitalWrite(13,HIGH);//OLED供电
display.begin();//OLED初始化
display.fillScreen(BLACK);//OLED清屏
}

void loop(void){
    Serial.println("----------------------------");
    Serial.print(atm.getValue("Temp"));
    Serial.println(atm.getUnit("Temp"));
    Serial.print(atm.getValue("Humi"));
    Serial.println(atm.getUnit("Humi"));
    Serial.print(atm.getValue("Speed"));
    Serial.println(atm.getUnit("Speed"));
    Serial.println(atm.getValue("Dir"));
    Serial.print(atm.getValue("Altitude"));
    Serial.println(atm.getUnit("Altitude"));
    Serial.print(atm.getValue("Pressure"));
    Serial.println(atm.getUnit("Pressure"));
    Serial.println("----------------------------");
    Serial.println(atm.getInformation(true));
    delay(100);

display.setCursor(0, 0);display.setTextColor(BLACK);display.setTextSize(2);display.println("DFROBOT"); 
display.setCursor(0, 16);display.setTextColor(BLACK);display.setTextSize(1);display.print("Temp:"); display.print(atm.getValue("Temp")); 
display.setCursor(0, 24);display.setTextColor(BLACK);display.setTextSize(1);display.print("Humi:"); display.print(atm.getValue("Humi")); 
display.setCursor(0, 32);display.setTextColor(BLACK);display.setTextSize(1);display.print("Speed:"); display.print(atm.getValue("Speed")); 
display.setCursor(0, 40);display.setTextColor(BLACK);display.setTextSize(1);display.print("Dir:"); display.print(atm.getValue("Dir")); 
display.setCursor(0, 48);display.setTextColor(BLACK);display.setTextSize(1);display.print("Altitude:"); display.print(atm.getValue("Altitude")); 
display.setCursor(0, 56);display.setTextColor(BLACK);display.setTextSize(1);display.print("Pressure:"); display.print(atm.getValue("Pressure")); 




display.setCursor(0, 0);display.setTextColor(RED);display.setTextSize(2);display.println("DFROBOT"); 
display.setCursor(0, 16);display.setTextColor(YELLOW);display.setTextSize(1);display.print("Temp:"); display.print(atm.getValue("Temp")); 
display.setCursor(0, 24);display.setTextColor(BLUE);display.setTextSize(1);display.print("Humi:"); display.print(atm.getValue("Humi")); 
display.setCursor(0, 32);display.setTextColor(GREEN);display.setTextSize(1);display.print("Speed:"); display.print(atm.getValue("Speed")); 
display.setCursor(0, 40);display.setTextColor(CYAN);display.setTextSize(1);display.print("Dir:"); display.print(atm.getValue("Dir")); 
display.setCursor(0, 48);display.setTextColor(MAGENTA);display.setTextSize(1);display.print("Altitude:"); display.print(atm.getValue("Altitude")); 
display.setCursor(0, 56);display.setTextColor(WHITE);display.setTextSize(1);display.print("Pressure:"); display.print(atm.getValue("Pressure")); 


}

 

三、显示效果

 

 

以上就是全彩OLED显示获取数据内容

WeChat_20231203230552

此帖出自传感器论坛

最新回复

那是另外的应用了,最好弄个可以离线查看的     详情 回复 发表于 2023-12-4 11:42
点赞 关注
 
 

回复
举报

6498

帖子

10

TA的资源

版主

沙发
 

屏有点小了,这个传感器参数挺多的,怎么也得全显示了  

此帖出自传感器论坛

点评

后面用labview电脑上位机显示  详情 回复 发表于 2023-12-4 10:08
个人签名

在爱好的道路上不断前进,在生活的迷雾中播撒光引

 
 
 

回复

229

帖子

3

TA的资源

一粒金砂(高级)

板凳
 
秦天qintian0303 发表于 2023-12-4 09:44 屏有点小了,这个传感器参数挺多的,怎么也得全显示了  

后面用labview电脑上位机显示


此帖出自传感器论坛

点评

那是另外的应用了,最好弄个可以离线查看的    详情 回复 发表于 2023-12-4 11:42
 
 
 

回复

6498

帖子

10

TA的资源

版主

4
 
eew_TKwwQ7 发表于 2023-12-4 10:08 后面用labview电脑上位机显示

那是另外的应用了,最好弄个可以离线查看的  

此帖出自传感器论坛
个人签名

在爱好的道路上不断前进,在生活的迷雾中播撒光引

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表