#include "sceptre.h"
#include "ds18b20.h"
Go to the source code of this file.
Defines | |
#define | DS18B20_PIN 19 |
#define | DS18B20_OUTPUT IODIR1 |= (1<<DS18B20_PIN) |
#define | DS18B20_INPUT IODIR1 &= ~(1<<DS18B20_PIN) |
#define | DS18B20_SET IOSET1 = (1<<DS18B20_PIN) |
#define | DS18B20_CLR IOCLR1 = (1<<DS18B20_PIN) |
#define | DS18B20_READ_BIT (IOPIN1&(1<<DS18B20_PIN))==0? 0 : 1 |
#define | DS18B20_ROM_SEARCH (0xf0) |
#define | DS18B20_ROM_READ (0x33) |
#define | DS18B20_ROM_MATCH (0x55) |
#define | DS18B20_ROM_SKIP (0xcc) |
#define | DS18B20_ROM_SEARCH_ALARM (0xec) |
#define | DS18B20_FUNCTION_CONVERT (0x44) |
#define | DS18B20_FUNCTION_WRITE_SCRATCHPAD (0x4e) |
#define | DS18B20_FUNCTION_READ_SCRATCHPAD (0xbe) |
#define | DS18B20_FUNCTION_COPY_SCRATCHPAD (0x48) |
#define | DS18B20_FUNCTION_RECALL (0xb8) |
#define | DS18B20_FUNCTION_READ_POWER_SUPPLY (0xb4) |
#define | ONEWIRE_DEVICE_PRESENT 1 |
#define | ONEWIRE_NO_DEVICE 0 |
Functions | |
uint8_t | onewire_do_crc8 (uint8_t value) |
void | onewire_wait_us (uint32_t us) |
uint8_t | onewire_read_bit (void) |
void | onewire_write_bit (uint8_t bit) |
uint8_t | onewire_reset (void) |
uint8_t | onewire_read_byte (void) |
void | onewire_write_byte (uint8_t byte) |
bool_t | onewire_read_serial (uint8_t *p_serial) |
bool_t | ds18b20_init (void) |
bool_t | ds18b20_write_scratchpad (uint8_t th, uint8_t tl, uint8_t config) |
float | ds18b20_read_temperature (void) |
int | ds18b20_read (void *p_dst, uint32_t dst_size) |
int | ds18b20_write (const uint8_t *p_src, uint32_t src_size) |
bool_t | ds18b20_read_serial (uint8_t *p_serial) |
Variables | |
const uint8_t | onewire_crc_table [] |
Implementation of DS18B20 1-wire thermometer driver.
Definition in file ds18b20.c.
bool_t ds18b20_init | ( | void | ) |
int ds18b20_read | ( | void * | p_dst, | |
uint32_t | dst_size | |||
) |
bool_t ds18b20_read_serial | ( | uint8_t * | p_serial | ) |
float ds18b20_read_temperature | ( | void | ) |
int ds18b20_write | ( | const uint8_t * | p_src, | |
uint32_t | src_size | |||
) |
bool_t ds18b20_write_scratchpad | ( | uint8_t | th, | |
uint8_t | tl, | |||
uint8_t | config | |||
) |
uint8_t onewire_do_crc8 | ( | uint8_t | value | ) |
uint8_t onewire_read_bit | ( | void | ) |
uint8_t onewire_read_byte | ( | void | ) |
bool_t onewire_read_serial | ( | uint8_t * | p_serial | ) |
uint8_t onewire_reset | ( | void | ) |
void onewire_wait_us | ( | uint32_t | us | ) |
void onewire_write_bit | ( | uint8_t | bit | ) |
void onewire_write_byte | ( | uint8_t | byte | ) |
const uint8_t onewire_crc_table[] |
{ 0, 94,188,226, 97, 63,221,131,194,156,126, 32,163,253, 31, 65, 157,195, 33,127,252,162, 64, 30, 95, 1,227,189, 62, 96,130,220, 35,125,159,193, 66, 28,254,160,225,191, 93, 3,128,222, 60, 98, 190,224, 2, 92,223,129, 99, 61,124, 34,192,158, 29, 67,161,255, 70, 24,250,164, 39,121,155,197,132,218, 56,102,229,187, 89, 7, 219,133,103, 57,186,228, 6, 88, 25, 71,165,251,120, 38,196,154, 101, 59,217,135, 4, 90,184,230,167,249, 27, 69,198,152,122, 36, 248,166, 68, 26,153,199, 37,123, 58,100,134,216, 91, 5,231,185, 140,210, 48,110,237,179, 81, 15, 78, 16,242,172, 47,113,147,205, 17, 79,173,243,112, 46,204,146,211,141,111, 49,178,236, 14, 80, 175,241, 19, 77,206,144,114, 44,109, 51,209,143, 12, 82,176,238, 50,108,142,208, 83, 13,239,177,240,174, 76, 18,145,207, 45,115, 202,148,118, 40,171,245, 23, 73, 8, 86,180,234,105, 55,213,139, 87, 9,235,181, 54,104,138,212,149,203, 41,119,244,170, 72, 22, 233,183, 85, 11,136,214, 52,106, 43,117,151,201, 74, 20,246,168, 116, 42,200,150, 21, 75,169,247,182,232, 10, 84,215,137,107, 53 }