yet another 18B20 Temperature sensor. variable number of sensors working in parasite mode, serial 16x2 display with diagnostic output and post to a rest web service

Dependencies:   EthernetInterface HTTPClient NTPClient mbed-rtos mbed

Committer:
wkinkeldei
Date:
Thu Jan 03 18:50:43 2013 +0000
Revision:
1:9e88b2508768
Parent:
0:53f05303850a
added switch sensor

Who changed what in which revision?

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