Вт июн 14, 2022 00:13:15
Вт июн 14, 2022 00:15:44
Вт июн 14, 2022 00:17:08
... недостатки DS18B20 не менее значимы.
Вт июн 14, 2022 00:19:48
Вт июн 14, 2022 00:20:26
... Очень медленная реакция.
Вт июн 14, 2022 00:23:12
Вт июн 14, 2022 00:25:32
Вт июн 14, 2022 00:32:02
Вт июн 14, 2022 00:53:10
MF52 Time Constant of ≤7 seconds in still air
Available tolerances: ±1%, ±2%, ±3% and ±5%
Вт июн 14, 2022 00:55:36
Вт июн 14, 2022 00:57:49
Вт июн 14, 2022 00:58:50
Вт июн 14, 2022 01:00:10
Вт июн 14, 2022 01:20:51
Вт июн 14, 2022 01:33:02
Вт июн 14, 2022 16:42:07
snprintf(txt, sizeof(txt), "%d.%d°", curr_temp/10, curr_temp % 10); // Форматируем строку из примера выше. Число 77 станет "7.7°"
get_text_bounds((G_FONT_t *)&Tahoma16, txt, &x, &y, &l1, &h); // Вычисляем габариты строки (сколько она займёт места на экране). Значения размеров будут помещены в переменные l1 и h
write_string((G_FONT_t *)&Tahoma16, txt, &l1, &cy, framebuffer); // Вызываем функцию отрисовки полученой выше строки в экранный буфер framebuffer.
// И где-то сильно позже будет вызвана функция отправки данных на дисплей.
// Процесс вывода из буфера на экран.
epd_init();
// ESP_LOGI("Renderer", "EPD Power ON");
epd_poweron();
// ESP_LOGI("Renderer", "EPD CLS");
epd_clear();
// ESP_LOGI("Renderer", "EPD Draw");
epd_draw_grayscale_image(epd_full_screen(), framebuffer);
// ESP_LOGI("Renderer", "EPD Power OFF");
epd_poweroff_all();
Чт июн 16, 2022 19:50:12
Пт июн 17, 2022 07:09:15
unsigned int temper_tt;
temper_tt=dt_check();
char ds18b20_GetSign(unsigned int dt)
{
//Проверим 11-й бит
if (dt&(1<<11)) return 1;
else return 0;
}
char ds18b20_GetSign(int dt)
{
if (dt < 0) return 1;
else return 0;
}
//преобразование температуры в единицы
char converttemp (unsigned int tt)
{
char t = tt>>4;//сдвиг и отсечение части старшего байта
return t;
}
char converttemp (int tt)
{
char t = tt / 16;
return t;
}
char text_array[5];
// Работает со значениями -55~127 градусов
// [-55n ] n = NULL-терминатор строки
// [-18n ]
// [ 0n ]
// [ 22n ]
// [ 127n]
void temp_to_text(int temp, chat *text) {
int temp_value = temp;
if (temp_value < 0) {
text[0] = '-';
temp_value = -temp_value;
} else {
text[0] = ' ';
}
// Здесь temp_value всегда имеет положительное значение.
if (temp_value < 10) {
// Значения 0..9
text[1] = '0' + temp_value;
text[2] = 0;
} else if (temp_value < 100) {
// Значения 10..99
text[1] = '0' + (temp_value / 10);
text[2] = '0' + (temp_value % 10);
text[3] = 0;
} else {
// Значения 100..127
text[1] = '1'; // Потому что не больше 127
temp_value = temp_value % 100;
text[2] = '0' + (temp_value / 10);
text[3] = '0' + (temp_value % 10);
text[4] = 0;
};
}
Пт июн 17, 2022 07:21:06
Пт июн 17, 2022 07:48:37