DS18B20 test program
original:
https://developer.mbed.org/users/wkinkeldei/code/TempMeasure/file/9e88b2508768/one_wire.cpp
https://developer.mbed.org/users/wkinkeldei/code/TempMeasure/
one_wire.h
- Committer:
- va009039
- Date:
- 2015-08-31
- Revision:
- 1:c03fe1e5f435
- Parent:
- 0:c85bb83259cc
File content as of revision 1:c03fe1e5f435:
#ifndef ONE_WIRE_H #define ONE_WIRE_H #include "mbed.h" // One Wire command codes #define OVERDRIVE_SKIP 0x3C // ROM commands #define SEARCH_ROM 0xF0 #define READ_ROM 0x33 #define MATCH_ROM 0x55 #define SKIP_ROM 0xCC #define ALARM_SEARCH 0xEC // Functions Commnds #define CONVERT 0x44 #define WRITESCRATCH 0x4E #define READSCRATCH 0xBE #define COPYSCRATCH 0x48 #define RECALLE2 0xB8 #define READPOWERSUPPLY 0xB4 class OneWire { private: DigitalInOut port; public: OneWire(PinName pin); int reset(); void write_bit(int bit); int read_bit(); void write_byte(int data); int read_byte(); void block(char* data, int data_len); // high level functions: prepare(), delay(1000ms), read() void prepare_read(); int read_temperature(); int read_temperature_raw(uint8_t data[], size_t size = 9); }; #endif