PZEM-004T + STM32/Cortex измерение энергии + всякое

Поділитися
Вставка
  • Опубліковано 27 вер 2024
  • БП-шечка alii.pub/6atezx
    группа в тележеньке t.me/+TCiftqhJ...

КОМЕНТАРІ • 7

  • @ИванСидоров-к9м
    @ИванСидоров-к9м 2 роки тому +1

    Модуль хороший. И идея применения тоже. Правда у PZEM всего несколько ячеек для запроса данных. Т.е. запрос - константа. Расчет CRC нужен лишь в случае проверки целостности принятых данных. И возникает резонный вопрос: а нужен ли он в показометре?

    • @MrCrossRaccoon
      @MrCrossRaccoon  2 роки тому

      Отправка команд обязательна с контрольной суммой. Иначе он просто не отвечает. И нет команды на отключение. Ну там вообще грустно с командами и данными. ST-шные девайсы вон по 70 регистров значащих содержат. В показометре он не нужен, о чём я и говорил :) Я от него стабилизацию делал и мониторинг основных параметров. Но это такое, сильно начальный уровень. Но с чего-то надо начинать, иба взрослые девайсы мозг выносят навылет просто. А Аналогдевайс вон вообще от нас полностью отгородились информационно.

    • @ИванСидоров-к9м
      @ИванСидоров-к9м 2 роки тому +1

      @@MrCrossRaccoon То, что сделан задел на будущее - хорошо. Здесь Вам честь и хвала. Я один раз с DS18B20 столкнулся, когда она отвалилась при 80 градусах... С тех пор всегда использую CRC сумму. И только в случае, когда кончается память контроллера в готовом устройстве начинаю решать, жертвовать ей или нет.

  • @avusaa
    @avusaa Рік тому

    привет, у меня есть некоторые проблемы с моим uart? не могли бы вы поделиться исходным кодом, пожалуйста?

  • @галичанскийсифилис-п4л

    Привет.Не слышал до этого про PZEM.Но если я правильно понял у тебя тоже косяки случаются с usart на stm32.Вот раньше было на ардуино объявил Serial.begin(115200) и всё работает как часы.Отправляет принимает строки любой длины.С stm32 какие то траблы.Нигде ни у кого не видел толкового примера по приёму строки произвольной длины.Сам пробовал и HAL и LL и как то не нравится мне как оно работает у меня.Пока нашёл единственный выход для более менее надёжной работы это фикированнная длина принимаемого буфера и фиксированная длина отправленной строки

    • @MrCrossRaccoon
      @MrCrossRaccoon  2 роки тому

      С PZEM проблема не в юарт СТМ, а в типично тупорылом китайском коде :) Вроде взяли за основу модбас, но как прописали это на коленке, так и торгуют девайсами с параличным наброском кода, не внося никаких изменений. В итоге там от модбаса только название. Определённый плюс ардуиновского Serial в том, что там за нас уже все методы уже прописаны до мелочей, а для СТМ нам надо самостоятельно всё писать и парсить буферы самостоятельно. Ну либо дёргать где-то уже готовые решения. Serial., например, сам добьёт твой буфер концом строки и ты даже не в курсе будешь, что реально твой буфер на байт больше и в конце там разделитель. Ну в СТМ ручками добиваем сервисный байт, вот тебе и приём буфера любой длины с проверкой окончания передачи по этому байту. Ну или в начале пакета передаём длину. Принимаем уже в структуру с буфером и длиной этого буфера. Ну или по ситуации. В LL ещё и флаги регистра юарт мониторим постоянно, о чём ардуинщики вообще не в курсе :) Либо скорость и краткость, либо неповоротливая ардуина, что поделать :)

  • @quannguyentheminh3507
    @quannguyentheminh3507 Рік тому

    Hi. Can you share your source. Thank you in advanced