let's see 0 29 января, 2016 Опубликовано 29 января, 2016 · Жалоба Добрый день. Имеем плату te-stm32f107 и прототип устройства собранного по такой же схеме. Загрузил и слегка модифицировал "LwIP TCP/IP stack demonstration for STM32F107xx (AN3102)" (добавил udp сокет и обрабатываю данные). Иногда при старте отладки на плате (плата была подключена к локальной сети офиса через гигабитный свич) программа стартовала, но не появлялись прерывания от модуля Ethernet, моменты были очень редкие, по-этому не обращал на них особого внимания. Когда был собран прототип, его установили на будущее рабочее место (подключен в изолированную локальную сеть из 20 узлов). Сейчас стабильно, почти каждый день, при включении моего устройства, оно не пингуется, помогает повторное переподключение питания, а программа функционирует как положено. Сразу вспомнил про проблемы с отладкой и появилось предположение, что пока программно-аппаратная часть микроконтроллера инициализируется, rtl8201 может, по какой-то причине, не сообщать о приеме нового микроконтроллеру. Кто сталкивался с подобным? Или пните в нужном направлении. По-моему, Ваш вопрос - это совершенно иная тема. Тем не менее, а Вы просто используете чей-то код или это свой? В любом случае, почитайте регистры phy ... ST802RT1_REG_XSTAT, // 17 - Receiver configuration information and interrupt status register ST802RT1_REG_XRCNT, // 18 - Receiver event interrupts register ... Может быть не всегда успевает слинковаться с сетью. Кстати, у Вас очень устаревший phy. Даже ST от него отказалась. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Neborak 0 29 января, 2016 Опубликовано 29 января, 2016 (изменено) · Жалоба По-моему, Ваш вопрос - это совершенно иная тема. Тем не менее, а Вы просто используете чей-то код или это свой? В любом случае, почитайте регистры phy ... ST802RT1_REG_XSTAT, // 17 - Receiver configuration information and interrupt status register ST802RT1_REG_XRCNT, // 18 - Receiver event interrupts register ... Может быть не всегда успевает слинковаться с сетью. Кстати, у Вас очень устаревший phy. Даже ST от него отказалась. Спасибо за наводку, пока собираю информацию. Я пример от ST использую, накопал, что при инициализации в отсутствии линка в течении определенного таймаута (примерно 5 сек.) досрочно завершается иниицализация Ethernet и что-то по DMA. Пока сделал на каждый этап инициализации и работы программы свою комбинация свечения светодиодов, что бы можно было определить состояние. Гляну, что там получится, вторым гляну, что там с этим линком, в принципе, нет линка, стоит уйти в сброс и попытаться инициализироваться снова. Плохо, что в прототип не заложили uart, что бы обслуживающий персонал мог логировать самостоятельно, еще проблема в том, что мне не разрешают дергать питание, что бы воспроизвести проблему чаще, утром - включили, вечером - выключили. А проблема проявляется именно когда включается все, среди дня многократно дергаю питание прототипа и ничего. По phy, использовали такой как стоял в плате от терры, решили в первом прототипе не экспериментировать, потому, что опыта ноль было. Сейчас хочется поставить с возможностью подключения внешнего сигнала (25МГц с MCO микроконтроллера), что посоветуете? P.S. Обманул по задержке при отсутствии линка, секунд 15 получается с момента старта программы до получения ошибки от инициализации Ethernet. Изменено 29 января, 2016 пользователем Neborak Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 29 января, 2016 Опубликовано 29 января, 2016 · Жалоба По phy, использовали такой как стоял в плате от терры, решили в первом прототипе не экспериментировать, потому, что опыта ноль было. Сейчас хочется поставить с возможностью подключения внешнего сигнала (25МГц с MCO микроконтроллера), что посоветуете? KSZ8081RNA. Полёт нормальный. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
let's see 0 30 января, 2016 Опубликовано 30 января, 2016 · Жалоба Спасибо за наводку, пока собираю информацию. Я пример от ST использую, По phy, использовали такой как стоял в плате от терры, решили в первом прототипе не экспериментировать, потому, что опыта ноль было. Сейчас хочется поставить с возможностью подключения внешнего сигнала (25МГц с MCO микроконтроллера), что посоветуете? P.S. Обманул по задержке при отсутствии линка, секунд 15 получается с момента старта программы до получения ошибки от инициализации Ethernet. Их примеры можно исполоьзовать только как референс, написано ногами, как, впрочем, и документация. Прочитайте регистры, которые я привел - должны что-нибудь просветить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Neborak 0 23 февраля, 2016 Опубликовано 23 февраля, 2016 · Жалоба Ребята, выявил причину проблем (не до конца), в моем модуле было предусмотрено управляемое питание подключаемых внешних устройств через полевой транзистор. Как временный вариант внешние устройства питались от своего БП, мой модуль от своего, а в полевом транзисторе обратный диод. Подключив как предпологалось с самого начала - питание внешних устройств идет только через мой модуль, все работает без сбоев в течении 3 недель. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться