1) Седал плату на базе ATmega16 для работы с w5100, использовал заводской модуль wiz811mj Rev1.0. Написал прошивку (асм) - все работает: пинги, UDP, никаких претензий.
2) На плате ATmega16 разъемы для подключения wiz811mj поставил шире, развел и изготовил (изготовление заводское, с маской и шелкографией) собственный модуль типа wiz811mj, но только со светодиодами Tx, Rx, Col, Spd. Схема - все содрано с wiz811mj практически полностью. Схема изменена только в том смысле что предполагается работа только с SPI - адресные ноги на землю все, ноги данных и RD, WR - болтаются в воздухе.
А вот тут начались чудеса...
Когда втыкаю свой модуль - загорается FDX, Link моргает, причем когда Link гаснет - Rx - загорается. Spd горит непрерывно. Из чего делаю вывод - W5100 проинициализировалась и какие-то данные в ее регистры записались. Если просто подать питание на модуль, но не грузить ничего в нее - молчит, не мигает. НО передача данных и пинг НЕ РАБОТАЮТ!
Сколхозил переходник и воткнул wiz811mj в свою плату с широко стоящими разъемами - ВСЕ РАБОТАЕТ. Значит дело не в управляющей плате и не в коде!
Собрал еще три платы своих модулей, все одинаковое. И не работают они тоже одинаково - дело не в сборке.
Воткнул осциллограф - все нормально, за исключением того что на MISO такой сигнал как будто он болтается в воздухе - очень зашумлен, но в целом повторяет MOSI. Звонил - все звонится от ноги контроллера до ноги W5100, щупом касаюсь непосредственно самого вывода W5100.
W5100 греется, но вроде не больше обычного. Даже навесил сверху на проводах инвертор как на схеме wiz811mj - все то же.
MAG JACK - LU1T516-43LF вроде бы полный аналог того что на wiz811mj - RDA-125BAG1A.
Электролиты танталовые 3.3 и 10 мкФ. Индуктивности 1 мкГн. Между аналоговой и цифровой землями - бусина ферритовая. Кварц 25 МГц, при нем кондеры 13 пФ, 1 МОм - все как по схеме wiz811mj.
Куда копать - ума не приложу!
Еще важная информация: ATmega питается от 5В, W5100 от преобразователя из 5В в 3.3В. Каких-либо согласующих элементов по сигналам SPI нет.
Тем временем градус неадэквата растет - если закоротить между собой MOSI и MISO и проинициализировать W5100 то начинают идти пинги. Т.е. MAG JACK работает исправно. При этом моргают Tx и Rx. Т.е. Вроде все работает в W5100, но на SPI все равно каша.
Вобщем последний эксперимнт как раз и натолкнул меня на верную мысль - я перепутал при разводке MISO и MOSI! Перепаял их обратно - все заработало, пинги идут с самого начала, UDP на 100 Мбит бегает без проблем!
Даже как-то чувствую что зря тему писал