4 / 4 / 1
Регистрация: 08.08.2014
Сообщений: 83
1

Определить подключено ли к компьютеру устройство по протоколу Ethernet

08.08.2014, 22:29. Показов 9894. Ответов 50
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, уважаемые форумчане!
Помогите, пожалуйста, советом или примером. Задача состоит в том, чтобы программно, средствами Qt, определить подключено ли к компьютеру устройство по протоколу Ethernet, настроить соединение и обмен данными. Операционная система Linux. Я даже не знаю куда двигаться. В Qt совсем недавно. Заранее большое спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.08.2014, 22:29
Ответы с готовыми решениями:

Отправить команду на устройство, подключенное к компьютеру через ethernet, и принять от него ответ
Здравствуйте, возникла проблема в подборе материала и примеров выполнения программы по работе с ethernet Собственно есть устройство...

Serial port. Можно ли определить подключено ли внешнее устройство?
Вопрос такой Можно ли определить подключено ли внешнее устройство? К PC подключаем USB/RS-232 9 pin D-SUB, а уже к нему PC/PPI cable...

Проверка, подключено ли USB-устройство
Написать прогу , которая проверяет, подключено ли usb-устройство, если да, то выдаёт звуковой сигнал и добавляет к имени открытого файла ...

50
 Аватар для RazrFalcon
1403 / 1260 / 262
Регистрация: 10.11.2013
Сообщений: 3,763
08.08.2014, 22:54 2
Цитата Сообщение от Tanyusha Посмотреть сообщение
подключено ли к компьютеру устройство по протоколу Ethernet
Подключен ли ПК к сети интернет, что ли? Устройство по протоколу Ethernet к самому ПК не подключаются.

Цитата Сообщение от Tanyusha Посмотреть сообщение
настроить соединение
С устройством?

Цитата Сообщение от Tanyusha Посмотреть сообщение
обмен данными
Если подразумевается сетевая карта - то с ней обмениваться нечем.


По простому: вам нужно передать данные через Ethernet на другой ПК/порт?

PS:
Цитата Сообщение от Tanyusha Посмотреть сообщение
программно
А можно физически?
0
4 / 4 / 1
Регистрация: 08.08.2014
Сообщений: 83
09.08.2014, 13:02  [ТС] 3
Компьютер не подключен к сети интернет. Предположительно, что есть 1 компьютер к нему может быть подключен 2-ой компьютер, как бы по локальной сети. Надо программно определить подключен ли в данный момент 2-ой компьютер, открыть с ним соединение, обменяться информацией между этими двумя компьютерами и когда надо разорвать. соединение. Заранее спасибо
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
09.08.2014, 13:10 4
QNetworkInterface
0
4 / 4 / 1
Регистрация: 08.08.2014
Сообщений: 83
09.08.2014, 20:48  [ТС] 5
Если можно примерчик. Я с помощью QNetworkInterface только определила Ip-адрес своего компьютера. А дальше снова тупик.
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
09.08.2014, 21:00 6
QNetworkInterface::IsUp 0x1 the network interface is active
QNetworkInterface::IsRunning 0x2 the network interface has resources allocated
QNetworkInterface::CanBroadcast 0x4 the network interface works in broadcast mode
QNetworkInterface::IsLoopBack 0x8 the network interface is a loopback interface: that is, it's a virtual interface whose destination is the host computer itself
QNetworkInterface::IsPointToPoint 0x10 the network interface is a point-to-point interface: that is, there is one, single other address that can be directly reached by it.
QNetworkInterface::CanMulticast 0x20 the network interface supports multicasting
Собственно нужно проверять IsUp, IsRunning и IsLoopBack.
Наличие ip адресса еще не говорит, что воткнута медь в сетевуху и что там есть сеть.
1
4 / 4 / 1
Регистрация: 08.08.2014
Сообщений: 83
09.08.2014, 21:17  [ТС] 7
Спасибо вам за ответ. Это уже для меня какое-то движение вперед

Добавлено через 6 минут
Скажите, пожалуйста, а передачу информации между компьютерами осуществлять с помощью классов QtcpSocket и QtcpServer? Заранее спасибо
0
Почетный модератор
 Аватар для Humanoid
11538 / 4333 / 450
Регистрация: 12.06.2008
Сообщений: 12,440
09.08.2014, 23:10 8
Цитата Сообщение от Tanyusha Посмотреть сообщение
Скажите, пожалуйста, а передачу информации между компьютерами осуществлять с помощью классов QtcpSocket и QtcpServer?
Если хотите использовать протокол tcp, то да. Если хотите udp, то QUdpSocket.
0
4 / 4 / 1
Регистрация: 08.08.2014
Сообщений: 83
09.08.2014, 23:13  [ТС] 9
Спасибо
0
4 / 4 / 1
Регистрация: 08.08.2014
Сообщений: 83
13.08.2014, 19:45  [ТС] 10
Здравствуйте, уважаемые форумчане!
Прояснились некоторые подробности задачи. Надо организовать обмен цифровой информацией не между двумя компьютерами, а между ПК и микроконтроллером. Я не очень понимаю, как можно достучаться до протокола Ethernet на микроконтроллере? Как узнать к какому порту обращаться?
0
Почетный модератор
 Аватар для Humanoid
11538 / 4333 / 450
Регистрация: 12.06.2008
Сообщений: 12,440
13.08.2014, 20:18 11
Какой именно контроллер? В любом случае, лучше на сайте производителя поискать стек TCP/IP для него.
0
4 / 4 / 1
Регистрация: 08.08.2014
Сообщений: 83
13.08.2014, 20:23  [ТС] 12
я не знаю, что конкретно за микроконтроллер. Это может иметь существенное значение? Универсального приложения не получится?
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
13.08.2014, 21:55 13
Цитата Сообщение от Tanyusha Посмотреть сообщение
Это может иметь существенное значение?
Да. Это определяет формат пакетов данных.
0
Почетный модератор
 Аватар для Humanoid
11538 / 4333 / 450
Регистрация: 12.06.2008
Сообщений: 12,440
14.08.2014, 15:40 14
Цитата Сообщение от Tanyusha Посмотреть сообщение
я не знаю, что конкретно за микроконтроллер. Это может иметь существенное значение? Универсального приложения не получится?
Да, пожалуй, я не правильно задал вопрос.
Какие именно требования? Надо написать программу только для ПК? И какой использовать протокол? Если программа нужна для ПК и протокол TCP или UDP, то никаких проблем нет. Какое устройство находится на другом конце - не важно... главное, что бы оно работало по стандартным протоколам.

А вот если вам ещё понадобится писать прошивку для контроллера, тогда будет иметь значение, какой именно контроллер. Но со стороны ПК разницы не будет.
0
4 / 4 / 1
Регистрация: 08.08.2014
Сообщений: 83
14.08.2014, 20:40  [ТС] 15
На данный момент для меня стоит задача написать программу для ПК, протокол UDP.
0
Почетный модератор
 Аватар для Humanoid
11538 / 4333 / 450
Регистрация: 12.06.2008
Сообщений: 12,440
15.08.2014, 16:41 16
Ну тогда надо узнать, какой используется порт и протокол обмена данными. И можно смело использовать QUdpSocket
0
 Аватар для raxper
10234 / 6612 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
15.08.2014, 20:27 17
На данный момент...
рекомендую тем, кто у вас будет заниматься стыковкой МК с Ethernet, просто поставить Ethernet/SPI (или UART) конвертор - модули на базе Enc28j60 (с уже реализованным стеком), кои у китайцев меньше 200 рублев с SD-ридером в комплекте http://ru.aliexpress.com/whole... 815082041:
Определить подключено ли к компьютеру устройство по протоколу Ethernet

кстати по UDP работают, заморачиваться со стеком не нужно, канал прозрачный для МК через SPI. Есть аналогичные и через UART - UART ETH E001, но дороже (~1000 рэ), зато:
UART device and Ethernet web server communication
Working Modes:
TCP Server, TCP Client, UDP, UDP Server, HTTPD Client, WEB to Serial
Supported protocols:
Ethernet, ARP, IP, UDP, TCP

Определить подключено ли к компьютеру устройство по протоколу Ethernet
1
4 / 4 / 1
Регистрация: 08.08.2014
Сообщений: 83
15.08.2014, 20:52  [ТС] 18
Скажите, пожалуйста, а в драйвере МК должны быть уже запрограммированы конкретные Ip-адрес, мас-адрес. И надо ли заранее договориться о номере порта, по которому будет производиться обмен между ПК и МК? Заранее спасибо

Добавлено через 10 минут
Я в интернете нашла вот эту ссылочку
http://we.easyelectronics.ru/e... lient.html
Мозги закипели и совсем не понятно можно ли это как -то использовать в моем случае. То что прочитала по ссылке совсем, не вяжется с QUdpSocket. Помогите, пожалуйста, я совсем запуталась. Не знаю с чего начать и до конца не понимаю последовательность действий
0
 Аватар для raxper
10234 / 6612 / 498
Регистрация: 28.12.2010
Сообщений: 21,154
Записей в блоге: 1
15.08.2014, 20:57 19
1- в вышеуказанный конвертор все зашито внутри, с возможностью конфигурации ...при реализации стека все самому, самому
2- есть описание попроще http://www.marsohod.org/index.... ether-send
0
Почетный модератор
 Аватар для Humanoid
11538 / 4333 / 450
Регистрация: 12.06.2008
Сообщений: 12,440
15.08.2014, 21:14 20
Цитата Сообщение от Tanyusha Посмотреть сообщение
И надо ли заранее договориться о номере порта, по которому будет производиться обмен между ПК и МК?
Надо.
Цитата Сообщение от Tanyusha Посмотреть сообщение
Я в интернете нашла вот эту ссылочку
http://we.easyelectronics.ru/e... lient.html
Мозги закипели и совсем не понятно можно ли это как -то использовать в моем случае.
Конечно, понимать работу IP, TCP и UDP - это хорошо. Но в вашем случае, если требуется только работа со стороны ПК, то нужно только знать, на какой IP-адрес и порт отправлять датаграммы и из каких данных эти датаграммы должны состоять.

А вот если требуется работа со стороны контроллера, тогда лучше изучить из чего состоят пакеты и как они передаются по сети.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.08.2014, 21:14
Помогаю со студенческими работами здесь

Проверить подключено ли устройство к USB
Как это осуществить, нашел парочку кодов в интернете, но ничего нормально не работает, все с ошибками

Если к компьютеру подключено два источника интернета, как он будет работать?
Здравствуйте. Хочу разобрать, больше для общего развития, такую тему. Вот, допустим, у нас в компьютере воткнут в USB 3g модем и...

Неизвестное устройство, хотя ничего не подключено
Доброго времени суток... имею компьютер TOSHIBA satellite l 300, 4 gb, windows 7 64x... каждые 2 -3 минуты вылазеет уведомление о...

Найти к какому COM порту подключено устройство
Добрый день. Подскажите пожалуйста, как можно получить список активных COM портов в винде(тот что я вижу в диспетчере устройств). Задачу у...

Как узнать что устройство подключено к определенной wifi
Необходимо понять, подключено ли устройство к определенной сети wifi. Помогите пожалуйста!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

Новые блоги и статьи
Java Micronaut в Docker: контейнеризация с Maven и Jib
Javaican 16.03.2025
Когда речь заходит о микросервисной архитектуре на Java, фреймворк Micronaut выделяется среди конкурентов. Он создан с учётом особенностей облачных сред и контейнеров, что делает его идеальным. . .
Управление зависимостями в Java: Сравнение Spring, Guice и Dagger 2
Javaican 16.03.2025
Инъекция зависимостей (Dependency Injection, DI) — один из фундаментальных паттернов проектирования, который радикально меняет подход к созданию гибких и тестируемых Java-приложений. Суть этого. . .
Apache Airflow для оркестрации и автоматизации рабочих процессов
Mr. Docker 16.03.2025
Управление сложными рабочими процессами — одна из главных головных болей инженеров данных и DevOps-специалистов. Представьте себе: каждый день нужно запускать десятки скриптов в определенной. . .
Оптимизация приложений Java для ARM
Javaican 16.03.2025
ARM-архитектура переживает настоящий бум популярности в технологическом мире. Когда-то воспринимаемая исключительно как решение для мобильных устройств и встраиваемых систем, сегодня она штурмует. . .
Управление состоянием в Vue 3 с Pinia и Composition API
Reangularity 16.03.2025
Когда я начал работать с Vue несколько лет назад, мне казалось достаточным использовать простую передачу данных через props и события между компонентами. Однако уже на среднем по сложности проекте. . .
Введение в DevSecOps: основные принципы и инструменты
Mr. Docker 16.03.2025
DevSecOps - это подход к разработке программного обеспечения, который объединяет в себе принципы разработки (Dev), безопасности (Sec) и эксплуатации (Ops). Суть подхода заключается в том, чтобы. . .
GitHub Actions vs Jenkins: Сравнение инструментов CI/CD
Mr. Docker 16.03.2025
В этой битве за эффективность и скорость выпуска программных продуктов ключевую роль играют специализированные инструменты. Два гиганта в этой области — GitHub Actions и Jenkins — предлагают разные. . .
Реактивное программировани­е с Kafka Stream и Spring WebFlux
Javaican 16.03.2025
Реактивное программирование – это программная парадигма, ориентированная на потоки данных и распространение изменений. Она позволяет выражать статические или динамические потоки данных и. . .
Простая нейросеть на КуМир: Учебное пособие по созданию и обучению нейронных сетей
EggHead 16.03.2025
Искусственные нейронные сети — удивительная технология, позволяющая компьютерам имитировать работу человеческого мозга. Если вы хотя бы немного интересуетесь современными технологиями, то наверняка. . .
Исполнитель Кузнечик в КуМир: Решение задач
EggHead 16.03.2025
Среди множества исполнителей в системе КуМир особое место занимает Кузнечик — простой, но невероятно полезный виртуальный персонаж, который перемещается по числовой прямой, выполняя ваши команды. На. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru