Страница 22 из 51

ЭкоСреда ecoins

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

ЭкоСреда ecoins

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

ЭкоСреда ecoins

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

ЭкоСреда ecoins

Добавлено: 30.12.2022{, 00:31}
ecoins
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 скачиваний
В тесте исправленный блок.

ЭкоСреда ecoins

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

пример

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

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

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


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

ЭкоСреда ecoins

Добавлено: 30.12.2022{, 16:26}
ecoins
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.
При Вашей настойчивости и готовности к тестированию мы могли ли бы объединить усилия.

ЭкоСреда ecoins

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

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

ЭкоСреда ecoins

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

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

ЭкоСреда ecoins

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

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

ЭкоСреда ecoins

Добавлено: 04.01.2023{, 14:15}
ecoins
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
Заказал несколько модулей. (были но куда то пропали)
Есть какой то план по тестированию ?
Если будут дополнительные к нашим усилиям участники, например Вы, то дело пойдет поживее, пока не хватает времени.

ЭкоСреда ecoins

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

ЭкоСреда ecoins

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

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

ЭкоСреда ecoins

Добавлено: 05.01.2023{, 13:09}
alexcccp
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 примерно так и работает только в полудуплексе.

ЭкоСреда ecoins

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

ЭкоСреда ecoins

Добавлено: 05.01.2023{, 13:37}
alexcccp
верно ли я понимаю данная опция реализует полное отключение интерфейса (EN)
uart en.JPG
uart en.JPG (12.7 КБ) 810 просмотров
посмотрел текущие блоки упоминания о UART-CK нет (генератор) - я так понимаю USART в FLRog не реализуется.

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


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

ЭкоСреда ecoins

Добавлено: 05.01.2023{, 18:16}
ecoins
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).

ЭкоСреда ecoins

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

ЭкоСреда ecoins

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

ЭкоСреда ecoins

Добавлено: 06.01.2023{, 09:04}
tema
Ув. ecoins не могли бы вы сделать простейший пример на есп32 с3 (просто поморгать несколькими пинами) большое спс.

ЭкоСреда ecoins

Добавлено: 07.01.2023{, 00:53}
ecoins
Сделаем. Было бы неплохо знать модель Вашего контроллера - у на поддерживают около пяти разных типов на ESP32-C3.