-
Notifications
You must be signed in to change notification settings - Fork 4
/
hs300x-simple.ino
88 lines (69 loc) · 1.78 KB
/
hs300x-simple.ino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/*
Module: hs300x-simple.ino
Function:
Simple example for HS300x sensor.
Copyright and License:
See accompanying LICENSE file.
Author:
Terry Moore, MCCI Corporation June 2019
*/
#include <Catena-HS300x.h>
#include <Arduino.h>
#include <Wire.h>
/****************************************************************************\
|
| Manifest constants & typedefs.
|
\****************************************************************************/
using namespace McciCatenaHs300x;
/****************************************************************************\
|
| Read-only data.
|
\****************************************************************************/
/****************************************************************************\
|
| Variables.
|
\****************************************************************************/
cHS300x gHs300x {Wire};
/****************************************************************************\
|
| Code.
|
\****************************************************************************/
void setup()
{
Serial.begin(115200);
// wait for USB to be attached.
while (! Serial)
yield();
Serial.println("HS300x Simple Test");
if (! gHs300x.begin())
{
for (;;)
{
Serial.println("gHs300x.begin() failed\n");
delay(2000);
}
}
}
void loop()
{
cHS300x::Measurements m;
float t, rh;
if (! gHs300x.getTemperatureHumidity(m))
{
Serial.println("can't read T/RH");
}
else
{
m.extract(t, rh);
Serial.print("T(F)=");
Serial.print(t * 1.8 + 32);
Serial.print(" RH=");
Serial.print(rh);
Serial.println("%");
}
delay(1000);
}