Часы на esp8266 и max7219 + android управление

Тема в разделе "Глядите, что я сделал", создана пользователем IvanUA, 28 авг 2017.

?

Вы повторили это проект?

  1. Нет (просто ознакомился)

    35 голосов
    13,3%
  2. Да, один раз (попробовал)

    111 голосов
    42,0%
  3. Да, не однократно

    122 голосов
    46,2%
Можно выбрать сразу несколько вариантов.
  1. klslab

    klslab Нерд

    IvanUA а по получению данных с датчиков изменения есть в обновлении?
     
  2. IvanUA

    IvanUA Гуру

    Да есть обновления.
    Убрали из кода датчики DHT11/22
    На этот порт подключили приемник ИК пультов.
    К сожалению у меня пропала возможность редактировать первое сообщение что бы поправить схему, по этому схема будет в этом сообщении((((

    [​IMG][​IMG]

    Может админы ее перенесут в первый пост?
     
    lesnoy и Deniskyn нравится это.
  3. IvanUA

    IvanUA Гуру

    Кстати по поводу датчиков BMP. Столкнулся с проблемой что ЕСП не видела BMP-280. Сканер уверенно ее видел по адресу 0х76... Перемычкой между SD0 и +3.3В перевел модуль на адрес 0х77, и библиотеки увидели датчики)))
     
  4. klslab

    klslab Нерд

    я проще делал, в библиотеке адрес менял.
     
  5. max50a5

    max50a5 Гик

    Кстати, IvanUA забыл уточнить, что часы поддерживают датчики освещенности GY-49(MAX44009) и GY-302(BH1750).

    Если их не видно в вебе, но в COM-порту датчик определился, то нужно выбрать фоторезистор, сохранить и тогда он/они появятся.
     
    Последнее редактирование: 17 фев 2021
  6. klslab

    klslab Нерд

    IvanUA датчики (BMP-280, Si7021) продолжают не видится, RTC работает. сохранение на вкладках работает, но желательно ESP почистить от прежних версий, видимо при обновлении по ОТА много хвостов остается, даже сброс на заводские не все чистит.
     
    Последнее редактирование: 17 фев 2021
  7. IvanUA

    IvanUA Гуру

    Вы их поодиночно включали?
    ПС... Еще немного поправил код. Теперь отказы ардуиноджейсон стали очень редкими... Не нравится мне как работает эта библиотека, но воять что то подобное самому - это много времени убить((((
     
  8. klslab

    klslab Нерд

    да включал, не определились. на версии 4.4 все работают. Может подождать скетч, и попробовать с своими библиотеками, я их не обновлял.
     
    Последнее редактирование: 18 фев 2021
  9. IvanUA

    IvanUA Гуру

    BMP-280 - какой адрес?
     
  10. klslab

    klslab Нерд

    IvanUA у меня сейчас адрес по умолчанию 0х76, он штатно подтянут SDO к GND
     
  11. IvanUA

    IvanUA Гуру

    Или переводить датчик в 0х77, или потом когда будет скетч ломать библиотеку... Хотя если честно, то не вижу в этом особого смысла((( Я бы кинул перемычка на 3.3В
     
  12. klslab

    klslab Нерд

    хорошо, а с этим 0x40(Si7021), что делать?
     
  13. IvanUA

    IvanUA Гуру

    Этот я сейчас проверить не могу. Но вы можете.
    Загрузите библиотеку Adafruit_HTU21DF.h
    Дальше откройте пример из этой библиотеки, и посмотрите будут ли идти показания
     
  14. klslab

    klslab Нерд

    загрузить куда? в ESP? какие пины, как назначать, что прописывать? Иван, мы большинство, максимум можем повторить уже чей то проект с небольшими правками под себя, но сделать то что сделали ВЫ в написании кода, тут увы. Лично я понимаю 0,01 процента, не более, хоть электроникой занимаюсь более 30 лет.
     
  15. IvanUA

    IvanUA Гуру

    Да тут особо то и понимать не нужно)))
    Заходите в ИДЕ в управление библиотеками, в поиске находите эту библиотеку и устанавливаете.
    Далее в ИДЕ в примерах открываете скетч с примером и загружаете его в ЕСП.
    Железячно менять ничего не надо, почти все сенсоры сидят на стандартной шине I2C.
    Смотрите ком порт. Примеры обычно пишут или не нашли датчик, или показания полученные от датчика.
    ПС. Иногда в примерах используется другая скорость ком порта... мы использует 115200
     
  16. max50a5

    max50a5 Гик

    Код (C++):
    /***************************************************
      This is an example for the HTU21D-F Humidity & Temp Sensor

      Designed specifically to work with the HTU21D-F sensor from Adafruit
      ----> https://www.adafruit.com/products/1899

      These displays use I2C to communicate, 2 pins are required to
      interface
    ****************************************************/


    #include <Wire.h>
    #include "Adafruit_HTU21DF.h"

    // Connect Vin to 3-5VDC
    // Connect GND to ground
    // Connect SCL to I2C clock pin (A5 on UNO)
    // Connect SDA to I2C data pin (A4 on UNO)

    Adafruit_HTU21DF htu = Adafruit_HTU21DF();

    void setup() {
      Serial.begin(9600);
      Serial.println("HTU21D-F test");

      if (!htu.begin()) {
        Serial.println("Couldn't find sensor!");
        while (1);
      }
    }

    void loop() {
        float temp = htu.readTemperature();
        float rel_hum = htu.readHumidity();
        Serial.print("Temp: "); Serial.print(temp); Serial.print(" C");
        Serial.print("\t\t");
        Serial.print("Humidity: "); Serial.print(rel_hum); Serial.println(" \%");
        delay(500);
    }
     
  17. klslab

    klslab Нерд

    ок, спасибо, попробую.
    еще вопрос - у меня в ИДЕ стоит библиотека "Adafruit_Si7021.h" а вы мне приводите пример Adafruit_HTU21DF.h - они что взаимозаменяемые?
     
    Последнее редактирование: 18 фев 2021
  18. IvanUA

    IvanUA Гуру

    Или надо поменять здесь на 115200
    или в компорту скорость снизить до 9600
    [​IMG][​IMG]
     
  19. max50a5

    max50a5 Гик

    Они разные. Поэтому нужно установить Adafruit_HTU21DF.h
     
  20. klslab

    klslab Нерд

    загрузил примеры и не понял зачем вы мне сказали грузить пример на Adafruit_HTU21DF.h, если у меня Si7021.
    20:59:20.577 ->
    20:59:20.577 -> Soft WDT reset
    20:59:20.577 ->
    20:59:20.577 -> >>>stack>>>
    20:59:20.577 ->
    20:59:20.577 -> ctx: cont
    20:59:20.577 -> sp: 3ffffdf0 end: 3fffffc0 offset: 01b0
    20:59:20.577 -> 3fffffa0: feefeffe feefeffe 3ffee48c 40202b88
    20:59:20.577 -> 3fffffb0: feefeffe feefeffe 3ffe84ec 40100f09
    20:59:20.577 -> <<<stack<<<
    20:59:20.624 ->
    20:59:20.624 -> ets Jan 8 2013,rst cause:2, boot mode:(3,7)
    20:59:20.624 ->
    20:59:20.624 -> load 0x4010f000, len 1392, room 16
    20:59:20.624 -> tail 0
    20:59:20.624 -> chksum 0xd0
    20:59:20.624 -> csum 0xd0
    20:59:20.624 -> v3d128e5c
    20:59:20.624 -> ~ld
    20:59:20.671 -> HTU21D-F test
    20:59:20.718 -> Couldn't find sensor!

    а это на Si7021
    21:13:28.704 -> Humidity: 29.90 Temperature: 28.83
    21:13:29.735 -> Humidity: 29.90 Temperature: 28.84
    21:13:30.768 -> Humidity: 29.89 Temperature: 28.84