Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
17.05.2011, 20:29
|
|
Почётный гражданин KAZUS.RU
Регистрация: 15.07.2009
Адрес: San Jose, USA
Сообщений: 927
Сказал спасибо: 11
Сказали Спасибо 228 раз(а) в 166 сообщении(ях)
|
Re: Вопросы ENC28J60
Сообщение от artist
|
Обычно подобные устройства работают в прнделах локальной сети
|
Ну совершенно не факт.
Сообщение от artist
|
а чтобы достучаться до гейтвея опять нужно посылать arp запро,мас то узнать как то надо, а что касаетсчя пинга то тут лучше всего посмотреть например
wiresharkом как и куда комп отсылает пакеты и что получает в ответ.
|
Ага, только arp тогда посылается на IP гейтвэя а не на IP хоста который пингаем, как следует из Вашего поста.
А сниффером смотреть, это только при подозрении что софт не пашет (что, впрочем, весьма вероятно в рассматриваемой ситуации) а вообще-то при отлаженном софте сниффер не нужен.
|
|
|
|
18.05.2011, 01:12
|
|
Частый гость
Регистрация: 01.07.2005
Сообщений: 14
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Вопросы ENC28J60
В данном случае сниффер нужен для изучения структуры пакета.
|
|
|
|
18.05.2011, 12:50
|
|
Почётный гражданин KAZUS.RU
Регистрация: 15.07.2009
Адрес: San Jose, USA
Сообщений: 927
Сказал спасибо: 11
Сказали Спасибо 228 раз(а) в 166 сообщении(ях)
|
Re: Вопросы ENC28J60
Сообщение от artist
|
В данном случае сниффер нужен для изучения структуры пакета.
|
Для изучения структуры пакета есть RFC и книжки типа Стивенса.
|
|
|
|
18.05.2011, 13:07
|
|
Вид на жительство
Регистрация: 30.12.2006
Адрес: Junktown
Сообщений: 300
Сказал спасибо: 164
Сказали Спасибо 171 раз(а) в 59 сообщении(ях)
|
Re: Вопросы ENC28J60
Сообщение от AndreiVV
|
то есть не важно что отсылать?
|
да можно любую текстовую строчку.
относительно шлюза:
у нас должно быть: ip шлюза, маска, ip хоста, который хотим пинговать.
тогда проверяем условие:
для i = 0 .. i = 3
если (pinging_ip[i] & mask[i]) == (myip[i] & mask[i])
значит, это наша подсеть.
отправляем арп запрос напрямую до pinging_ip, получаем МАС хоста
иначе отправляем арп запрос шлюзу, и в пакетах будем использовать его МАС адрес.
__________________
Всегда стремись к недоступному
|
|
|
|
27.06.2011, 19:12
|
|
Частый гость
Регистрация: 12.08.2009
Сообщений: 14
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Вопросы ENC28J60
А подскажите как можно проверить работу в Протеусе для avr как это сделано в начале 5-й страницы у SERGEI1982 для PIC.
Я решил для начала повторить примеры с tuxgraphics в протеусе. На этом сайте сказано, что можно пинговать небольшие тестовые проекты test1 и test2. Посмотрев как пингуется у SERGEI1982 я аналогично изменил ip в листинге и вставил этот hex в протеус.
В файле main при обявлении сказано указать ip:
Код:
|
static uint8_t mymac[6] = {0x54,0x55,0x58,0x10,0x00,0x24};
static uint8_t myip[4] = {192,168,50,1}; |
Далее добавляю этот адрес в настройки сети (все как указано у SERGEI1982). Запускаю симуляцию, пишу в cmd: ping 192.168.50.1 или ping 192.168.50.1 -t. В обоих случаях ping проходит, только этот пинг не в протеус, а не пойми куда. Потому что, когда я останавливаю симуляцию, то пинг все равно продолжается.
У SERGEI1982 видно, что если во время пинга остановить симуляцию, то пинг прекращается.
Может кто-нибудь подскажет как так сделать, чтобы я видел, что именно мое устройство в протеусе пингуется и желательно кусочек кода.
|
|
|
|
29.06.2011, 10:16
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Re: Вопросы ENC28J60
Было это давно,всего не помню
Советую заглянуть в help протеуса по ENC28J60 там должно быть расписано что надо для запуска тестового пинга в системе на устройство в протеусе.В железе я так и не запустил(каюсь),сейчас взялся за pic18f67j70(к сожилению его нет в протеусе).
Да и поставь wareshark,зная аналогию работы сети можеш отловить пакеты на нужный интерфейс.Аналогия проста перед пингом(ICMP) должен быть запрос пакетом ARP MAC адреса IP,если нету значит вообще связи нет из протеуса.Сильно надо могу вспомнить.....
__________________
Глаза боятся,а руки делают.
Последний раз редактировалось CERGEI1982; 29.06.2011 в 10:20.
|
|
|
|
02.07.2011, 13:46
|
|
Частый гость
Регистрация: 12.08.2009
Сообщений: 14
Сказал спасибо: 2
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Вопросы ENC28J60
Спасиб, что откликнулся
Не сказать, что уж сильно надо, просто решил время скоротать для себя.
Пока не работает. Изложу свое понимание, пошагово...
1. Нужно добавить в сеть новое устройство - то бишь схему ПРОТЕУСА . Для этого предварительно в коде программы я присваиваю IP:
Цитата:
|
static uint8_t myip[4] = {192,168,50,1};
|
После компиляции вставляю это в протеус.
2. Устанавливаю дополнительное ПО: WinPCap, VMWare player, wireshark. VMWare player позволяет установить виртуальную карту. В настройках TCP/IP добавляю новый адрес 192,168,50,1 для виртуальной карты.
3. В протеусе устанавливаю номер виртуальной карты в опциях для ENC28J60. Запускаю симуляцию протеуса, пингую, останавливаю симуляцию, а пинг как шел так и идет.
В wireshark какая-то фигня все время
Если я правильно понял, то адрес 192,168,50,1 для pic ты в коде тоже где-то прописывал (хотя я не нашел). И все, что нам нужно - это установить связь между устройством в ПРОТЕУСЕ (с этим адресом) и сетевой картой (номер которой указывается в установках ENC28J60). Где я ошибаюсь?
|
|
|
|
02.07.2011, 20:16
|
|
Гражданин KAZUS.RU
Регистрация: 29.06.2006
Сообщений: 638
Сказал спасибо: 37
Сказали Спасибо 56 раз(а) в 41 сообщении(ях)
|
Re: Вопросы ENC28J60
Сообщение от mAmper
|
пингую, останавливаю симуляцию, а пинг как шел так и идет.
|
Проблема в том что у Вас один и тот же ип-адрес и у пк и у enc28j60. Достаточно поменять ип-адрес в программе на 192.168.50.2 и все заработает.
Сообщение от mAmper
|
Если я правильно понял, то адрес 192,168,50,1 для pic ты в коде тоже где-то прописывал (хотя я не нашел).
|
не правильно поняли, он для enc28j60 а не для пик
|
|
|
|
03.07.2011, 08:33
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Re: Вопросы ENC28J60
Не хочу показаться грубым,но вы общее представление знаете как работает локальная сеть на Ethernet ? В Wireshark даж фильтр не стоит на ваш IP или MAC нужный.....
Через виртуалку я не делал,напрямую делал через поднятый интерейс(который включен в локалку но с добавленным IP).
И честно сказать я сам не спец в этих делах,делал ради интереса
__________________
Глаза боятся,а руки делают.
|
|
|
|
03.07.2011, 08:42
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Re: Вопросы ENC28J60
Сообщение от AndreiVV
|
не правильно поняли, он для enc28j60 а не для пик
|
Для enc28j60 важен MAC адрес,а все что связано с IP это стек TCP/IP программно предоставлен microchip залит в pic.
Есть предложение к людям: Давай разберем стек TCP/IP фирмы microchip например для PIC18F67J60 взятый с демо платы тритона.Можно начать с отдельных файлов нужных для примитивного пинга.Потом все свяжем в кучу как идут вызовы в main.c.
Если кому идея по нраву могу начать с mac.h,ETH97J60.h,ETH97J60.c.
Исходники и сама схема выложена http://trt.ru/design/solutions/trt-ethernet.htm
__________________
Глаза боятся,а руки делают.
Последний раз редактировалось CERGEI1982; 03.07.2011 в 09:01.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 05:43.
|
|