Revision 168:bfc84ee2839b analog_exp/onewire.h
b/analog_exp/onewire.h | ||
---|---|---|
2 | 2 |
#define __onewire_h_ |
3 | 3 |
|
4 | 4 |
#include <stdint.h> |
5 |
#include <stdbool.h> |
|
5 | 6 |
|
6 |
typedef char[8] onewire_id; |
|
7 |
typedef uint8_t onewire_id[8]; |
|
8 |
|
|
9 |
typedef struct { |
|
10 |
int16_t temperature; |
|
11 |
uint8_t threshold_h; |
|
12 |
uint8_t threshold_l; |
|
13 |
uint8_t config; |
|
14 |
uint8_t resv0; |
|
15 |
uint8_t resv1; |
|
16 |
uint8_t resv2; |
|
17 |
uint8_t crc; |
|
18 |
} ds18b20_scratchpad_t; |
|
7 | 19 |
|
8 | 20 |
void onewire_tx_byte(uint8_t data); |
9 | 21 |
uint8_t onewire_rx_byte(void); |
10 | 22 |
void onewire_readrom(onewire_id id); |
11 | 23 |
void onewire_matchrom(onewire_id id); |
24 |
void onewire_skiprom(void); |
|
12 | 25 |
void onewire_searchrom(onewire_id *id_list, uint8_t *n); |
26 |
uint8_t onewire_crc8(uint8_t *data, uint8_t length); |
|
27 |
bool onewire_crc_rom(onewire_id id); |
|
28 |
|
|
29 |
void onewire_convert_t(void); |
|
30 |
void onewire_write_scratchpad(uint8_t th, uint8_t tl, uint8_t config); |
|
31 |
bool onewire_read_scratchpad(ds18b20_scratchpad_t *scratchpad); |
|
13 | 32 |
|
14 | 33 |
#define ONEWIRE_CMD_READROM 0x33 |
15 | 34 |
#define ONEWIRE_CMD_SKIPROM 0xCC |
16 | 35 |
#define ONEWIRE_CMD_MATCHROM 0x55 |
17 | 36 |
#define ONEWIRE_CMD_SEARCHROM 0xF0 |
18 | 37 |
|
38 |
#define ONEWIRE_CMD_CONVERT_T 0x44 |
|
39 |
#define ONEWIRE_CMD_WRITE_SCRATCHPAD 0x4E |
|
40 |
#define ONEWIRE_CMD_READ_SCRATCHPAD 0xBE |
|
41 |
#define ONEWIRE_CMD_COPY_SCRATCHPAD 0x48 |
|
42 |
#define ONEWIRE_CMD_RECALL_EE 0xB8 |
|
43 |
#define ONEWIRE_CMD_READ_POWER 0xB4 |
|
44 |
|
|
19 | 45 |
#endif // __onewire_h_ |
20 | 46 |
|
Also available in: Unified diff