Ethernet W5x00 и STM32

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

Ethernet W5x00 и STM32

#1

Сообщение alexcccp » 17.02.2024{, 10:55}

Товарищи!!! Добрый день!
Кто знает, поделитесь информацией

при подключении modbus TCP в FLProg можно использовать только W5100 !

1. вопрос, W5500 в 2024 году полностью совместим с W5100 в FLProg. Или нужны дополнительные манипуляции. :no:

2. вопрос, больше касается stm32. Можно ли переопределить SPI с аналоговых портов на цифровые. Будет ли это корректно работать.
то есть заменить.
PA4 на PA15 - SPI / SS
PA5 на PB3 - SPI / SCK
PA6 на PB4 - SPI / MISO
PA7 на PB5 - SPI / MOSI

Можно ли будет также переопределить SS на любой другой Пин или нужно использовать именно изначально определённый Пин SPI
как переопределить догадываюсь, нужно переписать пины в => свойствах контроллера ?


3. вопрос, касается самого Шилда.

вероятно в FLProg предполагается использование полноразмерный Шилд W5100
СпойлерПоказать
Изображение
там задействованы порты под SD карту,
после подключения W5100 у контролера исчезают порты Dio4 (PB5) и Dio10 (PA10) как избавится от этой чертовщины :smile453:

в коде нет упоминаний D4, D10
править библиотеку? какую, где.
СпойлерПоказать

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

\\ код при подключении w5100.  FLProg

#include "flprogUtilites.h"
#include "universalModbus.h"
FLProgW5100TcpDevice FLProgW5100Device;
ModbusMainData SlaveData_1;
ModbusSlaveRTUoverTCP Slave_1_0;
byte ethernet_mac [] = {0x78, 0xAC, 0xC0, 0x29, 0x17, 0xB0};
bool _isCorrectLocalIp = 0;
void setup()
{
    if (!   Ethernet.begin(ethernet_mac)== 0) 
    {
        _isCorrectLocalIp  = 1;
    }
    delay(1000);
    SlaveData_1.setLongOrder(1);
    SlaveData_1.setFloatOrder(1);
    SlaveData_1.setUnsignedlongOrder(1);
    SlaveData_1.setIntOrder(1);
    Slave_1_0.setData(&SlaveData_1);
    Slave_1_0.setTcpDevice(&FLProgW5100Device);
    Slave_1_0.setTcpPort(502);
    Slave_1_0.begin(1);
}
void loop()
{
    Slave_1_0.pool();
    //Плата:1
}

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

Ethernet W5x00 и STM32

#2

Сообщение ecoins » 17.02.2024{, 11:58}

alexcccp писал(а):
17.02.2024{, 10:55}
при подключении modbus TCP в FLProg можно использовать только W5100 !
В новой версии FLProg поддерживается W5500. Библиотека на GitHub, можете потестировать тестовый пример и при необходимости сделать блок.
Или подождать выход версии 8.3.0.
alexcccp писал(а):
17.02.2024{, 10:55}
1. вопрос, W5500 в 2024 году полностью совместим с W5100 в FLProg. Или нужны дополнительные манипуляции.
Совместим, но W5500 на аппаратном уровне, в нем устранены недостатки W5100.
alexcccp писал(а):
17.02.2024{, 10:55}
2. вопрос, больше касается stm32. Можно ли переопределить SPI с аналоговых портов на цифровые. Будет ли это корректно работать.
то есть заменить.
PA4 на PA15 - SPI / SS
PA5 на PB3 - SPI / SCK
PA6 на PB4 - SPI / MISO
PA7 на PB5 - SPI / MOSI

Можно, если такие пины поддерживаются соответствующе моделью STM.
Новые библиотеки предусматривают смену пинов и номера шины.
alexcccp писал(а):
17.02.2024{, 10:55}
вероятно в FLProg предполагается использование полноразмерный Шилд W5100
Совсем нет. И другие модели. Использование пинов RST и INT не обязательно.
alexcccp писал(а):
17.02.2024{, 10:55}
там задействованы порты под SD карту,
после подключения W5100 у контролера исчезают порты Dio4 (PB5) и Dio10 (PA10) как избавится от этой чертовщины

в коде нет упоминаний D4, D10
править библиотеку? какую, где.
Не вполне ясно, но думаю в новой библиотеке этих накладок уже нет.
----
С уважением, ecoins.

autoelectronica
Рядовой
Сообщения: 89
Зарегистрирован: 18.10.2016{, 21:46}
Репутация: 6
Откуда: Москва

Ethernet W5x00 и STM32

#3

Сообщение autoelectronica » 17.02.2024{, 13:22}

А когда ожидается версия 8.3.0 ?

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

Ethernet W5x00 и STM32

#4

Сообщение ecoins » 17.02.2024{, 13:26}

Возможно в конце марта.

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

Ethernet W5x00 и STM32

#5

Сообщение alexcccp » 17.02.2024{, 13:43}

ecoins, спасибо,
8.3.0 подождем, интересно..
ecoins писал(а):
17.02.2024{, 11:58}
Можно, если такие пины поддерживаются соответствующе моделью STM.
Новые библиотеки предусматривают смену пинов и номера шины.
забыл уточнить, я говорил про BluePill STM32F103C8T6.
у нее на бору 3 SPI. Уверен что Вы это и так знаете :)
Вложения
bp.JPG

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

Ethernet W5x00 и STM32

#6

Сообщение ecoins » 17.02.2024{, 14:56}

alexcccp писал(а):
17.02.2024{, 13:59}
забыл уточнить, я говорил про BluePill STM32F103C8T6.
у нее на бору 3 SPI. Уверен что Вы это и так знаете
Уточню - скорее только 2:
SPI в Arduino->SPI1(PA7-PA4[по умолчанию] или PB5,PB4,PB3,PA15, одновременно не получится);
SPI1 d Arduino->SPI2(PB15,PB14,PB13,PB12).
И библиотеки ecoins и в будущей версии FLProg 8.3.0 поддерживаются обе шины с возможностью переключение пинов SPI1.
Потестировав эти возможности я задал себе вопрос - затем это надо - вторая шина SPI и вторая шина i2c. У меня есть ответ - почти никогда не надо.
В приведенном контроллере удобнее использовать SPI1 с пинами по умолчанию. Аналоговых входов остается приличное кол-во.
Но и ADC в этом контроллере не идеальный - очень удобно для расширения применять что-то вроде ADS1115.
----
С уважением, ecoins.

vovka1973
Майор
Сообщения: 1060
Зарегистрирован: 14.02.2016{, 14:16}
Репутация: 42
Откуда: kazahstan

Ethernet W5x00 и STM32

#7

Сообщение vovka1973 » 17.02.2024{, 15:14}

ecoins писал(а):
17.02.2024{, 13:26}
Возможно в конце марта.
надо ждать когда сам автор скажет , а так уже три даты и все мимо !
Изображение

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

Ethernet W5x00 и STM32

#8

Сообщение ecoins » 17.02.2024{, 16:28}

vovka1973 писал(а):
17.02.2024{, 15:14}
надо ждать когда сам автор скажет , а так уже три даты и все мимо !
Автор об этом написал в телеграмме - версия 3.0 тестируется и требует еще много работы, в ней заложены фундаментальные изменения.

autoelectronica
Рядовой
Сообщения: 89
Зарегистрирован: 18.10.2016{, 21:46}
Репутация: 6
Откуда: Москва

Ethernet W5x00 и STM32

#9

Сообщение autoelectronica » 17.02.2024{, 16:37}

Да, прям очень ждем

vovka1973
Майор
Сообщения: 1060
Зарегистрирован: 14.02.2016{, 14:16}
Репутация: 42
Откуда: kazahstan

Ethernet W5x00 и STM32

#10

Сообщение vovka1973 » 17.02.2024{, 17:05}

ecoins писал(а):
17.02.2024{, 16:28}
версия 3.0 тестируется и требует еще много работы
раньше мы и тестировали или что то изменилось?
Изображение

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

Ethernet W5x00 и STM32

#11

Сообщение ecoins » 17.02.2024{, 17:12}

vovka1973 писал(а):
17.02.2024{, 17:05}
раньше мы и тестировали или что то изменилось?
Вопрос не понял.

vovka1973
Майор
Сообщения: 1060
Зарегистрирован: 14.02.2016{, 14:16}
Репутация: 42
Откуда: kazahstan

Ethernet W5x00 и STM32

#12

Сообщение vovka1973 » 17.02.2024{, 17:14}

ecoins писал(а):
17.02.2024{, 17:12}
Вопрос не понял.
разработчик делает версию выкладывает мы все тестируем баги сообщаем ,а сейчас как будет сразу стабильная версия?все спасибо за ссылку в телеграмм там все подробно автор рассказал
Изображение

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

Ethernet W5x00 и STM32

#13

Сообщение alexcccp » 17.02.2024{, 18:37}

ecoins писал(а):
17.02.2024{, 14:56}
Уточню - скорее только 2:
SPI в Arduino->SPI1(PA7-PA4[по умолчанию] или PB5,PB4,PB3,PA15, одновременно не получится);
все верно, попутал.

ecoins писал(а):
17.02.2024{, 14:56}
В приведенном контроллере удобнее использовать SPI1 с пинами по умолчанию. Аналоговых входов остается приличное кол-во.
Но и ADC в этом контроллере не идеальный - очень удобно для расширения применять что-то вроде ADS1115.
ADS1115 не хочу I2c в проекте, хотя ADS1115 меня бы очень выручил, у меня переменная составляющая, приходится вытаскивать сигнал в верх. нужно 9 аналоговых, точность не так важна.
если быть честным не хочу именно ADS1115, так как придется ставить 5 шт. )

можно поподробнее про "В приведенном контроллере удобнее использовать SPI1 с пинами по умолчанию."
есть какие-то подводные c переназначением и работой ?

\\
откровенно говоря с W5x00 мало опыта.
прочитал про зависания.
пришел к выводу что нужно установить дополнительную закрывающую защелку на MISO W5x00 управляемую по SS_ethernet

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

Ethernet W5x00 и STM32

#14

Сообщение ecoins » 17.02.2024{, 19:05}

alexcccp писал(а):
17.02.2024{, 18:37}
ADS1115 не хочу I2c в проекте, хотя ADS1115 меня бы очень выручил, у меня переменная составляющая, приходится вытаскивать сигнал в верх. нужно 9 аналоговых, точность не так важна.
если быть честным не хочу именно ADS1115, так как придется ставить 5 шт. )
ADS1115 имеет 4-е входа. Она имеет встроенный источник опорного напряжения.
Ее просто гальванически развязать по шине i2c.
Часть датчиков не критичных можно напрямую к контроллеру - но в нем нет встроенного источника опорного напряжения и точность будет определяться Vcc=3.3В.
alexcccp писал(а):
17.02.2024{, 18:37}
можно поподробнее про "В приведенном контроллере удобнее использовать SPI1 с пинами по умолчанию."
есть какие-то подводные c переназначением и работой ?

Нет подводных камней... Новая библиотека FLProg_Ethernet() отлично с этим справляется.
alexcccp писал(а):
17.02.2024{, 18:37}
откровенно говоря с W5x00 мало опыта.
прочитал про зависания.
пришел к выводу что нужно установить дополнительную закрывающую защелку на MISO W5x00 управляемую по SS_ethernet
С новой библиотекой FLProg_Ethernet() ничего не надо - отлично работает.

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

Ethernet W5x00 и STM32

#15

Сообщение alexcccp » 17.02.2024{, 19:18}

ecoins, большое спасибо за информацию по библиотекам.
жду 8.3.0 так как понятия не имею как подключить библиотеку к существующему modbus TCP.
ecoins писал(а):
17.02.2024{, 19:05}
ADS1115 имеет 4-е входа.
так как у меня переменная составляющая, зная себя я буду использовать на канал 2 входа из 4.
мне совесть не позволит использовать ее иначе.
ecoins писал(а):
17.02.2024{, 19:05}
Часть датчиков не критичных можно напрямую к контроллеру - но в нем нет встроенного источника опорного напряжения и точность будет определяться Vcc=3.3В.
в моем случае это даже хуже, так как я задираю сигнал вверх, а это - делитель, емкость и 3,3V
правда на VDDA зная что этот пин у STM32 до 100 контактных чипов чисто номинальный, отдаю с ИОН. :smile9:
ecoins писал(а):
17.02.2024{, 19:05}
Ее просто гальванически развязать по шине i2c.
изоляция у сигнала уже есть.

Ответить

Вернуться в «Ethernet»