61 if (0x28==(code&0xff)) {
89 if (0==code && !
only) {
130 uint8_t scratchpad[9] = {0};
141 return ((int16_t)(scratchpad[1]<<8)+scratchpad[0])/16.0;
146 if (precision<9 || precision>12) {
150 if (0==code && !
only) {
171 uint8_t scratchpad[9] = {0};
182 uint8_t configuration[3] = {0};
183 configuration[0] = scratchpad[2];
184 configuration[1] = scratchpad[3];
185 configuration[2] = 0x1f+((precision-9)<<5);
library for Maxim DS18B20 digital temperature sensor (using 1-Wire protocol) (API) ...
bool sensor_ds18b20_list(uint64_t *code)
send all DS18B20 slaves on the bus
float sensor_ds18b20_temperature(uint64_t code)
get converted temperature
bool onewire_master_rom_search(uint64_t *code, bool alarm)
send SEARCH ROM command
uint64_t sensor_ds18b20_number(void)
get number of DS18B20 sensors on bus
bool onewire_master_function_write(uint8_t function, uint8_t *data, uint32_t bits)
issue function and write data
void onewire_master_setup(bool parasite, uint16_t recovery)
setup 1-wire peripheral
global definitions and methods (API)
library for 1-wire protocol as master (API)
bool onewire_master_function_read(uint8_t function, uint8_t *data, uint32_t bits)
issue function and read data
void sensor_ds18b20_setup(void)
setup 1-Wire peripheral to communicate with sensors on bus
bool onewire_master_rom_skip(void)
send SKIP ROM command (all slaves on the bus will be selected)
bool sensor_ds18b20_precision(uint64_t code, uint8_t precision)
set conversion precision
bool sensor_ds18b20_only(void)
verify if only DS18B20 sensors are on the bus
bool sensor_ds18b20_convert(uint64_t code)
start converting (e.g.
bool only
remember if only DS18B20 sensors on 1-Wire bus for certain functions
uint64_t sensors
remember number of DS18B20 sensors on 1-Wire bus for certain functions
bool onewire_master_rom_match(uint64_t code)
send MATCH ROM command to select a specific slave
uint8_t onewire_master_crc(uint8_t *data, uint32_t length)
compute CRC for 1-Wire
uint64_t last
remember code of last sensor
bool onewire_master_reset(void)
send reset pulse