?lang_form? ?lang_select? ?lang_submit? ?lang_endform?
{HEADER END}
{BLAME START}

library

?curdirlinks? -

Blame information for rev 6

Line No. Rev Author Line
1 6 kaklik /*! \file ds1631.h \brief Dallas DS1631 Temperature Sensor Driver Library. */
2 //*****************************************************************************
3 //
4 // File Name : 'ds1631.h'
5 // Title : Dallas DS1631 Temperature Sensor Driver Library
6 // Author : Pascal Stang - Copyright (C) 2004
7 // Created : 2004.02.10
8 // Revised : 2004.02.19
9 // Version : 0.1
10 // Target MCU : Atmel AVR Series
11 // Editor Tabs : 4
12 //
13 // NOTE: This code is currently below version 1.0, and therefore is considered
14 // to be lacking in some functionality or documentation, or may not be fully
15 // tested. Nonetheless, you can expect most functions to work.
16 //
17 /// \ingroup driver_hw
18 /// \defgroup ds1631 Dallas DS1631 Temperature Sensor Driver (ds1631.c)
19 /// \code #include "ds1632.h" \endcode
20 /// \par Overview
21 /// This library provides high-level functions for accessing the Dallas
22 /// Semiconductor DS1631 I2C Temperature Sensor.
23 ///
24 /// The basic specs of the DS1631 are:
25 /// - operating temperature range -55 to +125 degrees C
26 /// - high accuracy of +/-0.5C over 0 to +70 degrees C
27 /// - 8 to 12-bit signed output
28 /// - thermostat functionality
29 //
30 // This code is distributed under the GNU Public License
31 // which can be found at http://www.gnu.org/licenses/gpl.txt
32 //
33 //*****************************************************************************
34  
35 #ifndef DS1631_H
36 #define DS1631_H
37  
38 #include "global.h"
39  
40 // constants/macros/typdefs
41 #define DS1631_I2C_ADDR 0x90 ///< Base I2C address of DS1631 devices
42  
43 #define DS1631_CMD_STARTCONV 0x51 ///< DS1631 Start conversion command byte
44 #define DS1631_CMD_STOPCONV 0x22 ///< DS1631 Stop conversion command byte
45 #define DS1631_CMD_READTEMP 0xAA ///< DS1631 Read Temperature command byte
46 #define DS1631_CMD_ACCESSTH 0xA1 ///< DS1631 TH read/write command byte
47 #define DS1631_CMD_ACCESSTL 0xA2 ///< DS1631 TL read/write command byte
48 #define DS1631_CMD_ACCESSCONFIG 0xAC ///< DS1631 Config read/write command byte
49 #define DS1631_CMD_SWPOR 0x54 ///< DS1631 Software Reset command byte
50  
51 #define DS1631_CONFIG_1SHOT 0x01
52 #define DS1631_CONFIG_POL 0x02
53 #define DS1631_CONFIG_R0 0x04
54 #define DS1631_CONFIG_R1 0x08
55 #define DS1631_CONFIG_NVB 0x10
56 #define DS1631_CONFIG_TLF 0x20
57 #define DS1631_CONFIG_THF 0x40
58 #define DS1631_CONFIG_DONE 0x80
59  
60 // functions
61  
62 //! Initialize the DS1631 chip
63 u08 ds1631Init(u08 i2cAddr);
64  
65 //! Reset the DS1631 chip to its power-on defaults
66 u08 ds1631Reset(u08 i2cAddr);
67  
68 //! Set the configuration byte of the DS1631
69 void ds1631SetConfig(u08 i2cAddr, u08 config);
70  
71 //! Get the configuration byte of the DS1631
72 u08 ds1631GetConfig(u08 i2cAddr);
73  
74 //! Start a temperature conversion
75 void ds1631StartConvert(u08 i2cAddr);
76  
77 //! Stop a temperature conversion (or stop continuous conversion mode)
78 void ds1631StopConvert(u08 i2cAddr);
79  
80 //! Read the result of a temperature conversion
81 s16 ds1631ReadTemp(u08 i2cAddr);
82  
83 //! Set the Temp-High threshold
84 void ds1631SetTH(u08 i2cAddr, s16 value);
85  
86 //! Set the Temp-Low threshold
87 void ds1631SetTL(u08 i2cAddr, s16 value);
88  
89 //! Get the Temp-High threshold
90 s16 ds1631GetTH(u08 i2cAddr);
91  
92 //! Get the Temp-Low threshold
93 s16 ds1631GetTL(u08 i2cAddr);
94  
95 void ds1631WriteTempReg(u08 i2cAddr, u08 cmd, s16 value);
96 s16 ds1631ReadTempReg(u08 i2cAddr, u08 cmd);
97  
98  
99 #endif
{BLAME END}
{FOOTER START}

Powered by WebSVN v2.8.3