1.5 KiB
1.5 KiB
ESP32 ESP-IDF and ESP8266 RTOS SDK component for 1-Wire DS18B20 sensor
Tested on
- ESP8266 RTOS_SDK v3.4
- ESP32 ESP-IDF v5.2
Dependencies
Function description
Using
In an existing project, run the following command to install the components:
cd ../your_project/components
git clone http://git.zh.com.ru/alexey.zholtikov/zh_onewire.git
git clone http://git.zh.com.ru/alexey.zholtikov/zh_ds18b20.git
In the application, add the component:
#include "zh_ds18b20.h"
Examples
One or more 1-Wire DS18B20 sensors on bus:
#include "zh_ds18b20.h"
void app_main(void)
{
uint8_t *rom;
float temperature;
zh_onewire_init(GPIO_NUM_5);
if (zh_onewire_reset() != ESP_OK)
{
printf("There are no 1-Wire devices available on the bus.\n");
}
else
{
zh_onewire_search_rom_init();
for (;;)
{
rom = zh_onewire_search_rom_next();
if (rom == NULL)
{
break;
}
printf("Found device ROM: ");
for (uint8_t i = 0; i < 8; ++i)
{
printf("%X ", *(rom++));
}
printf("\n");
rom -= 8;
zh_ds18b20_read(rom, &temperature);
printf("Temperature: %0.2f\n", temperature);
}
}
}
Any feedback will be gladly accepted.