ЭкоСреда ecoins

Мультиплатформенная среда реального времени - библиотеки, блоки, примеры

zhulen820
Сержант
Сообщения: 193
Зарегистрирован: 29.08.2016{, 22:44}
Репутация: 6
Откуда: Серпухов
Имя: Александр

ЭкоСреда ecoins

#421

Сообщение zhulen820 » 29.12.2022{, 15:22}

В блоке считывания аналогового входа (№10.02) при выборе "нормализованное значение+фильтр дрейфа ADC" пропадает выход. В других комбинациях все нормально. Фильтр бегущего среднего понравился.

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#422

Сообщение ecoins » 29.12.2022{, 16:02}

zhulen820 писал(а):
29.12.2022{, 15:22}
В блоке считывания аналогового входа (№10.02) при выборе "нормализованное значение+фильтр дрейфа ADC" пропадает выход.
Спасибо. Поправил. Исправленный блок в тесте.
Test_LCD_v60_vr02_281222.zip
(1.1 МБ) 30 скачиваний

slsl
Рядовой
Сообщения: 69
Зарегистрирован: 08.12.2021{, 22:41}
Репутация: 8
Имя: Вячеслав

ЭкоСреда ecoins

#423

Сообщение slsl » 29.12.2022{, 23:09}

Блок для комбинированного датчика АНТ + ВМР - показания давления прилично привирают (занижает).
Если использовать просто блок для ВМР280 - показывает верно.

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#424

Сообщение ecoins » 30.12.2022{, 00:31}

slsl писал(а):
29.12.2022{, 23:09}
Блок для комбинированного датчика АНТ + ВМР - показания давления прилично привирают (занижает).
Если использовать просто блок для ВМР280 - показывает верно.
В комбинированном блоке AHT+BMP нужно использовать BMP280.
Сейчас как раз тестирую эти блоки и обращу внимание на показания с разных сенсоров.

Отправлено спустя 2 часа 22 минуты 21 секунду:
slsl писал(а):
29.12.2022{, 23:09}
Блок для комбинированного датчика АНТ + ВМР - показания давления прилично привирают (занижает).
Если использовать просто блок для ВМР280 - показывает верно.
Возможно в блоке и были некоторые проблемы - они исправлены. Показания сравнивал на нескольких комбинированных датчиков и BMP180 - примерно совпадают.
Test_LCD_v60_vr04_291222.zip
(1.39 МБ) 30 скачиваний
В тесте исправленный блок.

alexcccp
Рядовой
Сообщения: 37
Зарегистрирован: 16.01.2018{, 18:53}
Репутация: 0

ЭкоСреда ecoins

#425

Сообщение alexcccp » 30.12.2022{, 03:50}

ecoins писал(а):
29.12.2022{, 09:45}
Ваше понимание близко к реальности. Функции SPI.transfer одновременно передает и принимает байт, так устроена эта функция.
Пожалуйста поясните, я не понимаю как передать переменную ?

пример

Плата.1 - Мастер
С передачей все ясно. мы объявили переменную назначили CS периодический или по сигналу кидаем ее в линию.
как извлечь данные передаваемые Slave

Плата.2 - Salave (тоже самое)
Объявили в настройках SPI - Slave
Сказали какую ногу слушаем пусть 7
Передаем данные в линию, а как узнать что сказал Master ?
spi3.JPG
spi3.JPG (25.91 КБ) 1256 просмотров

на блоках SPI.Transfer нет выходов, только входы.


\\из института помню что SPI это закольцованные регистры по типу сдвиговой микросхемы 595, только разнесенные на некотором удалении.
со своими правилами передачи и тактирования сигнала
spi1.JPG
spi1.JPG (22.03 КБ) 1257 просмотров

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#426

Сообщение ecoins » 30.12.2022{, 16:26}

alexcccp писал(а):
30.12.2022{, 03:50}
Пожалуйста поясните, я не понимаю как передать переменную ?
Можно передать и блоком spi.transfer - но мы этот блок сделали для внутренних нужд и не развивали его.
alexcccp писал(а):
30.12.2022{, 03:50}
Плата.2 - Salave (тоже самое)
Объявили в настройках SPI - Slave
Сказали какую ногу слушаем пусть 7
Блок Slave пока не делали.
alexcccp писал(а):
30.12.2022{, 03:50}
на блоках SPI.Transfer нет выходов, только входы.
Это сделаем, будет и выход.
--------------------
А какую задачу Вы хотите решить?
Возможно лучше и проще реализовать решение отдельными библиотеками?
Нас тоже интересуют подобны задачи, в частности двусторонний обмен NRF2401.
При Вашей настойчивости и готовности к тестированию мы могли ли бы объединить усилия.

alexcccp
Рядовой
Сообщения: 37
Зарегистрирован: 16.01.2018{, 18:53}
Репутация: 0

ЭкоСреда ecoins

#427

Сообщение alexcccp » 30.12.2022{, 22:57}

ecoins
Задача простая, устройства сбора аналоговых данных. Расстояние между устройствами совсем не большое. Опрашивать эти данные нужно часто. МК тактируются от одного генератора (каждый со своими мыслями - аналоговый сигнал один на всех, но как то хитро) и по общему таймеру они синхронизируется и в конечном итоге строятся графики. Для чего точно - я не знаю, какое то лабораторное оборудование.
И все там в белых халатах :smile44:

NRF2401 очень заинтересован! только мне больше интересны модули которые медленнее и дальше. Lora. но все никак не доберусь до этой задачи.

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#428

Сообщение ecoins » 31.12.2022{, 03:32}

alexcccp писал(а):
30.12.2022{, 22:57}
Задача простая, устройства сбора аналоговых данных. Расстояние между устройствами совсем не большое. Опрашивать эти данные нужно часто. МК тактируются от одного генератора (каждый со своими мыслями - аналоговый сигнал один на всех, но как то хитро) и по общему таймеру они синхронизируется и в конечном итоге строятся графики. Для чего точно - я не знаю, какое то лабораторное оборудование.
И все там в белых халатах
Любопытная задача, но в первом приближении не для SPI c внешними микроконтроллерами. И исходные данные, в том числе и по времени для подбора решения необходимо уточнить...
Сами по себе "белые халаты" не являются источником "трезвой" задачи". часто бывает ровно наоборот.
alexcccp писал(а):
30.12.2022{, 22:57}
NRF2401 очень заинтересован!

Когда подойдем к задаче, хорошо, что вроде Вы готовы подключиться к тестированию.

alexcccp
Рядовой
Сообщения: 37
Зарегистрирован: 16.01.2018{, 18:53}
Репутация: 0

ЭкоСреда ecoins

#429

Сообщение alexcccp » 04.01.2023{, 09:42}

ecoins писал(а):
31.12.2022{, 03:32}
Сами по себе "белые халаты" не являются источником "трезвой" задачи". часто бывает ровно наоборот.
Там ненужно ничего передумывать, только собрать по человеческий и увеличить пропускную способность, сейчас Modbus. Нужен также Modbus но с меньшим циклом опросов.
мне SPI интересен не только для данной задачи, постоянно возникали такие мысли что то объединить для передачи данных.
ecoins писал(а):
31.12.2022{, 03:32}
Когда подойдем к задаче, хорошо, что вроде Вы готовы подключиться к тестированию.
NRF2401
Заказал несколько модулей. (были но куда то пропали)
Есть какой то план по тестированию ?

\\
С новым годом )

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#430

Сообщение ecoins » 04.01.2023{, 14:15}

alexcccp писал(а):
04.01.2023{, 09:42}
Там ненужно ничего передумывать, только собрать по человеческий и увеличить пропускную способность, сейчас Modbus.
Человеческое или наоборот это субъективный, эмоциальный взгляд, в автоматизации не самый лучший подход. Пропускную способность можно сильно изменить через более производительные каналы коммуникации - Ethernet, беспроводная связь и др.
alexcccp писал(а):
04.01.2023{, 09:42}
Нужен также Modbus но с меньшим циклом опросов.

В протоколе Modbus нет цикла опросов. Другое дело, если Master собирает данные со Slave, на котором производятся измерения. В некоторых случаях решается вопрос изменением Master на Slave и наоборот. Или подбор других протоколов и интерфейсов для сбора данных.
alexcccp писал(а):
04.01.2023{, 09:42}
мне SPI интересен не только для данной задачи, постоянно возникали такие мысли что то объединить для передачи данных.
Потратили усилия и сделали блок FLProg Master-SPI. Реализация функций Slave-SPI не сделана - для разных контроллеров разная реализация и лучше использовать прерывания.
alexcccp писал(а):
04.01.2023{, 09:42}
NRF2401
Заказал несколько модулей. (были но куда то пропали)
Есть какой то план по тестированию ?
Если будут дополнительные к нашим усилиям участники, например Вы, то дело пойдет поживее, пока не хватает времени.

alexcccp
Рядовой
Сообщения: 37
Зарегистрирован: 16.01.2018{, 18:53}
Репутация: 0

ЭкоСреда ecoins

#431

Сообщение alexcccp » 05.01.2023{, 02:50}

ecoins писал(а):
04.01.2023{, 14:15}
Потратили усилия и сделали блок FLProg Master-SPI. Реализация функций Slave-SPI не сделана - для разных контроллеров разная реализация и лучше использовать прерывания.
Очень Жаль. Ваш труд и то что не получилось.
а есть варианты библиотек с которыми можно ознакомится или с чем заработало?

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#432

Сообщение ecoins » 05.01.2023{, 04:18}

alexcccp писал(а):
05.01.2023{, 02:50}
а есть варианты библиотек с которыми можно ознакомится или с чем заработало?

viewtopic.php?t=8064&start=380#p119594
пост #398

alexcccp
Рядовой
Сообщения: 37
Зарегистрирован: 16.01.2018{, 18:53}
Репутация: 0

ЭкоСреда ecoins

#433

Сообщение alexcccp » 05.01.2023{, 13:09}

ecoins писал(а):
04.01.2023{, 14:15}
Потратили усилия и сделали блок FLProg Master-SPI. Реализация функций Slave-SPI не сделана - для разных контроллеров разная реализация и лучше использовать прерывания.
Попробую реализовать данную возможность на UART, есть вариант крутить USART в режиме Multi-processor Communication Mode но я не силен в написании кода.

в голову пришла идея сделать подобие работы шины SPI только на UART с сигналом SS (выбор). Можно выключать приема передатчики на аппаратном уровне - защелками. Таким образом оставив только один контролер в общей сети UART с полнымдуплексом.
Возможно ли наглухо заглушить UART программно, чтоб он даже не думал сделать TX? :smile37:

размышления
rs485 примерно так и работает только в полудуплексе.
Последний раз редактировалось alexcccp 05.01.2023{, 13:37}, всего редактировалось 2 раза.

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#434

Сообщение ecoins » 05.01.2023{, 13:23}

alexcccp писал(а):
05.01.2023{, 13:09}
Возможно ли наглухо заглушить UART программно, чтоб он даже не думал сделать TX?
Возможно.

alexcccp
Рядовой
Сообщения: 37
Зарегистрирован: 16.01.2018{, 18:53}
Репутация: 0

ЭкоСреда ecoins

#435

Сообщение alexcccp » 05.01.2023{, 13:37}

верно ли я понимаю данная опция реализует полное отключение интерфейса (EN)
uart en.JPG
uart en.JPG (12.7 КБ) 807 просмотров
посмотрел текущие блоки упоминания о UART-CK нет (генератор) - я так понимаю USART в FLRog не реализуется.

// Добавлено позже
Да вроде ничего не отвечает, чуть позже придумаю нагрузочный тест так чтоб наверняка


// Добавлено позже
Несколько активных устройств (не в кольце) на UART впринцепи не сильно мешают друг другу. Очень удивительно! :smile44:
но в какой то момент наступает коллизия и данные перестают передаваться. (полезный опыт, устройств в UART всего 3)

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#436

Сообщение ecoins » 05.01.2023{, 18:16}

alexcccp писал(а):
05.01.2023{, 13:37}
посмотрел текущие блоки упоминания о UART-CK нет (генератор) - я так понимаю USART в FLRog не реализуется.
Только UART - TX,RX.
Но реализовать можно, если нужно. А зачем USART нужен? Сам стандарт достаточно старый, есть разные средства обмена между устройствами.
alexcccp писал(а):
05.01.2023{, 13:37}
Несколько активных устройств (не в кольце) на UART впринцепи не сильно мешают друг другу. Очень удивительно!
но в какой то момент наступает коллизия и данные перестают передаваться. (полезный опыт, устройств в UART всего 3)
Не очень понял проблему. Если в проекте только одна задача работает с одним UART (так и правильно делать), работать должно хорошо.
-----
По блокам UART ecoins - они в разработке и сделаны были в основном для идентификации UART на контроллерах, особенно для тех, которые позволяют изменять пины RX,TX(например ESP).

alexcccp
Рядовой
Сообщения: 37
Зарегистрирован: 16.01.2018{, 18:53}
Репутация: 0

ЭкоСреда ecoins

#437

Сообщение alexcccp » 05.01.2023{, 22:48}

ecoins писал(а):
05.01.2023{, 18:16}
Только UART - TX,RX.
Но реализовать можно, если нужно. А зачем USART нужен?
исключительно синхронизация такта, в принципе и так отлично работает.
ecoins писал(а):
05.01.2023{, 18:16}
По блокам UART ecoins - они в разработке и сделаны были в основном для идентификации UART на контроллерах, особенно для тех, которые позволяют изменять пины RX,TX(например ESP).
Да, уже стал догадываться, где то есть глюки где то мат на отсутствие функций в библиотеках.
но у Вас отлично реализован вывод, константа и прочие функции.
их очень не хватает в стандартной библиотеке, но стандартная библиотека работает корректно и есть готовый прием.

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#438

Сообщение ecoins » 05.01.2023{, 23:00}

alexcccp писал(а):
05.01.2023{, 22:48}
Да, уже стал догадываться, где то есть глюки где то мат на отсутствие функций в библиотеках.
но у Вас отлично реализован вывод, константа и прочие функции.
их очень не хватает в стандартной библиотеке, но стандартная библиотека работает корректно и есть готовый прием.
Возможно в недалеком будущем появится обобщенный блок по UART. Сейчас тестируем блок записи/чтения SPI.Master.

tema
Сержант
Сообщения: 187
Зарегистрирован: 21.09.2020{, 12:31}
Репутация: 7
Имя: tema

ЭкоСреда ecoins

#439

Сообщение tema » 06.01.2023{, 09:04}

Ув. ecoins не могли бы вы сделать простейший пример на есп32 с3 (просто поморгать несколькими пинами) большое спс.

ecoins
Полковник
Сообщения: 2923
Зарегистрирован: 12.02.2016{, 11:40}
Репутация: 453
Откуда: Шатура
Имя: Энвер

ЭкоСреда ecoins

#440

Сообщение ecoins » 07.01.2023{, 00:53}

Сделаем. Было бы неплохо знать модель Вашего контроллера - у на поддерживают около пяти разных типов на ESP32-C3.

Ответить

Вернуться в «Команда ecoins»