|
stm32f4 + ks8721 (проблемы), ETH |
|
|
|
Feb 10 2014, 07:26
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Соединил STM32F4 c PHY KS8721 по RMII. Залил свой код. После выставления в BCR бита AutonegatiationEnable в BSR поднимается бит - AutonegatiationComplete. Но в регистре 0x1F скорость не определена - в битах отвечающих за скорость 000 - по DS означает что скорость еще не определена. Светодиоды Link и Transfer мигают при этом оба. Куда дальше двигаться?
|
|
|
|
|
Feb 11 2014, 07:20
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Может есть у кого небольшой рабочий проект под Keil c этой физикой?
|
|
|
|
|
Feb 11 2014, 09:14
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Кто-нибудь на форуме вообще запускал эту физику в RMII?
|
|
|
|
|
Feb 11 2014, 14:59
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Подключил ее я вроде правильно, кварц 50MHz, адрес физики 0x01 выбран при рестарте, 21 нога в "1" (RMII). Правда есть разночтение в DS насчет 46 ноги, толи подключать ее к +3V3 или к VDPLL (2,5V). На всякий случай приложил схему. Может кто работал с ней сравнит ее со своей схемой. Попробую конечно не писать ничего в физику, только мне кажется так ничего не получится, ведь MAC и PHY должны как минимум установить у себя одинаковую скорость...
Сообщение отредактировал Eminem - Feb 11 2014, 15:00
Эскизы прикрепленных изображений
|
|
|
|
|
Feb 11 2014, 19:48
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Ok. Завтра попробую использовать стек от Keil. Может так произойдет понимание где ошибка у меня. Физика конечно не новая, наверно 2006 год. Но в корпусах LQFP с поддержкой RMII только эта. Есть еще DP3xxxx, то на чем сделана плата расширения для Discavery и все примеры от ST под них написаны, но она дороже в два раза этой. Почему дороже я правда не разбирался, но не думаю что там функционал лучше.
|
|
|
|
|
Feb 11 2014, 22:05
|
Местный
  
Группа: Участник
Сообщений: 218
Регистрация: 24-06-10
Пользователь №: 58 127

|
Недавно DP... была дорогая. Сейчас все наоборот. Вот смотрю в www.compel.ru KS8721=4$, а DP83848 есть за 4$, за 3,3$ и 1,8$. К стате тот драйвер ETH, что я выложил и с DP83848 работает и с LAN8720. Правда адрес для DP83848 там надо поставить 0x01, а вот для LAN8720 щас уже не помню
|
|
|
|
|
Feb 12 2014, 07:32
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Все же как-то не просто у TI в этом вопросе: в LQFP DP83848 коммерческий вариант 4$, в индустриальном 5$, а если QFN корпус - тогда индустриальный за 3$. Старая KS8721 соответственно - 2$ и 4$. Цены приближено конечно.
|
|
|
|
|
Feb 12 2014, 08:04
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
А к какой физике не нужны согласующие резисторы?
|
|
|
|
|
Feb 13 2014, 03:23
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Цитата(iosifk @ Feb 12 2014, 09:43)  А вот то, что для более новых микреловских микросхем не нужны согласующие резисторы? Да и есть понятие "срок жизни"... Да и цена раза в 2 ниже, это как? Вы правы, Иосиф. Посмотрел я что предлагает Micrel сейчас. Например KSZ8021/31 без согласующих резисторов, только RMII, 50MHz кварцем 25MHz получить можно, и цена примерно в два раза ниже - мне бы подошло. Корпус правда волной не паябельный. После прототипа платы я подумаю поставить что нибудь из них.
|
|
|
|
|
Feb 13 2014, 04:21
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Цитата(vlad_new @ Feb 11 2014, 19:26)  Ну раз физика мигает, значит работает. Где то не стыковочка есть. Вот попробуйте фалики может поможет. Спасибо vlad_new. Не стыковка действительно была, только в железе, точнее казус - резистор на плате который отвечает за напряжение 2,5V был не припаян с одной стороны (это один из 1% висящих на 37 ноге). В результате чего напряжение VDPLL плавало, и я почему-то решил что аккамулятор сел на мультиметре. В общем даже при моем 100% зрении паять мелочь 0603 - может привести к потере времени. Стек от Keil я правда так и не попробывал, на тот момент я был твердо уверен, что проблемы в моем железе. Ну к тому же меня больше интересуют открытые исходники, но зато я разобрался в настройке дескрипторов ETH STM32 и перелопатил все касаемо физики. Еще я могу выложить здесь тест проект под Keil 5.0 с HTTP сервером (uIP) - это для проверки вашего железа, что бы никто не терял время как я, если вдруг задумает использовать старую физику типа KS8721. В общем для нубов типа меня.. Просто там надо пару пояснений написать, а времени жалко - если никто не спросит, то я и не буду заморачиваться. Цитата(billidean @ Feb 13 2014, 05:37)  Тоже работал с несколькими типами PHY, правда работал с ПЛИСками (но это не важно от куда управлять), и, действительно, все настройки сводились только на настройку драйверов своих кристаллов (ПЛИС). Подождите, но ведь скорость и режим (Half, Full Dupleks) MAC по любому нужно согласовывать с физикой, даже если он реализован на ПЛИС. Ведь правильно? Или нет?
|
|
|
|
|
Feb 13 2014, 04:42
|
Местный
  
Группа: Свой
Сообщений: 247
Регистрация: 4-10-10
Из: г. Екатеринбург
Пользователь №: 59 925

|
Цитата(Eminem @ Feb 13 2014, 08:21)  скорость и режим (Half, Full Dupleks) MAC по любому нужно согласовывать с физикой - это уже идут настройки Вашего кристалла/драйвера, а не PHY. Я, настроив свои контроллеры в ПЛИСке, просто ждал появления линка от PHY, и все, начинал работать. Правда, для меня было совсем не важно в каком режиме, на какой скорости идут обмены, мне нужен был очень медленный обмен, поэтому я и не заморачивался. На начальном этапе на Вашем месте я бы также забил на все эти настройки и поработал с автоматическими настройками PHY, а потом уже можно и поработать напильником для улучшения характеристик.
|
|
|
|
|
Feb 13 2014, 05:21
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Цитата(HardJoker @ Feb 13 2014, 06:51)  R90 на схеме 4.99k. По тех.описанию Rext=R90=6.49k Я знаю, у меня в схеме два резюка последовательно стоят 1% (1,5K + 4,99K) - в сумме 6,49K. Я в своем проекте попробывал выставить в физику скорость 10Mbit и режим и запретить AutoNegatiation, но когда линк не поднялся, понял что где то в железе накосячил. Вопрос к Вам, как к разработчику на плис - если я на NIOS ядре (Altera) сделаю контроллер с поддержкой SDRAM и TFT и MAC, смогу ли я уменьшить потребление своего камня по сравнению с STM32F439? Просто получается что у меня не используются встроенные ADC и DAC - пока использую внешние, с развязкой. Нужно ли мне двигаться в этом направлении? Имеет ли это смысл? Можно ли при таком подходе денег с'экономить на конечном устройстве? Цитата(HardJoker @ Feb 13 2014, 06:55)  По схеме средние точки трансформатора выв.4 и 5 объединены. Не лучше ли их разорвать на всякий случай? Не думаю, в некоторых RJ45 они соединяются между собой еще в разъеме.
|
|
|
|
|
Feb 13 2014, 06:04
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Цитата(Eminem @ Feb 13 2014, 09:21)  если я на NIOS ядре (Altera) сделаю контроллер с поддержкой SDRAM и TFT и MAC, смогу ли я уменьшить потребление своего камня по сравнению с STM32F439? Просто получается что у меня не используются встроенные ADC и DAC - пока использую внешние, с развязкой. Нужно ли мне двигаться в этом направлении? Имеет ли это смысл? Можно ли при таком подходе денег с'экономить на конечном устройстве? когда я запихал не очень сложный микроблайз в ксалинкс, я впервые увидел что ПЛИС греется. Эти процы имеют смысл если вы хотите много чего на ПЛИС еще из обвески сделать, чего нет в проце, и иметь к этому доступ через внутренние шины проца. Плата за это глюки в софте разработки, и сложности самого проца, система все же не идеальна.... это про ксалинкс, не думаю что у альтеры сильно лучше... В общем экономия денег и питания лучше с готовыми процами. Опять же готовый проц уже оттестирован и работает на заявленных частотах, а все эти сборки в плис, каждый раз танцы...
|
|
|
|
|
Feb 13 2014, 06:26
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Цитата(Golikov A. @ Feb 13 2014, 08:04)  когда я запихал не очень сложный микроблайз в ксалинкс, я впервые увидел что ПЛИС греется. Эти процы имеют смысл если вы хотите много чего на ПЛИС еще из обвески сделать, чего нет в проце, и иметь к этому доступ через внутренние шины проца. Плата за это глюки в софте разработки, и сложности самого проца, система все же не идеальна.... это про ксалинкс, не думаю что у альтеры сильно лучше...
В общем экономия денег и питания лучше с готовыми процами. Опять же готовый проц уже оттестирован и работает на заявленных частотах, а все эти сборки в плис, каждый раз танцы... О... +++ отлично, спасибо. Значит мне хватит то чего знаю CPLD + MK. Цитата(HardJoker @ Feb 13 2014, 07:35)  Посмотрел SDK, действительно, обе ноги уходят на +2V5. Но если так, выходные драйвера через обмотки тоже подключены к +2V5. По сути закорочены. Нужны конденсаторы "в разрыв" или по сигнальным цепям, или между средними точками обмоток и +2V5. M.б. они есть внутри разъема. Тогда нужно проверить его схему. Всегда использую 8721, но средние точки обмоток подключаю _через_ конденсаторы TC к +2V5, а RC к 0V. Эх. Я честно говоря больше программер, чем электронщик. И для меня неуклюжим выглядит замыкание обмоток трансформатора через резисторы в 1% на VDPLL. Тем более "прозвонить" в статике проверив на разрыв дорожек такое теряет почти весь смысл. Могу только сказать что по подключенной схеме линк 100Mbit поднимается даже без согласующих резисторов на длине 10 метров. В общем может кто-нибудь знающий с ходу здесь ответит - для чего нужны согласующие резисторы?
|
|
|
|
|
Feb 13 2014, 06:28
|
Местный
  
Группа: Свой
Сообщений: 247
Регистрация: 4-10-10
Из: г. Екатеринбург
Пользователь №: 59 925

|
При работе с ПЛИС, при софтовой разработке/настройке контроллеров интерфейсов, всегда хочется иметь Hard'овый контроллер, проверенный/протестированный/заточенный под нужнй интерфейс. А с другой стороны, работая с Железными реализациями контроллеров, иногда хочется что-то подправить/переделать под себя, но уже нельзя, т.к. в микруху не полезешь. При больших загрузках ПЛИСок, да и при больших частотах работы процессов (100-200 МГЦ), ПЛИС начинает нормально греться, поэтому нужно обеспечивать теплоотводы. Про сам НИОС могу сказать - при нормальных (НЕкривых) настройках вещь стабильная, каких-то непонятных сбоев не наблюдал. Про контроллеры интерфейсов - здесь да... иногда нужен настоящий "Шаманский" бубен, чтобы ОНО заработало.
|
|
|
|
|
Feb 13 2014, 06:47
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Цитата(billidean @ Feb 13 2014, 08:28)  При работе с ПЛИС, при софтовой разработке/настройке контроллеров интерфейсов, всегда хочется иметь Hard'овый контроллер, проверенный/протестированный/заточенный под нужнй интерфейс. А с другой стороны, работая с Железными реализациями контроллеров, иногда хочется что-то подправить/переделать под себя, но уже нельзя, т.к. в микруху не полезешь. При больших загрузках ПЛИСок, да и при больших частотах работы процессов (100-200 МГЦ), ПЛИС начинает нормально греться, поэтому нужно обеспечивать теплоотводы. Про сам НИОС могу сказать - при нормальных (НЕкривых) настройках вещь стабильная, каких-то непонятных сбоев не наблюдал. Про контроллеры интерфейсов - здесь да... иногда нужен настоящий "Шаманский" бубен, чтобы ОНО заработало. Ясно, большое спасибо за инфу - кроме интерфейсов, мне нужна по идее виртуальная машина, и я подумал, было бы не плохо реализовать некоторые ее команды в железе, пока отодвину ознакомление с FPGA года на два.
|
|
|
|
|
Feb 13 2014, 06:58
|
Местный
  
Группа: Свой
Сообщений: 247
Регистрация: 4-10-10
Из: г. Екатеринбург
Пользователь №: 59 925

|
Цитата(Eminem @ Feb 13 2014, 10:47)  пока отодвину ознакомление с FPGA года на два. - глобально :-)
|
|
|
|
|
Feb 13 2014, 07:13
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 13-02-12
Пользователь №: 70 236

|
Цитата(billidean @ Feb 13 2014, 08:58)  - глобально :-) Ну, я такой.
|
|
|
|
|
Jul 27 2014, 19:59
|
Группа: Новичок
Сообщений: 1
Регистрация: 10-03-14
Пользователь №: 80 870

|
Здравствуйте Eminem,вы писали что можете поделится проектом Keil 5.0 с HTTP сервером (uIP)? Не могу запустить KS8721 правда в режиме MII.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|