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

    

b-volkov

Свой
  • Публикаций

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

  • Посещение

Репутация

0 Обычный

Информация о b-volkov

  • Звание
    Частый гость

Контакты

  • Сайт
    http://

Информация

  • Город
    г. Троицк

Посетители профиля

1 570 просмотров профиля
  • _3m

  1. Подбирая розетку RG-45 со встроенным трансформатором столкнулся с тем, что существует куча различных вариантов их распиновки. Я нашел как минимум три варианта только для распиновки трансформатора, плюс у некоторых из них есть еще и разные варианты включения светодиодов. Вопрос: существует ли какой-то общепринятый, наиболее распространенный ( в том числе и у поставщиков) вариант? Или закладываться на то, что есть в ближайшем чип-дипе и надеяться на то, что он будет "доставаем" и плтлм.
  2. Спасибо большое! Именно это я и искал. Осталось придумать, как это купить...
  3. Насколько я понял, это просто специализированный АЦП, т.е., самому измерять синус/сосинус, считать позицию и кодировать ее в A/B. Я то надеялся, что есть ИС, которые сами все это сделают.
  4. Спасибо огромное!!! Время уменьшилось почти на порядок! Не знал о наличии такого режима у сетевух.
  5. Вначале я увидел задержку между переданным и принятым пакетом именно в Wireshark , а потом уже стал разбираться, на каком этапе она происходит. Собственная задержка ногодрыга на LPT ~1мкс (т.е., если запустить в мертвом цикле 0->1, то получается мегагерцовый меандр) 2) Так обслуживание UDP сводится только к вызову recvfrom(). Это блокирующая функция, пока пакет не получит - управление не вернет. Сразу после нее дергаю LPT. До ногодрыга профилировал с помощью QueryPerformanceCounter и видел, что recvfrom() выполняется миллисекунду с небольшим. Но что бы понять, где именно задержка, пришлось взять осциллограф. 3) Пинг - примерно та же 1мс. Если под асинхронным сокетом предполагается неблокирующий, то не использую, просто не знаю как
  6. Тактовая 200. Только вот тормозит не МК, а комп (точнее - винда), со своими гигагерцами. Задержка была измерена осциллографом от момента передачи пакета контроллером ( сигнал TX на RMII) до момента выхода из recvfrom() (ногодрыг на LPT) Конечно, можно увеличить длину пакета, но мне важнее не больше, а чаще :). Суть вопроса в другом: 1 мс - это нормальное "время реакции" винды на получение пакета, или я чего не так делаю? Если так оно и должно быть, то придется искать альтернативу ethernet, например возвращаться на старый добрый RS-422
  7. Реализуя связь комп-контроллер через UDP столкнулся с одной странностью. Обмен сделан просто, по принципу мастер-слейв: комп посылает пакет с командой/запросом, получив который контроллер отправляет ответный пакет. От компа к контроллеру пакет доставляется за вполне разумное время, меньше 100мкс. А вот с момента передачи пакета контроллером до момента, когда функция recvfrom() возвращает полученные данные проходит порядка 1мс. Это нормально, не слишком ли много для 100Мбит? Почти на порядок больше, чем время передачи 1.4к пакета.
  8. Есть приводы, снабженные квадратурными энкодерами с аналоговым (sin/cos) выходом. Нужно выполнить примерно 10х интерполяцию в обычный цифровой (А/В) квадратурный сигнал. Производитель предлагает платы, выполняющие эту функцию, но цены и сроки поставки нас не устраивают. Хочется самим сделать что-то подобное. По сему вопрос: нет ли для этого каких-нибудь специализированных чипов? Если важны характеристики sin/cos сигнала: униполярный 0.5-3в, максимальная частота 20кГц.
  9. ARM + LCD PG320240. Скроллинг.

    Сразу извиняюсь за возможный оффтопик, но специализированной ветки по ЖКИ я не нашел, а поскольку я его цепляю к АРМ-контроллеру, то решил спросить тут :) И так, есть графическая панель PG320240 (на контроллере SED1335). Судя по даташиту, там есть режим скроллинга, но я так и не смог разобраться, как его реализовать. Я использую дисплей в текстовом режиме с внутренним знакогенератором, и мне надо все изображение сдвинуть вверх на одну текстовую строку. Я даже не смог понять, какое действие должно приводить к скроллингу? Есть две команды: SCROLL и HDOT SCR , но они, насколько я понял, только настраивают режим скроллинга. Может кто-то сумеет объяснить "на пальцах" как это делать?
  10. Естественно, такой МАС я использую только на этапе отладки - его хорошо видно глазом :), в конечном устройстве он будет другим. Хотя, над вопросом, как правильно выбрать МАС я еще не думал, если будут советы, рекомендации, ссылки - заранее благодарен.
  11. Спасибо, все понятно!
  12. Отлаживая обмен по UDP между PC и своим устройством столкнулся с тем, что что комп послал ARP-запрос не на широковещательный MAC-адрес, а на адрес моего устройства. Как видно из приведенного лога - событие разовое. Обратил на это внимание только потому, что мой девайс неадекватно отреагировал на такой кадр.Собственно,вопросы: - является ли такое поведение системы нормальным или какой-то глюк вызванный, например, некорректной работой моей программы? (хотя, непонятно как, винда шлет ARP-запросы сама, без всякого моего участия); - если такие запросы норма, то по какой причине они возникают? -должен ли я их обрабатывать именно как ARP-запросы (т.е., давать на них ARP-ответ) или можно проигнорировать?
  13. Понимаю, чип не самый ходовой, но вдруг кто-то работал... Как считать CRC32 для заполнения хеш-таблицы модуля Eternet? В мануале ( UM10503) , как ни странно, об этом ничего не нашел. На сайте oryx-embedded.com откопал драйвер MAC для LPC43, там используется мультикаст, соответственно, заполняется хеш-таблица и есть функция расчета CRC, но результат ее работы почему-то не совпадает с примером в мануле :( Может быть кто-то поделится своей функцией расчета?
  14. Вопросы по ARP

    Делаю связь между компом и своим устройством по UDP. Что бы не вбивать вручную МАС устройства, хочу воспользоваться ARP. Насколько я понимаю, винда посылает ARP-запрос при попытки передать пакет какому-то получателю, если его нет в ARP-таблице. Если же он там есть, то следующий ARP-запрос будет неизвестно когда. При отладке ARP-протокола на стороне устройства это очень не удобно. Вопрос: можно ли как-то стимулировать винду на немедленную посылку ARP-запроса? Например, стерев запись в таблице (ну, или на крайняк - всю таблицу)? И еще, можно ли настроить WireShark так, что бы он отлавливал только нужные мне ARP-запросы т.е. те, у которых в поле IP-адреса получателя было бы мое устройство?