Второе ядро Raspberry Pi 2040

Пользовательские блоки не подходящее под другие разделы
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
Аватара пользователя
Dryundel
Полковник
Сообщения: 2405
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Поблагодарили: 15 раз

Второе ядро Raspberry Pi 2040

Сообщение Dryundel »

ecoins писал(а): 19 авг 2022, 17:46 Прекрасно, когда присутствует теоретик, который все может объяснить... мьютекс...
Это как к старику-пастуху лектор приезжает и читает лекцию "Как пасти баранов".
Вот оно как? :D
Ладно, видимо придется пастуху-профессионалу объяснить простыми словами что такое мьютекс.
Тока пожалуй не здесь.
Открыл специально для пастухов тему. Теоретическую. Я же вроде как теперь теоретик. :)
.
viewtopic.php?f=21&t=8179&p=116594#p116594
ecoins
Полковник
Сообщения: 3992
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 148 раз

Второе ядро Raspberry Pi 2040

Сообщение ecoins »

Запустил еще раз второе ядро на RP2040.
Одна простая задача - вычисление циклов loop1() в сек.
Получилось >400тыс. в сек. Удивительно, даже надо перепроверить...
Второе ядро можно использовать, но...
Нельзя просто использовать одни и те же интерфейсы(например i2c.0) одновременно.
А вот использовать другую шину i2c.1 можно. У нас на тестовой плате она даже выделена на отдельную группу пинов.
И наши библиотеки уже под это заточены. И еще они позволяют изменять скорость шин i2c, SPI.
В совокупности с этим можно получать любопытные результаты.
Будем пробовать и выкладывать тесты.
Аватара пользователя
Phazz
Полковник
Сообщения: 3107
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 226 раз
Поблагодарили: 106 раз

Второе ядро Raspberry Pi 2040

Сообщение Phazz »

[ref=#ff8000]Dryundel[/ref], Есть одна проблема с блоками в PRO редакторе. В них можно указать выполнение кода в конце LOOP, получится код перепрыгнет из первого ядра на второе.
photo_2022-08-28_10-51-40.jpg
Это можно решить блоком закрывашкой

Код: Выделить всё

}
void blok_zakr(){
а в конце открывающего добавить

Код: Выделить всё

blok_zakr();
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Dryundel
Полковник
Сообщения: 2405
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Поблагодарили: 15 раз

Второе ядро Raspberry Pi 2040

Сообщение Dryundel »

Phazz писал(а): 28 авг 2022, 08:54 Dryundel, Есть одна проблема с блоками в PRO редакторе. В них можно указать выполнение кода в конце LOOP, получится код перепрыгнет из первого ядра на второе.
Да, действительно проблема. Об этом я не подумал. :smile37:
Значит надо искать другой вариант.

Отправлено спустя 8 минут 4 секунды:
Phazz писал(а): 28 авг 2022, 08:54 Это можно решить блоком закрывашкой
Не понял как это поможет. Давай образец исправленного блока. Посмотрим.
Аватара пользователя
Phazz
Полковник
Сообщения: 3107
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 226 раз
Поблагодарили: 106 раз

Второе ядро Raspberry Pi 2040

Сообщение Phazz »

[ref=#ff8000]Dryundel[/ref],
2022-08-28 13-36-57 FLProg-7.4.6.png
2ядра+ПБ.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Dryundel
Полковник
Сообщения: 2405
Зарегистрирован: 22 май 2017, 23:15
Откуда: Ярославль
Имя: Андрей
Поблагодарили: 15 раз

Второе ядро Raspberry Pi 2040

Сообщение Dryundel »

[ref=#808080]Phazz[/ref], хитро конечно и может даже сработать. Доберусь до компа посмотрю внимательней. Спасибо за идею.

Отправлено спустя 7 часов 42 минуты 14 секунд:
Версия блока обновлена. Исправлен баг.
Теперь это пара блоков. Скачать в первом посте
Отдельная благодарность [ref=#808080]Phazz[/ref], за отличную идею.
ARTEMM
Рядовой
Сообщения: 50
Зарегистрирован: 05 май 2021, 21:31
Имя: Артём

Второе ядро Raspberry Pi 2040

Сообщение ARTEMM »

добрый день с вашими блоками выдает ошибку Arduino: 1.8.15 (Windows 7), Плата:"Raspberry Pi Pico, 2MB (no FS), 133 MHz, Small (-Os) (standard), Disabled, Disabled, Disabled, Disabled, None, Pico SDK, IPv4 Only, Default (UF2)"

pr3:45:12: error: expected constructor, destructor, or type conversion before ';' token

45 | end_Loop()

| ^

C:\TEMP\flprog\pr3\pr3.ino: In function 'void loop()':

pr3:15:5: error: 'end_Loop' was not declared in this scope

15 | end_Loop();

| ^~~~~~~~

C:\TEMP\flprog\pr3\pr3.ino: At global scope:

pr3:45:1: error: ISO C++ forbids declaration of 'end_Loop' with no type [-fpermissive]

45 | end_Loop()

| ^~~~~~~~

C:\TEMP\flprog\pr3\pr3.ino: In function 'int end_Loop()':

pr3:70:1: error: no return statement in function returning non-void [-Werror=return-type]

70 | }

| ^

cc1plus.exe: some warnings being treated as errors

exit status 1

expected constructor, destructor, or type conversion before ';' token


фл прог версия 7.3.8
Аватара пользователя
Phazz
Полковник
Сообщения: 3107
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 226 раз
Поблагодарили: 106 раз

Второе ядро Raspberry Pi 2040

Сообщение Phazz »

[ref]ARTEMM[/ref], проект бы увидеть
ARTEMM
Рядовой
Сообщения: 50
Зарегистрирован: 05 май 2021, 21:31
Имя: Артём

Второе ядро Raspberry Pi 2040

Сообщение ARTEMM »

Проэкт как таковой и нету у меня была плата и решил ее сравнить с есп 32 в проекте на первой стартовый на второй семетричный генератор и на третьем финишный блок

Отправлено спустя 1 минуту 16 секунд:
А генератор встроенный блок не пб
Аватара пользователя
Phazz
Полковник
Сообщения: 3107
Зарегистрирован: 17 окт 2016, 15:38
Откуда: Сургут
Имя: Анатолий
Благодарил (а): 226 раз
Поблагодарили: 106 раз

Второе ядро Raspberry Pi 2040

Сообщение Phazz »

[ref]ARTEMM[/ref], пофиксил
У вас нет необходимых прав для просмотра вложений в этом сообщении.
ARTEMM
Рядовой
Сообщения: 50
Зарегистрирован: 05 май 2021, 21:31
Имя: Артём

Второе ядро Raspberry Pi 2040

Сообщение ARTEMM »

спасибо заработало поэкспементиреую отпишусь
WildCat
Лейтенант
Сообщения: 556
Зарегистрирован: 04 июн 2022, 04:14
Имя: Михаил
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Второе ядро Raspberry Pi 2040

Сообщение WildCat »

ecoins писал(а): 19 авг 2022, 16:39 Появление "Диспетчера" не решило проблемы, поскольку любая "тормозящая" задача может свести на нет результаты оптимизации по времени - например АЦП, почти все библиотеки работы с внешними устройствами, и даже алгоритм преобразования
float в int от FLProg в ModBus и пр.(последнее в контроллерах AVR очень тормозит).
Интересный момент.
Сейчас как раз занимаюсь разработкой нового устройства и выбираю контроллер.

А данный момент остановился на Мега 2560, отлаживаю узлы.
Сейчас датчик ds18b20, pt1000. Передаю данные по modbus в другой контроллер.
При добавлении блока измерения переменного тока (трансформатор тока) на библиотеке EmonLib производительность упала на порядок (с 4600 циклов до 500). И да, там весь набор из цитаты выше: float to int, 1wire, АЦП, modbus.

Задумался…

Мега нужна из-за большого количества входов-выходов и большого количества UART (нужно несколько для коммуникаций с доп модулями и внешним пультом по modbus).

Может стоит рассмотреть вариант rp2040?
Но к него всего 2 UART (

Вы для работы с двумя ядрами на rp2040 используете блоки из этой темы, и свои?
ecoins
Полковник
Сообщения: 3992
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 148 раз

Второе ядро Raspberry Pi 2040

Сообщение ecoins »

WildCat писал(а): 17 фев 2024, 04:19 Но к него всего 2 UART (
Можно (и мы сделали, через PIO) USB + UARTx6.
WildCat писал(а): 17 фев 2024, 04:19 Вы для работы с двумя ядрами на rp2040 используете блоки из этой темы, и свои?
Свои.
WildCat писал(а): 17 фев 2024, 04:19 При добавлении блока измерения переменного тока (трансформатор тока) на библиотеке EmonLib производительность упала на порядок (с 4600 циклов до 500). И да, там весь набор из цитаты выше: float to int, 1wire, АЦП, modbus.
Эти задачи хорошо перенести во второе ядро.
Еще поддерживает Ethernet, в варианте Raspberry Pi Pico - W - дополнительно Wi-Fi.
У нас есть стенды для RP2040.
Сделали опытные образцы ПЛК - 12 дискретных входов(развязка), 12 дискретных выходов(развязка), RS485 x 2 (развязка), i2c(развязка), порт UART под Nextion (развязка), дополнительно UARTx3; питание 220 ADC/24 DC.
В небольшом корпусе с прозрачной крышкой.
Сейчас запустили на изготовление платы с доработкой.
WildCat
Лейтенант
Сообщения: 556
Зарегистрирован: 04 июн 2022, 04:14
Имя: Михаил
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Второе ядро Raspberry Pi 2040

Сообщение WildCat »

ecoins писал(а): 17 фев 2024, 09:47Свои.
Можете поделиться блоком с примером применения?
ecoins
Полковник
Сообщения: 3992
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 148 раз

Второе ядро Raspberry Pi 2040

Сообщение ecoins »

WildCat писал(а): 17 фев 2024, 13:33 Можете поделиться блоком с примером применения?
Переключение на второе ядро?
Он в библиотеке блоков.
Примеры для RP2040 выкладывал, там этот блок применен.
Если не найдете, то подскажу или выложу.
WildCat
Лейтенант
Сообщения: 556
Зарегистрирован: 04 июн 2022, 04:14
Имя: Михаил
Благодарил (а): 4 раза
Поблагодарили: 9 раз

Второе ядро Raspberry Pi 2040

Сообщение WildCat »

ecoins писал(а): 17 фев 2024, 13:38 Он в библиотеке блоков.
С какой версии? У меня сейчас в активном использовании от марта прошлого года.

Новые библиотеки и блоки еще не ставил, т.к Вы написали, что новые не совместимы со старыми, а у меня есть большой работающий проект, где старые библиотеки.

Если не трудно, скинете пример проекта, на форуме непонятно где искать
ecoins
Полковник
Сообщения: 3992
Зарегистрирован: 12 фев 2016, 11:40
Откуда: Шатура
Имя: Энвер
Благодарил (а): 136 раз
Поблагодарили: 148 раз

Второе ядро Raspberry Pi 2040

Сообщение ecoins »

Написал в личку, попозже попробую выложить простой проект.
Ответить

Вернуться в «Другое»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя