45 lines
1.6 KiB
C
45 lines
1.6 KiB
C
#ifndef __MCP9808_h__
|
|
#define __MCP9808_h__
|
|
|
|
//##############################################################################
|
|
#if(ENABLE_USE_MCP9808)
|
|
//##############################################################################
|
|
|
|
#define MCP_ADR 0x3e
|
|
|
|
//REGISTER POINTER
|
|
#define RFU 0x00 // RFU, Reserved for Future Use (Read-Only register)
|
|
#define CONFIG 0x01 // Configuration register (CONFIG)
|
|
#define TUPPER 0x02 // Alert Temperature Upper Boundary Trip register (TUPPER)
|
|
#define TLOWER 0x03 // Alert Temperature Lower Boundary Trip register (TLOWER)
|
|
#define TCRIT 0x04 // Critical Temperature Trip register (TCRIT)
|
|
#define TA 0x05 // Temperature register (TA)
|
|
#define MID 0x06 // Manufacturer ID register
|
|
#define DID 0x07 // Device ID/Revision register
|
|
#define RREG 0x08 // Resolution register
|
|
|
|
// for Configuration register (CONFIG)
|
|
#define CONVERSION 0 // Continuous conversion (power-up default)
|
|
#define SHUT_DOWN BIT8 // Shutdown (Low-Power mode)
|
|
|
|
// for Resolution register
|
|
#define RESULT_0_5_BIT 0x00
|
|
#define RESULT_0_25_BIT 0x01
|
|
#define RESULT_0_125_BIT 0x02
|
|
#define RESULT_0_0625_BIT 0x03
|
|
|
|
void WriteWordRegister(u8 regBuf, u16 regData);
|
|
u16 ReadWordRegister(u8 regBuf);
|
|
void WriteByteRegister(u8 regBuf, u8 regData);
|
|
u16 ReadByteRegister(u8 regBuf);
|
|
void TestTemperatureInit(u8 regValue);
|
|
s16 TestTemperature(void);
|
|
void TemperatureLowPower(void);
|
|
|
|
//##############################################################################
|
|
#endif
|
|
//##############################################################################
|
|
#endif
|
|
|
|
|