Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Отново за ENC28J60
http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=2576
Страница 1 от 1

Автор:  gicho [ Пон Юни 26, 2006 11:57 am ]
Заглавие:  Отново за ENC28J60

Здравейте,
от няколко дни се боря с туй чудо и идеите, както и нервите ми, са на изчерпване, помагайте ...
Направил съм платка с него и Cvilux-а букса с трансформатор от Комета, вързана към Mega162. AVR-a тича на 16MHz, а SPI-а към ЕНК е на 8MHz. Използвам драйвера от Procyon AVR lib, като разгледах няколко други реализации, явно базирани на този драйвер. Мегата и ЕНК-а се захранват от 3.3V LDO (LP8345), което се храни от 5V. Двата чипа са на 3.3V и няма level shift-ъри.

Писане и четене на регистрите върви без проблеми, включително на PHY и MAC регистри, при изчитане получават POR стойността, пиша нещо, изчитам записаното коректно. Управлявам си clockout-a на ENC-а и той изкарва зададената стойност. Всичко изглежда наред.
Проблемите са два:
- записването на каквато и да е конфигурация в PHLCON не променя състоянието на светодиодите - blink, on, off и разни други не светват нищо ??? обратното изчитане на PHLCON-a ми връща записаната от мен стойност, а преди да я запиша ми връща POR default стойността; (това ме притеснява много, липсата на връзка може да бъде от некоректно свързан траф или неподходящ "link partner", но тия диоди ми се виждат много "праволиниено" нещо, с което не бива да има проблеми); проверил съм свързванията, всички пинове на ЕНК-а са ОК, когато подам +3.3 на мястото на LEDA и LEDB изходите на ЕНК (със махнат ЕНК от сокета естествено) ламбите светват;
- по-отдалечения проблем е, че нямат статус за наличие на връзка от PHSTAT1/2; това е за по-късно, но проверих детайлно свързването, опитах и с друг траф с отделна букса от мрежова карта с RTL8019AS, няма промяна; с осцилоскоп виждам NLP импулсите на вторичната страна на трафа да отиват в TPIN пиновете; пробвам със switch с пач кабел и с крос кабел към мрежова карта, която ръчно забивам на 10baseT half-duplex; Някой знае ли кога ЕНК-а започва да пуска NLP импулси? Да не е да се разбират като глухия и немия?

Кратък коментар - давам си още 2-3 дни и ръчам CP2200/1 и ставам "totally MICROCHIP free."

Благодаря за съдействието !
BTW, напрежение 3,3 е стабилно 3.27V с минимални пулсации. Има доста керамики по платката, както и няколко електролита. Пробвах със и без феритен филтър на +3.3 към TX страната на трафа.

Автор:  Nikola Kirov [ Пон Юни 26, 2006 12:51 pm ]
Заглавие: 

Абе да ти кажа мега захранена на 3.3V не може нормално да работи на 16Mhz.
Виж си пдф-а на мегата.
На 3,3V могат да работят L версиите но с кварц до 8Mhz.

Автор:  3aek [ Пон Юни 26, 2006 12:56 pm ]
Заглавие: 

gicho сбъркал си процесора мой човек
защо почваш всичко от 0 с AVR като Microchip има готов стек за PIC + ENC28J60 който бачка като слънце и не ти трябва да ровиш драйвери и прочее???

Автор:  gicho [ Пон Юни 26, 2006 1:46 pm ]
Заглавие: 

За захранването - опитах вече с AVR-a на 5V, а ENC-a на 3.3V. Иначе върви и на 16MHz, но си е овърклок, затова и ги вързах на различни захранвания, ефекта е същия.
Колкото до микрочипския стек, благодаря. 5-6 години съм се борил с аризонски пясък, повече не искам от него. Да слагам 40МHz осцилатор не ми е изгодно, а с PLL не е надеждно.
Не че AVR-а е идеален, ама предпочитам. С МЦЦ18 отказвам да работя, както и с ICD2. Бих се мъчил ако чиповете бяха например по-евтини, че да има смисъл от мъките. Да не спорим защо е AVR, освен ако някой смята че с AVR има техническа пречка да стане.
Въпреки предубедеността си, ще пробвам другия вариант - да клоквам мегата от clockout-a (6.25MHz) на ENC-то. Само че никъде не видях обяснение защо ако се клокват от един сорс ще работи - може би с микрочипския SPI контролер да е така, но няма гаранция, че решението е универсално.
За сведение, има си стек и за AVR, дори няколко реализации, така че това не проблем в случая.
Нямам проблеми с интерфеиса между двата чипа, сигурен съм, че успявам да запиша правилна конфигурация за LED-овете, но няма резултат.
Всъщност успях да светна единия - като го закачих кам +, както е конфигурацията за фул дуплекс. Светва постоянно, без връзка.

Пробата AVR-а да ползва clock out-a на ENC не показа разлики. Държи се по един и същ начин. Прегледах сорса на микрочипския стек, неиде из началото има тест на паметта, ако не излезе записват 0x0AA2 в PHLCON за да замигат двата диода бързо и индицират грешка. Направих същото (без теста, направо след конфигуриране на SPI-a на AVR-a забивам тази константа. И на LED-овете - никой.
Не изключвам да е баламски проблем, затова и питам:

Някои ползвал ли е трафовете от Комет-а успешно и на фул или халф дуплекс?

Единствена бройка ми е (а и пари за втори такъв няма да дам), така че може да има проблем със самия чип. В началото го бях закачил с 2К за Rbias, преди да видя в ератата, че за B4 трябва да е 2.7К.

Да добавя - четох по форума на микрочип, че без никакво конфигуриране, чипа трябва да тръгне и да индицира наличие на линк със светодиодите. При мен не индицира нищо.

EDIT:
Пробата AVR-а да ползва clock out-a на ENC не показа разлики. Държи се по един и същ начин. Прегледах сорса на микрочипския стек, неиде из началото има тест на паметта, ако не излезе записват 0x0AA2 в PHLCON за да замигат двата диода бързо и индицират грешка. Направих същото (без теста, направо след конфигуриране на SPI-a на AVR-a забивам тази константа. И на LED-овете - никой.

Писах и на микрочипския форум, дано има някакав резултат...

Автор:  gicho [ Сря Юни 28, 2006 9:43 am ]
Заглавие: 

Проблема е решен - нестабилна връзка на един от захранващите пинове - VDDPLL.

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/