Невозможно подключить IP-адрес Arduino Ethernet Shield к Raspberry
Мой Arduino Uno с Ethernet Shield подключен к Raspberry (rasp1), а Ethernet Shield подключен к другому Raspberry (rasp2) с помощью кабеля Ethernet; rasp2 имеет частный IP-адрес (192.168.10.0). Я хочу узнать IP-адрес Arduino.
Я использовал пример скетча DHCPAddressPrinter, но при его запуске последовательный монитор остается пустым (в качестве Mac-адреса я использовал адрес, расположенный под экраном).
Используемый код:
#include <SPI.h>
#include <Ethernet.h>
// Введите MAC-адрес вашего контроллера ниже.
// Более новые экраны Ethernet имеют MAC-адрес, напечатанный на наклейке на экране.
byte mac[] = {
0x90, 0xA2, 0xDA, 0x11, 0x32, 0x49
};
// Инициализируем клиентскую библиотеку Ethernet
// с IP-адресом и портом сервера
// к которому вы хотите подключиться (порт 80 по умолчанию для HTTP):
EthernetClient client;
void setup() {
// Открытие последовательной связи и ожидание открытия порта:
Serial.begin(9600);
// эта проверка необходима только на Leonardo:
while (!Serial) {
; // ждем подключения последовательного порта. Требуется только для Леонардо.
}
// запускаем Ethernet-соединение:
if (Ethernet.begin(mac) == 0) {
Serial.println("Failed to configure Ethernet using DHCP");
// нет смысла продолжать, поэтому ничего не делайте навсегда:
for (;;)
;
}
// распечатываем ваш локальный IP-адрес:
Serial.print("My IP address: ");
for (byte thisByte = 0; thisByte < 4; thisByte++) {
// распечатываем значение каждого байта IP-адреса:
Serial.print(Ethernet.localIP()[thisByte], DEC);
Serial.print(".");
}
Serial.println();
}
void loop() {
@gert, 👍0
Обсуждение1 ответ
192.168.10.0
— недопустимый IP-адрес (если только он не находится в подсети /32, что не имеет смысла в Ethernet).
Вам необходимо выделить правильный IP-адрес в правильной подсети, например, 192.168.10.1/24
(т. е. IP 192.168.10.1
и сетевая маска 255.255.255.0
), и либо вручную предоставить аналогичный IP-адрес Arduino (например, 192.168.10.2/24
[IP 192.168.10.2
сетевая маска 255.255.255.0
]), либо установить и настроить DHCP-сервер на Raspberry для выдачи IP-адресов в этом диапазоне подсети (например, 192.168.10.100/24
- 192.168.10.200/24
) для Arduino затем сможет использовать режим DHCP.
Хотя большая часть этого выходит за рамки сайта Arduino SE.
- Как разрешить междоменные запросы на ESP8266 WebServer
- MQTT через serial
- Установите Arduino IDE в Raspberry Pi 3 модели B.
- Ардуино — это одноплатный компьютер?
- Как настроить расположение предпочтений
- Отправка информации (например, строки) через цифровые контакты
- Использование Waveshare Raspberry Pi TFT LCD с Arduino Uno
- Как отправить данные датчика с Arduino через NRF24L01 на Raspberry Pi
как вы подключаете два кабеля Ethernet к сетевому экрану?, @jsotola