Procedural reference

This commit is contained in:
2024-11-20 15:22:17 +03:00
parent b6e2fb1356
commit eee3b84b8e
11 changed files with 580 additions and 0 deletions

View File

@ -0,0 +1,61 @@
## Внесение изменений для совместимости
Для обеспечения совместимости с библиотекой `Ethernet3` потребуется внести изменения в файлы `EthernetClient.h` и `EthernetUdp3.h`. Следуйте инструкциям ниже.
### Изменение в `EthernetClient.h`
В файле `EthernetClient.h` замените доступ к переменным с `private` на `protected` для следующих элементов:
```cpp
class EthernetClient : public Client {
// ...
protected: // <--- замените 'private' на 'protected'
static uint16_t _srcport;
uint8_t _sock;
};
```
### Изменение в `EthernetUdp3.h`
В файле `EthernetUdp3.h` также замените доступ к переменным с `private` на `protected`:
```cpp
class EthernetUDP : public UDP {
protected: // <--- замените 'private' на 'protected'
uint8_t _sock; // socket ID for Wiz5100
// ...
};
```
### Изменение в `EthernetServer.h`
В файле `EthernetServer.h` также замените доступ к переменным с `private` на `protected`:
```cpp
class EthernetServer :
public Server {
protected: // <--- замените 'private' на 'protected'
uint16_t _port;
void accept();
//...
};
```
Эти изменения необходимы для обеспечения доступа к соответствующим членам класса при наследовании.
## Обратите внимание
При работе с библиотекой `Ethernet3` версии 3 требуется отдельно указывать CS пин для инициализации. Пример кода:
```cpp
void setup() {
// ...
Ethernet.setCsPin(W5500_CS_PIN);
Ethernet.init();
Ethernet.begin(mac, localIP, gateway, gateway, subnet);
// ...
}
```
Не забудьте правильно настроить `W5500_CS_PIN` и сетевые параметры (`mac`, `localIP`, `gateway`, `subnet`) в зависимости от вашей конфигурации.
```