whale_nik
Nov 1 2011, 15:57
собрал плату,
запрогал мегу, она выдает в W3150A+
//GATE
SPI_Send (Write_W3150, 0, 1, 192);
SPI_Send (Write_W3150, 0, 2, 168);
SPI_Send (Write_W3150, 0, 3, 0);
SPI_Send (Write_W3150, 0, 4, 1);
//MASK
SPI_Send (Write_W3150, 0, 5, 255);
SPI_Send (Write_W3150, 0, 6, 255);
SPI_Send (Write_W3150, 0, 7, 255);
SPI_Send (Write_W3150, 0, 8, 0);
// MAC
SPI_Send (Write_W3150, 0, 9, 0);
SPI_Send (Write_W3150, 0, 10, 0);
SPI_Send (Write_W3150, 0, 11, 0);
SPI_Send (Write_W3150, 0, 12, 1);
SPI_Send (Write_W3150, 0, 13, 0);
SPI_Send (Write_W3150, 0, 14, 0);
// IP 192.168.0.3
SPI_Send (Write_W3150, 0, 15, 192);
SPI_Send (Write_W3150, 0, 16, 168);
SPI_Send (Write_W3150, 0, 17, 0);
SPI_Send (Write_W3150, 0, 18, 3);
Команды вроде проходят, во всяком случае читает и пишет регистры, связь через spi.
Кабель сети пооверял, подключал TX+ к RX+ итд,
кабель воткнут в комп, карта там рабочая с другими связывается.
В итоге полная тишина , светодиоды не мигают.
Резистор с + на PHYAD0 запаян
Все дороги проверил вроде.
На RXC TXC меандр 250кгц
Питание все в норме 3,3в 2,5в 1,8в
Ферритовые бусы на внутреннее питание присутствуют.
Средние точки в трансе к + не подключены.
Почему не пускается ?
whale_nik
Nov 1 2011, 18:31
зы насчет 250 кгц обманул, кривой щуп попался на самом деле 2,5мгц
при замыкании RX+ TX+ линк не появляется
Если поелозить пинцетом по RX+ - то мигает линк 10мб
ANE на землю припаян.
схема p-cad 2004
www.whale-box.narod.ru/temp/IP.SCH
на rset вместо 5.9к стоит 5.6к думаю не принципиально
может ANE надо на + ?
Цитата(whale_nik @ Nov 1 2011, 23:41)

Мда... глухомань
Если схему нарисовать в PCAD 4.5 и раздавать через torrent, то ответов, думаю, будет еще меньше. Лучше напечатайте её в PDF и прикрепите к сообщению.
whale_nik
Nov 1 2011, 21:08
WWW.whale-box.narod.ru/temp/IP.pdf
Вывод txd3 W3150 соединен с txd3 rtl8201bl и остальные соотв. по одинаковым названиям.
Вообще мне кажется что связка w3150a+rtl8201 без всякой инициализации должна поднимать кабель просто так.
Цитата(whale_nik @ Nov 1 2011, 22:31)

может ANE надо на + ?
По-хорошему, надо. Хотя линк при замыкании собственных RX-TX должен появляться в любом случае.
Убедитесь еще, что распиновка трансформатора в схеме и в жизни совпадает.
Цитата(whale_nik @ Nov 2 2011, 01:08)

Вообще мне кажется что связка w3150a+rtl8201 без всякой инициализации должна поднимать кабель просто так.
Более того, чтобы просто "поднять кабель" не нужна и W3150.
whale_nik
Nov 1 2011, 21:48
Цитата(aaarrr @ Nov 2 2011, 01:27)

По-хорошему, надо. Хотя линк при замыкании собственных RX-TX должен появляться в любом случае.
Убедитесь еще, что распиновка трансформатора в схеме и в жизни совпадает.
Более того, чтобы просто "поднять кабель" не нужна и W3150.
Очень может быть.
Готов отпаять транс совсем, какие выводы соединить чтобы был линк ?
RX+ на TX+ достаточно или все четыре ?
Цитата(whale_nik @ Nov 2 2011, 01:48)

RX+ на TX+ достаточно или все четыре ?
Все четыре.
whale_nik
Nov 1 2011, 21:57
УРАААААААаааааааАААААААА !
заработало !
Оказалась залипуха под 50 ом резистором на TX выводах транса, те на выходе rtl было кз,
поэтому принимала но не передавала.
Спасибо за помощь !

Правда не пингуется но это уже завтра разберемся.
whale_nik
Nov 1 2011, 22:14
Интересно у rtl автовыбор входа/выхода чтоли ?
При переворачивании разъема сетка остается
Те вместо RX ставим TX ничего не меняется, может правда в компе сетевуха шибко умная ...
Цитата(whale_nik @ Nov 2 2011, 02:14)

Интересно у rtl автовыбор входа/выхода чтоли ?
При переворачивании разъема сетка остается
Те вместо RX ставим TX ничего не меняется, может правда в компе сетевуха шибко умная ...
У RTL8201BL Auto-MDIX нет, он есть у более новых RTL8201CP. А вот в комповой сетевой карте есть наверняка.
whale_nik
Nov 1 2011, 22:26
Материнка довольно новая, скорее всего есть .
Еще счастье, запинговался
причем на тот ip который прописывала mega
Наверно планеты стали в ряд к вечеру
whale_nik
Nov 2 2011, 15:35
Кто нить понял с каких адресов считываются принятые данные а также записываются передаваемые в w3150a ?
Читал 3 раза даташит, нихрена не понял с этими постояными бредовыми офсетами и прочей мурой,
корейцей надо на кол посадить за такое програмирование

Может кто нить по русски объяснить ?
whale_nik
Nov 2 2011, 19:25
Цитата(whale_nik @ Nov 2 2011, 18:35)

Кто нить понял с каких адресов считываются принятые данные а также записываются передаваемые в w3150a ?
Читал 3 раза даташит, нихрена не понял с этими постояными бредовыми офсетами и прочей мурой,
корейцей надо на кол посадить за такое програмирование

Может кто нить по русски объяснить ?
ps долго думал, пришел к выводу что адрес с которого надо читать принятые данные задается для сокета0
адрес = (S0_RX_RD & 0x7FF )+0x6000
объясните мне неисповедимые пути корейских программистов, что все это значит, особенно
физический смысл маски 0x7FF
физический смысл регистра S0_RX_RD
вообще как и куда начинают писаться принятые данные....

Так начинаю понимать,
0x7FF или маска это размер отведеной памяти для каждого сокета-1, те 2047 если по 2048 для каждого сокета,
S0_RX_RD принимает такое значение чтобы S0_RX_RD & 0x7FF=0 для сокета 0, те 2048 & 2047=0 те S0_RX_RD= 2048,
для сокета 1 S0_RX_RD & 0x7FF=2048
для сокета 2 S0_RX_RD & 0x7FF=4096
итд если для каждого сокета по 2048 байт отведено.
Тогда принятые данные для сокета 0 читаем с начала памяти те 0х6000
для сокета 1 с 0х6000+2048
для сокета 2 с 0х6000+4096
Правильно ?
Никто не разбирался чтоли ?
whale_nik
Nov 3 2011, 17:12
Похоже все бездумно копируют драйверы