?
Оба работают от разных линий питания, но сидят на одном I2c. Дисплей на I2c может работать на 3.3в
Компилирую)))
Пересадите.
Как? У еспшки только одна линия I2c, и то программная
Есть много вариантов этого действия?
Не знаю. Слышал есть библиотеки, которые увеличивают количество линий I2c, но я их не видел
Ничего не изменилось
Scanning…
I2C device found at address 0x27 !
I2C device found at address 0x40 !
done
Причём тут это, если речь идёт о напряжении питания?
Тем, что написано в первом сообщении.
Лечится преобразователем уровней.
Таким, или самодельным на двух мосфет транзисторах 2N7002 и четырёх резисторах.
Последний также есть готовый на али.
И что, этот код компилируется?
Да, а что в нëм не так?
Спасибо, попробую
Декларация функции внутри функции )))
Так питание раздельное и на дисплей идëт 5в и на датчик идëт 3.3в. Я линию в самом начале проекта развëл.
Хорошо, попробую сегодня поправить, но я до этого уже проверял, результата не дало
Вот такое накидал и смотри ка…
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
int temp, hum;
void setup() {
temp = 1;
hum = 2;
}
void loop() {
void temperature();
lcd.setCursor(1, 0);
lcd.print(temp);
lcd.setCursor(1, 1);
lcd.print(hum);
}
Оно ворнингами сыпит, но компилируется
Warnings
new.cpp: In function ‘void* operator new(std::size_t, std::nothrow_t)’:
new.cpp:59:60: warning: unused parameter ‘tag’ [-Wunused-parameter]
void * operator new(std::size_t size, const std::nothrow_t tag) noexcept {
^~~
new.cpp: In function ‘void* operator new (std::size_t, const std::nothrow_t&)’:
new.cpp:68:63: warning: unused parameter ‘tag’ [-Wunused-parameter]
void * operator new(std::size_t size, const std::nothrow_t& tag) noexcept {
^~~
new.cpp: In function ‘void operator delete(void*, const std::nothrow_t&)’:
new.cpp:103:55: warning: unused parameter ‘tag’ [-Wunused-parameter]
void operator delete(void* ptr, const std::nothrow_t& tag) noexcept {
^~~
new.cpp: In function ‘void operator delete (void*, const std::nothrow_t&)’:
new.cpp:106:57: warning: unused parameter ‘tag’ [-Wunused-parameter]
void operator delete(void* ptr, const std::nothrow_t& tag) noexcept {
^~~
Скетч использует 3162 байт (9%) памяти устройства. Всего доступно 32256 байт.
Глобальные переменные используют 224 байт (10%) динамической памяти, оставляя 1824 байт для локальных переменных. Максимум: 2048 байт.
Какие есть ещë идеи?
Почитайте, что такое подтяжка, как она зависит от питания.
Пока что видно, что понимание того, о чем вам пишут, отсутствует.
Я знаю что такое подтягивающие резисторы, если я этого не написал, то это не значит, что я этого не понимаю. Использовал подтяжку 10Ком, 20кОм, 1Ком. Знаю, что подтяжка в 20Ком многовата, но так писали на даташитах. Особого результата этого не дало
И преобразователи уровней не помогли?