DS18B20 test program

Dependencies:   mbed

/media/uploads/va009039/ds18b20-lpc812.jpg

original:
https://developer.mbed.org/users/wkinkeldei/code/TempMeasure/file/9e88b2508768/one_wire.cpp https://developer.mbed.org/users/wkinkeldei/code/TempMeasure/

Committer:
va009039
Date:
Fri Jan 04 10:20:46 2013 +0000
Revision:
0:c85bb83259cc
Child:
1:c03fe1e5f435
first commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
va009039 0:c85bb83259cc 1 #ifndef ONE_WIRE_H
va009039 0:c85bb83259cc 2 #define ONE_WIRE_H
va009039 0:c85bb83259cc 3
va009039 0:c85bb83259cc 4 #include "mbed.h"
va009039 0:c85bb83259cc 5
va009039 0:c85bb83259cc 6 // One Wire command codes
va009039 0:c85bb83259cc 7 #define OVERDRIVE_SKIP 0x3C
va009039 0:c85bb83259cc 8 // ROM commands
va009039 0:c85bb83259cc 9 #define SEARCH_ROM 0xF0
va009039 0:c85bb83259cc 10 #define READ_ROM 0x33
va009039 0:c85bb83259cc 11 #define MATCH_ROM 0x55
va009039 0:c85bb83259cc 12 #define SKIP_ROM 0xCC
va009039 0:c85bb83259cc 13 #define ALARM_SEARCH 0xEC
va009039 0:c85bb83259cc 14 // Functions Commnds
va009039 0:c85bb83259cc 15 #define CONVERT 0x44
va009039 0:c85bb83259cc 16 #define WRITESCRATCH 0x4E
va009039 0:c85bb83259cc 17 #define READSCRATCH 0xBE
va009039 0:c85bb83259cc 18 #define COPYSCRATCH 0x48
va009039 0:c85bb83259cc 19 #define RECALLE2 0xB8
va009039 0:c85bb83259cc 20 #define READPOWERSUPPLY 0xB4
va009039 0:c85bb83259cc 21
va009039 0:c85bb83259cc 22 class OneWire {
va009039 0:c85bb83259cc 23 private:
va009039 0:c85bb83259cc 24 DigitalInOut port;
va009039 0:c85bb83259cc 25
va009039 0:c85bb83259cc 26 public:
va009039 0:c85bb83259cc 27 OneWire(PinName pin);
va009039 0:c85bb83259cc 28 int reset();
va009039 0:c85bb83259cc 29 void write_bit(int bit);
va009039 0:c85bb83259cc 30 int read_bit();
va009039 0:c85bb83259cc 31 void write_byte(int data);
va009039 0:c85bb83259cc 32 int read_byte();
va009039 0:c85bb83259cc 33 void block(char* data, int data_len);
va009039 0:c85bb83259cc 34
va009039 0:c85bb83259cc 35 // high level functions: prepare(), delay(1000ms), read()
va009039 0:c85bb83259cc 36 void prepare_read();
va009039 0:c85bb83259cc 37 int read_temperature();
va009039 0:c85bb83259cc 38 };
va009039 0:c85bb83259cc 39
va009039 0:c85bb83259cc 40 #endif