-
- Спасибо. - Гyдвинволшебник(20.05.2021 08:28)
- Починил работу с PHY. В общем, вот минимальный пример. Без
прерываний, без нихера. Просто принять и отправить пакет. LightElf(21.05.2021 16:20, ссылка)
- Выяснилась интересная
багаособенность у модуля ETH, пока не понял как ее обойти. Суть в том, что приняв один пакет контроллер не останавливается и радостно готов принимать следующий пакет поверх предыдущего :) В результате есть шанс получить пакеты всмятку. - LightElf(23.05.2021 20:32)- Кортекс не успевает в прерывание за время преамбулы очередного
пакета? Там вроде 6 мкс минимум. - s_h_e(23.05.2021 20:54)
- У M0 нет BASEPRI, соответственно прерывания иногда придется
запрещать. По первому пакету флаг прерывания взвелся, пошел прием
второго пакета поверх первого, тут критическая секция закончилась,
входим в прерывание, переключаем буферы и вуаля - имеем в буфере
начало второго пакета и конец первого. Скорее всего обойти можно,
но надо сильно думать. - LightElf(23.05.2021 21:42)
- Одно решение на поверхности лежит - дать прерыванию ETH максимальный приоритет и не запрещать прерывания глобально. Обдумываю альтернативы - LightElf(24.05.2021 07:31)
- Вот это как раз и вызывало тревогу - контроллер должен заниматься
множеством других дел. Если нет аппаратного переключения адресации
буфера приема, то это игрушка. - Гyдвинволшебник(23.05.2021 22:10)
- Было бы достаточно приняв один пакет вырубать прием до обработки
прерывания. Но воообще - я слегка жалею, что связался. "Не гонялся
бы ты поп за дешевизной". Надо было CH563Q брать. - LightElf(23.05.2021 22:18)
- Потому и тычусь одновременно и с CH579, и связкой NRF52+ENC28. Но с
enc28j60-i/ss тоже сейчас жопа :( - Гyдвинволшебник(23.05.2021 23:30)
- Если ничего совсем фатального не всплывет - буду жрать кактус, бо
прикупил уже кучку :) Правда кучку ESP32+KSZ8081R тоже прикупил :) - LightElf(23.05.2021 23:37)
- Тоже пользуем KSZ8081R, но у него всего один светляк. Некоторые
клиенты вопросы задают, почему не горит второй в разъеме. Когда-то
не обратили внимание, повелись на дешевизну. Есть такой же дешевый
LAN какой-то, но с 2 выходами на светляки. - Andreas(24.05.2021 09:55)
- Вешаю второй светодиод на ножку проца и включаю программно для индикации 10/100. А так все уже привыкли, у IP175L тоже только один светик на порт. В качестве альтернативы KSZ8081R хорошо заходил IP101GR, весьма приятный. Но с ним тоже начались приключения с ценами и доступностью. - LightElf(24.05.2021 10:32)
- В конторе тоже кучка уже лежит - обошлись по 180 руб/шт :) Думаю, сгодится-таки для всяческой мелочевки, если не удастся натянуть на то, что хочу. ENC28 тоже запасец кое-какой имеется, ибо текущая реализация девайсов на них. Манагеры Ультрана стучат пяткой в грудь, что с nrf52 все будет пучком (блажен, кто верует ;) - Гyдвинволшебник(24.05.2021 00:06)
- Тоже пользуем KSZ8081R, но у него всего один светляк. Некоторые
клиенты вопросы задают, почему не горит второй в разъеме. Когда-то
не обратили внимание, повелись на дешевизну. Есть такой же дешевый
LAN какой-то, но с 2 выходами на светляки. - Andreas(24.05.2021 09:55)
- Если ничего совсем фатального не всплывет - буду жрать кактус, бо
прикупил уже кучку :) Правда кучку ESP32+KSZ8081R тоже прикупил :) - LightElf(23.05.2021 23:37)
- Потому и тычусь одновременно и с CH579, и связкой NRF52+ENC28. Но с
enc28j60-i/ss тоже сейчас жопа :( - Гyдвинволшебник(23.05.2021 23:30)
- Было бы достаточно приняв один пакет вырубать прием до обработки
прерывания. Но воообще - я слегка жалею, что связался. "Не гонялся
бы ты поп за дешевизной". Надо было CH563Q брать. - LightElf(23.05.2021 22:18)
- У M0 нет BASEPRI, соответственно прерывания иногда придется
запрещать. По первому пакету флаг прерывания взвелся, пошел прием
второго пакета поверх первого, тут критическая секция закончилась,
входим в прерывание, переключаем буферы и вуаля - имеем в буфере
начало второго пакета и конец первого. Скорее всего обойти можно,
но надо сильно думать. - LightElf(23.05.2021 21:42)
- Кортекс не успевает в прерывание за время преамбулы очередного
пакета? Там вроде 6 мкс минимум. - s_h_e(23.05.2021 20:54)
- Премного благодарен! (сегодня только до компа добрался). - Гyдвинволшебник(21.05.2021 17:32)
- Выяснилась интересная
- Починил работу с PHY. В общем, вот минимальный пример. Без
прерываний, без нихера. Просто принять и отправить пакет. LightElf(21.05.2021 16:20, ссылка)
- Спасибо. - Гyдвинволшебник(20.05.2021 08:28)