Перейти к содержанию
    

0000h

Новичок
  • Постов

    4
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный
  1. LPC + Ethernet

    Спасибо за подсказки, проблема была в том, что я неверно формировал ответ на ARP-запрос (перепутал местами поля MAC,IP для Target и Source). Но в процессе исследований выяснилась ещё одна неприятная деталь. Оказалось, что регистр приёмника RxProduceIndex при приёме первого пакета не инкрементируется и прерывание не возникает, хотя принятый пакет в буфер дескриптора кладётся. Кто-нибудь с таким сталкивался?
  2. LPC + Ethernet

    Имею отладочную плату для микроконтроллера LPC1768, на которой в числе прочих разъёмов и кнопок имеется ethernet-розетка (в качестве PHY напаяна DP83848). Выкурил datasheet'ы и reference manual на указанный ARM камень и PHY, в итоге - запустил ethernet: приём, передача, с прерываниями и без, как угодно. Плату подключаю в домашнюю локалку через маршрутизатор (DIR-320 c DHCP, IP-адрес платы статический). Так вот, проблема в том, что при отправке UDP-пакета на IP-адрес платы виндовый драйвер, естественно не зная MAC-адрес платы сначала посылает в сеть ARP-запрос, который моя плата прекрасно ловит и отправляет ответ (мониторю с помощью WireShark). Затем по логике должен следовать исходящий UDP-пакет, но его нет! Хотя в программе, отправляющей UDP-пакет, функция sendto возвращает как и положено кол-во отправленных байтов! Но пакета нет - ни монитор, ни плата никак не реагируют! Что за... :angry2: Смотрю ARP-кэш - там только MAC-адрес маршрутизатора. Руками в кэш прописываю IP и MAC платы. Повторяю отправку UDP-пакета. И вот тут-то уже UDP проскочил и в WireShark, и в плате. Знающие люди, подскажите почему ответ на ARP-запрос с компа не записался в кэш и почему драйвер винды так подло шутит, возвращая положительный ответ, хотя на самом деле ничего не отправлял?
  3. Разобрался сам: при power-down режиме таймер не работает, соответственно и прерывания не возникают.
  4. Товарищи! Имею такую проблему, даже незнаю куда бежать. Есть ATtiny2313 с подключенным к нему осциллографом - всё это сделано в Proteus. Есть прошивка к МК, написана на асме. Программа генерирует периодический сигнал на ноге МК, который идёт на вход осциллографа. Так вот эта конструкция нихрена не работает (в Proteus, в AVR Studio сигнал на выводе меняется), несмотря на свою бесхитростность. Что у меня не так, подскажите пожалуйста. Ниже прилагаю фото работы схемы, файл проекта Proteus, исходник и HEX-файл прошивки для МК (в архиве 7zip). proj.7z
×
×
  • Создать...