не могу вывести на экран tft 2.2 spi 240x320 ili9341 датчик ds18b20 используя библиотеку UTFT

damir sabirov
Offline
Зарегистрирован: 23.03.2020
#include <OneWire.h>
#include <DallasTemperature.h>
#include <UTFT.h>
UTFT myGLCD(TFT01_22SP, 9, 8, 12, 11, 10);
OneWire oneWire(2);
DallasTemperature ds(&oneWire)

DeviceAddress ya1 = {0x28, 0x82, 0xB7, 0x16, 0xA8, 0x1, 0x3C, 0xBF};
DeviceAddress ya2 = {0x28, 0x6B, 0x2F, 0x16, 0xA8, 0x1, 0x3C, 0x89};
DeviceAddress ya3 = {0x28, 0x10, 0x34, 0x16, 0xA8, 0x1, 0x3C, 0xE5};
DeviceAddress ya4 = {0x28, 0xFC, 0x20, 0x16, 0xA8, 0x1, 0x3C, 0xD2};
DeviceAddress ya5 = {0x28, 0xBB, 0x35, 0x16, 0xA8, 0x1, 0x3C, 0x8C};
DeviceAddress ya6 = {0x28, 0x2E, 0x35, 0x16, 0xA8, 0x1, 0x3C, 0xD6};
DeviceAddress ya7 = {0x28, 0xF1, 0xA0, 0x16, 0xA8, 0x1, 0x3C, 0x53};
DeviceAddress ya8 = {0x28, 0xCD, 0xA5, 0x16, 0xA8, 0x1, 0x3C, 0x11};
DeviceAddress ya9 = {0x28, 0x58, 0x83, 0x16, 0xA8, 0x1, 0x3C, 0x2F};
DeviceAddress ya10 = {0x28, 0xEF, 0xEA, 0x16, 0xA8, 0x1, 0x3C, 0x4F};
DeviceAddress ya11 = {0x28, 0x69, 0x24, 0x16, 0xA8, 0x1, 0x3C, 0x97};
DeviceAddress ya12 = {0x28, 0xDD, 0x4C, 0x16, 0xA8, 0x1, 0x3C, 0x63};
DeviceAddress ya13 = {0x28, 0xCD, 0x4B, 0x16, 0xA8, 0x1, 0x3C, 0x69};
DeviceAddress ya14 = {0x28, 0xFB, 0x10, 0x16, 0xA8, 0x1, 0x3C, 0xD3};
DeviceAddress ya15 = {0x28, 0x16, 0x6D, 0x16, 0xA8, 0x1, 0x3C, 0x31};
DeviceAddress ya16 = {0x28, 0x5D, 0xEE, 0x16, 0xA8, 0x1, 0x3C, 0x39};
DeviceAddress ya17 = {0x28, 0x61, 0x50, 0x16, 0xA8, 0x1, 0x3C, 0x44};
DeviceAddress ya18 = {0x28, 0xEE, 0xD, 0x16, 0xA8, 0x1, 0x3C, 0xF3};
DeviceAddress ya19 = {0x28, 0xB6, 0xF0, 0x16, 0xA8, 0x1, 0x3C, 0x36};
DeviceAddress ya20 = {0x28, 0xC1, 0x16, 0x16, 0xA8, 0x1, 0x3C, 0x6D};
DeviceAddress ya21 = {0x28, 0xCC, 0x1D, 0x16, 0xA8, 0x1, 0x3C, 0x57};
DeviceAddress ya22 = {0x28, 0xFE, 0x8, 0x16, 0xA8, 0x1, 0x3C, 0x7A};
DeviceAddress ya23 = {0x28, 0xED, 0x19, 0x16, 0xA8, 0x1, 0x3C, 0xC9};
DeviceAddress ya24 = {0x28, 0x7, 0x33, 0x16, 0xA8, 0x1, 0x3C, 0x6A};
DeviceAddress ya25 = {0x28, 0xDA, 0x58, 0x16, 0xA8, 0x1, 0x3C, 0x85};
DeviceAddress ya26 = {0x28, 0xED, 0xEB, 0x16, 0xA8, 0x1, 0x3C, 0xEC};
DeviceAddress ya27 = {0x28, 0x44, 0x37, 0x16, 0xA8, 0x1, 0x3C, 0x59};
DeviceAddress ya28 = {0x28, 0xB6, 0x8, 0x16, 0xA8, 0x1, 0x3C, 0xAE};
DeviceAddress ya29 = {0x28, 0x53, 0xD0, 0x16, 0xA8, 0x1, 0x3C, 0xC};
DeviceAddress ya30 = {0x28, 0x8B, 0x18, 0x16, 0xA8, 0x1, 0x3C, 0x75};
DeviceAddress ya31 = {0x28, 0x82, 0x2B, 0x16, 0xA8, 0x1, 0x3C, 0x29};
DeviceAddress ya32 = {0x28, 0xFE, 0x3D, 0x16, 0xA8, 0x1, 0x3C, 0x2C};
DeviceAddress ya33 = {0x28, 0xAE, 0xF1, 0x16, 0xA8, 0x1, 0x3C, 0x1};
DeviceAddress ya34 = {0x28, 0xB9, 0xEC, 0x16, 0xA8, 0x1, 0x3C, 0x4F};
DeviceAddress ya35 = {0x28, 0x7, 0x43, 0x16, 0xA8, 0x1, 0x3C, 0x7};
DeviceAddress ya36 = {0x28, 0xD4, 0x98, 0x16, 0xA8, 0x1, 0x3C, 0xB4};
DeviceAddress ya37 = {0x28, 0x7E, 0xF, 0x16, 0xA8, 0x1, 0x3C, 0xC1};
DeviceAddress ya38 = {0x28, 0x42, 0x3C, 0x16, 0xA8, 0x1, 0x3C, 0x9B};
DeviceAddress ya39 = {0x28, 0xDE, 0x88, 0x16, 0xA8, 0x1, 0x3C, 0x7};
DeviceAddress ya40 = {0x28, 0xE1, 0x87, 0x16, 0xA8, 0x1, 0x3C, 0xA1};
extern uint8_t BigFont[];
void setup() {
  
  myGLCD.InitLCD(1);
  myGLCD.clrScr();
  ds.begin();
}

void loop() {
    ds.requestTemperatures(); // считываем температуру с датчиков
    myGLCD.setFont(BigFont);
    myGLCD.print("ya1", 0, 0);
    myGLCD.print(ds.getTempC(ya1), 60, 0);
    myGLCD.print("C",150,0);
    
   
    delay(1000);
}

 

ПОМОГИТЕ ПОЖАЛУЙСТА
b707
Offline
Зарегистрирован: 26.05.2017

и что, реально подключено 40 датчиков?

А общая длина провода какая?

Ворота
Ворота аватар
Offline
Зарегистрирован: 10.01.2016

damir sabirov пишет:

не могу вывести на экран tft 2.2 spi 240x320 ili9341 датчик ds18b20 используя библиотеку UTFT

датчик на экран никак не выводится. Он же проводами припаян, как его на экран-то?

damir sabirov
Offline
Зарегистрирован: 23.03.2020

ДЛИННА БУДЕТ НЕ БОЛЬШАЯ, МНЕ В ИНКУБАТОР НАДО, ПОД КАЖДОЕ ЯЙЦО НУЖНО, В ЮТУБЕ ПОСМОТРЕЛ, ЧТО НУЖНО ТЕМПЕРАТУРУ КАЖДОГО ЯЙЦА СМОТРЕТЬ ЧТОБЫ ЗАДОХЛИКОВ НЕ БЫЛО ,ЧТОБЫ ТЕМПЕРАТУРА НЕ ПРЕВЫШАЛА 37.8 "С" , Я ЕЩЁ ПЛАНИРУЮ ДАТЧИК ВЛАЖНОСТИ ПОДКЛЮЧИТЬ И ДВА СЕРВОПРИВОДА ДЛЯ ОТКРЫВАНИЯ КРЫШКИ ИНКУБАТОРА ДЛЯ ПРОВЕТРИВАНИЯ И ЕЩЁ МАЛЕНЬКИЙ НАСОСИК ДЛЯ ПОДДЕРЖАНИЯ ВЛАЖНОСТИ С ДАТЧИКОМ УРОВНЯ ВОДЫ, МНЕ БЫ РЕШИТЬ С ТЕМПЕРАТУРНЫМ ДАТЧИКОМ ПРОБЛЕММУ      

damir sabirov
Offline
Зарегистрирован: 23.03.2020

Я ИМЕЛ ВВИДУ ПОКАЗАНИЯ ДАТЧИКА ЧТОБЫ НА ЭКРАНЕ СМОТРЕТЬ 

damir sabirov
Offline
Зарегистрирован: 23.03.2020

ОШИБКУ ВЫДАЁТ ЧТО   myGLCD.print(ds.getTempC(ya1), 60, 0); НЕТУ ТАКОЙ КОМАНДЫ В <DallasTemperature.h>

b707
Offline
Зарегистрирован: 26.05.2017

Дамир, когда вы пишете все КАПСЛОКОМ - такое впечатление. что вы орете. Не надо так делать.

выложите копию сообщения об ошибке - только не картинкой, а текстом.

damir sabirov
Offline
Зарегистрирован: 23.03.2020

Я про капслок даже и не знал , что он так значит , извиняюсь.

Вот ошибка;

no matching function for call to 'UTFT::print(float, int, int)'
damir sabirov
Offline
Зарегистрирован: 23.03.2020

это я пока один датчик решил проверить, посмотреть, как будет выглядеть на экране , а тут ошибка 

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

А вот так выводить не пробовали? 

printNumF( float , dec, x , y [, sym1 [, len [, sym2 ] ] ] ); Выводит на дисплей вещественные числа или содержимое переменных вещественного типа.

Источник

damir sabirov
Offline
Зарегистрирован: 23.03.2020

нет пока не пробовал сейчас попробую

damir sabirov
Offline
Зарегистрирован: 23.03.2020

Спасибо большое первый датчик заработал буду дальше думать 

bwn
Offline
Зарегистрирован: 25.08.2014

damir sabirov пишет:

МНЕ В ИНКУБАТОР НАДО, ПОД КАЖДОЕ ЯЙЦО НУЖНО, В ЮТУБЕ ПОСМОТРЕЛ, ЧТО НУЖНО ТЕМПЕРАТУРУ КАЖДОГО ЯЙЦА СМОТРЕТЬ ЧТОБЫ ЗАДОХЛИКОВ НЕ БЫЛО ,ЧТОБЫ ТЕМПЕРАТУРА НЕ ПРЕВЫШАЛА 37.8 "С"   

А смысл смотреть, если ничего изменить нельзя? Или к каждому яйцу свой нагреватель будет? Вы динозавров, из реликтовых яиц выводить пытаетесь?))))

DIYMan
DIYMan аватар
Offline
Зарегистрирован: 23.11.2015

damir sabirov пишет:

ДЛИННА БУДЕТ НЕ БОЛЬШАЯ, МНЕ В ИНКУБАТОР НАДО, ПОД КАЖДОЕ ЯЙЦО НУЖНО, В ЮТУБЕ ПОСМОТРЕЛ, ЧТО НУЖНО ТЕМПЕРАТУРУ КАЖДОГО ЯЙЦА СМОТРЕТЬ ЧТОБЫ ЗАДОХЛИКОВ НЕ БЫЛО ,ЧТОБЫ ТЕМПЕРАТУРА НЕ ПРЕВЫШАЛА 37.8 "С" 

В первом сделанном мной автоматизированном инкубаторе (просто тупой контроль по температуре, даже автоповорот не подключал - так, когда вспомню, переверну закладки) выводимость была 90% - из 20 яиц вывелись 18 птенцов. Что подтверждает простой факт: как бы человек ни старался всё опошлить - природа всё равно возьмёт своё.