TempSensor_NXP_Arduino 1.0.1
Temperature sensor device operation sample code for Arduino
Loading...
Searching...
No Matches
TempSensor.h
Go to the documentation of this file.
1
9#ifndef ARDUINO_TEMP_SENSOR_H
10#define ARDUINO_TEMP_SENSOR_H
11
12#include <Arduino.h>
13#include <stdint.h>
14
15#include "I2C_device.h"
16
25class TempSensor : public I2C_device
26{
27public:
32
33 /*
34 * Methods to define class fundamental features, overridden by sub-classes
35 */
36 TempSensor( const uint8_t i2c_address );
37 TempSensor( TwoWire& wire, const uint8_t i2c_address );
38 virtual ~TempSensor();
39 virtual float temp( void ) = 0;
40
47 virtual float read( void );
48};
49
50
59class LM75B : public TempSensor
60{
61public:
69
74 LM75B( const uint8_t i2c_address = (0x90 >> 1) );
75
81 LM75B( TwoWire& wire, const uint8_t i2c_address = (0x90 >> 1) );
82
85 virtual ~LM75B();
86
91 virtual float temp( void ) override;
92
101 virtual void thresholds( const float v0, const float v1 );
102
107 virtual void os_mode( const mode flag );
108
109#if DOXYGEN_ONLY
116 virtual float read( void );
117
122 bool ping( void );
123
131 int reg_w( const uint8_t reg_adr, uint8_t *data, const uint16_t size );
132
140 int reg_w( const uint8_t reg_adr, const uint8_t data );
141
149 int reg_r( const uint8_t reg_adr, uint8_t *data, const uint16_t size );
150
156 uint8_t reg_r( const uint8_t reg_adr );
157
163 void write_r8( const uint8_t reg, const uint8_t val );
164
172 void write_r16( const uint8_t reg, const uint16_t val );
173
179 uint8_t read_r8( const uint8_t reg );
180
188 uint16_t read_r16( const uint8_t reg );
189
198 void bit_op8( const uint8_t reg, const uint8_t mask, const uint8_t value );
199 void bit_op16( const uint8_t reg, const uint16_t mask, const uint16_t value );
200#endif // DOXYGEN_ONLY
201};
202
203
212class PCT2075 : public LM75B
213{
214public:
223
228 PCT2075( const uint8_t i2c_address = (0x90 >> 1) );
229
235 PCT2075( TwoWire& wire, const uint8_t i2c_address = (0x90 >> 1) );
236
239 virtual ~PCT2075();
240
241#if DOXYGEN_ONLY
246 virtual float temp( void );
247
254 virtual float read( void );
255
264 virtual void thresholds( const float v0, const float v1 );
265
270 virtual void os_mode( const mode flag );
271
276 bool ping( void );
282 void write_r8( const uint8_t reg, const uint8_t val );
283
291 void write_r16( const uint8_t reg, const uint16_t val );
292
298 uint8_t read_r8( uint8_t reg );
299
307 uint16_t read_r16( const uint8_t reg );
308
317 void bit_op8( const uint8_t reg, const uint8_t mask, const uint8_t value );
318 void bit_op16( const uint8_t reg, const uint16_t mask, const uint16_t value );
319#endif // DOXYGEN_ONLY
320};
321
322
331class P3T1755 : public LM75B
332{
333public:
341
346 P3T1755( const uint8_t i2c_address = (0x98 >> 1) );
347
353 P3T1755( TwoWire& wire, const uint8_t i2c_address = (0x90 >> 1) );
354
357 virtual ~P3T1755();
358
367 virtual void thresholds( const float v0, const float v1 ) override;
368
369#if DOXYGEN_ONLY
374 virtual float temp( void );
375
382 virtual float read( void );
383
388 virtual void os_mode( const mode flag );
389
394 bool ping( void );
395
401 void write_r8( const uint8_t reg, const uint8_t val );
402
410 void write_r16( const uint8_t reg, const uint16_t val );
411
417 uint8_t read_r8( const uint8_t reg );
418
426 uint16_t read_r16( const uint8_t reg );
427
436 void bit_op8( const uint8_t reg, const uint8_t mask, const uint8_t value );
437 void bit_op16( const uint8_t reg, const uint16_t mask, const uint16_t value );
438#endif // DOXYGEN_ONLY
439};
440
441
450class P3T1085 : public P3T1755
451{
452public:
457 P3T1085( uint8_t i2c_address = (0x90 >> 1) );
458
464 P3T1085( TwoWire& wire, const uint8_t i2c_address = (0x90 >> 1) );
465
468 virtual ~P3T1085();
469
474 virtual void os_mode( const mode flag ) override;
475
480 virtual bool clear( void );
481
482#if DOXYGEN_ONLY
487 virtual float temp( void );
488
495 virtual float read( void );
496
505 virtual void thresholds( const float v0, const float v1 );
506
511 bool ping( void );
512
520 void write_r16( const uint8_t reg, const uint16_t val );
521
529 uint16_t read_r16( const uint8_t reg );
530
539 void bit_op8( const uint8_t reg, const uint8_t mask, const uint8_t value );
540 void bit_op16( const uint8_t reg, const uint16_t mask, const uint16_t value );
541#endif // DOXYGEN_ONLY
542};
543
544#endif // ARDUINO_TEMP_SENSOR_H
virtual void os_mode(const mode flag)
bool ping(void)
virtual float read(void)
@ Thyst
Definition TempSensor.h:66
uint16_t read_r16(const uint8_t reg)
void write_r8(const uint8_t reg, const uint8_t val)
void bit_op8(const uint8_t reg, const uint8_t mask, const uint8_t value)
virtual float temp(void) override
int reg_w(const uint8_t reg_adr, const uint8_t data)
void bit_op16(const uint8_t reg, const uint16_t mask, const uint16_t value)
LM75B(const uint8_t i2c_address=(0x90 > > 1))
virtual ~LM75B()
uint8_t reg_r(const uint8_t reg_adr)
int reg_r(const uint8_t reg_adr, uint8_t *data, const uint16_t size)
int reg_w(const uint8_t reg_adr, uint8_t *data, const uint16_t size)
virtual void thresholds(const float v0, const float v1)
void write_r16(const uint8_t reg, const uint16_t val)
uint8_t read_r8(const uint8_t reg)
virtual float read(void)
void write_r16(const uint8_t reg, const uint16_t val)
void bit_op8(const uint8_t reg, const uint8_t mask, const uint8_t value)
void bit_op16(const uint8_t reg, const uint16_t mask, const uint16_t value)
P3T1085(uint8_t i2c_address=(0x90 > > 1))
virtual bool clear(void)
bool ping(void)
uint16_t read_r16(const uint8_t reg)
virtual void thresholds(const float v0, const float v1)
virtual void os_mode(const mode flag) override
virtual float temp(void)
virtual ~P3T1085()
uint16_t read_r16(const uint8_t reg)
void write_r16(const uint8_t reg, const uint16_t val)
void bit_op8(const uint8_t reg, const uint8_t mask, const uint8_t value)
virtual void os_mode(const mode flag)
void write_r8(const uint8_t reg, const uint8_t val)
uint8_t read_r8(const uint8_t reg)
virtual void thresholds(const float v0, const float v1) override
P3T1755(const uint8_t i2c_address=(0x98 > > 1))
virtual float temp(void)
virtual float read(void)
virtual ~P3T1755()
bool ping(void)
void bit_op16(const uint8_t reg, const uint16_t mask, const uint16_t value)
virtual void thresholds(const float v0, const float v1)
virtual float temp(void)
virtual void os_mode(const mode flag)
virtual ~PCT2075()
bool ping(void)
void bit_op16(const uint8_t reg, const uint16_t mask, const uint16_t value)
void write_r8(const uint8_t reg, const uint8_t val)
uint16_t read_r16(const uint8_t reg)
uint8_t read_r8(uint8_t reg)
PCT2075(const uint8_t i2c_address=(0x90 > > 1))
void bit_op8(const uint8_t reg, const uint8_t mask, const uint8_t value)
virtual float read(void)
void write_r16(const uint8_t reg, const uint16_t val)
virtual float read(void)
virtual ~TempSensor()
virtual float temp(void)=0
TempSensor(const uint8_t i2c_address)
Definition TempSensor.cpp:5