Перейти к содержанию
    

ksv198

Участник
  • Постов

    214
  • Зарегистрирован

  • Посещение

Весь контент ksv198


  1. Добрый день! Если не отключать DHCP, то Вам как-то надо будет узнать, какой IP адрес присвоен Вашей плате (чтобы потом пинговать). Всё отличие при выборе MII/RMII заключено в правильной инициализации ножек микроконтроллера и выборе режима интерфейса МАС (ноги инициализируем в функции "void HAL_ETH_MspInit(ETH_HandleTypeDef *heth)", МАС переключаем в нужный режим в начале функции "static void low_level_init(struct netif *netif)" -> строчка "EthHandle.Init.MediaInterface = ETH_MEDIA_INTERFACE_MII;". Обе функции находятся в файле "ethernetif.c"). К сожалению, у меня нет под рукой ни одной платы с интересующим Вас PHY DP83848.
  2. Доброго дня! Шаг первый: посмотрите локальный IP адрес Вашего компьютера (запускаем командную строку, далее вводим команду ipconfig -all). Он (адрес) скорее всего будет в диапазоне 192.168.10. будет что-то похожее ( у меня подсеть 70) Шаг второй: подключите любой коммутатор Ethernet в разрыв своего Ethernet кабеля (чтобы не потерять Интернет). Подойдёт любой коммутатор с количеством портов больше или равно 3. Шаг третий: подключите плату в свободное гнездо коммутатора. Шаг четвёртый: присвойте IP адрес плате (как я Вам описал ранее), причём выбирайте адрес из диапазона 192.168.10.ххх , но при этом не используйте адрес своего компа и адрес шлюза (у Вас он 192.168.10.1), который (адрес шлюза) надо записать в поле GATEWAY_ADDRESS. Далее можно пинговать.
  3. Добрый день! Strapping pins правильно установлены? Особенно CLK_DIR, IF_SEL[0], IF_SEL[1] ?
  4. Добрый день! В Кубе довольно просто сделать новый проект под Вашу плату. Выбираете свой контроллер (STM32F407xxx), на вкладке System Core выбираете тактирование (внешний кварц); на вкладке Connectivity выбираете ETH (уточните только, как соединён физический уровень - MII или RMII - это можно прямо по плате посмотреть, если схемы нет); на вкладке Middleware and software packs выбираете LWIP и в его Configuration выбираете Ваш физический уровень - DP83848 (вкладочка Platform Settings); на вкладочке General Settings можно отключить DHCP и ввести статический IP адрес. Остальное можно для начала не трогать. "Рыба" проекта для начала вполне готова. Дальше можно посмотреть в любой готовый пример от STM с поддержкой Ethernet, как там сделано. В простейшем случае там надо вызвать что-то типа HAL_LwIP_Init() и затем в основном цикле каждые 200-300 мс опрашивать стек вызывая функции: ethernetif_input(&gnetif); и sys_check_timeouts(); В принципе всё, после этого должно пинговаться. Ну а дальше уже Вам виднее, как там с последовательным портом разобраться. А можно подсмотреть как у китайцев для CH32V307 сделано (например тут: https://github.com/openwch/ch32v307/tree/main/EVT/EXAM/ETH)
  5. 2PCB

    Добрый день! Конечно интересует. Особенно вопросы оплаты из России для юрлиц/физлиц и доставка в Россию.
  6. stm32 usb com

    Добрый день! Вопрос - для какого семейства STM32 Вы хотите установить драйвер? Для STM32F103xx в случае CDC драйвер под WIN10 не нужен
  7. Добрый день! Если еще актуально:
  8. Добрый день! До определённой всем известной даты мы всё это прекрасно использовали. Сейчас увы... Только Китай.
  9. Доброго дня всем! Сам себе отвечаю - никак. Оказывается документ RTL8238B_PoE_Controller_Host_Command_Guide описывает команды для обособленного микроконтроллера, который и должен управлять RTL8238B по закрытому проприетарному протоколу. В мусорку...
  10. Доброго дня всем! Сделал плату на RTL8238B (глядя на референс). Включил. Все напряжения в норме. Пытаюсь с RTL8238B общаться по I2C. Отсылаю (согласно документу RTL8238B_PoE_Controller_Host_Command_Guide) Global Status Get CMD, все 12 байт (0x40 0x00 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0x37). Жду 25 мс (как в документации сказано). Пытаюсь получить ответ на команду. Пробовал и чтение по текущему адресу, и sequential read. Результат неудовлетворительный. Читается явно не то. Хотя обмен по I2C проходит без ошибок (все ACK и NACK на месте), читается всегда одно и то же (конкретно: 0x00 0x00 0x1F 0x40 0xFF 0x00 0x1F 0x7F 0xFF 0x00 0x00 0x00). Вопрос - как правильно общаться с этим чудом китайского/тайваньского электронпрома? У кого-то есть положительный опыт?
  11. Добрый день! Уже решили (с Вашей помощью - MT-System :-) )
  12. at32f435 _> ADC_Dual mode +DMA

    Добрый день! А вот это не смотрели? https://www.arterychip.com/en/support/index.jsp?index=2 (AN0011) Там правда контроллер другой, но возможно натолкнёт на мысли. Самого интересует такой режим для Artery, но пока времени нет поэкспериментировать.
  13. Судя по возвращаемому функцией "rtl8309n_port_macAbilityExt0_get" коммутатор правильно понимает страпы.
  14. Доброго дня всем! Есть проблема с запуском коммутатора RTL8304MB - 3 порта PHY и один RMII. Раньше использовали KSZ8863RLL и всё устраивало, но в свете последних событий доступны пока только Realtek. В чём суть проблемы - запускаю коммутатор на своей отладочной плате (сделана по мотивам референсного дизайна). Все страп-пины соответствуют даташиту. Питание, соединение с микроконтроллером - всё проверено. Коммутатор запускается как стэндэлон (порты PHY работают, пакеты между ними бегают), а надо с подключением микроконтроллера по RMII. Вывод RMII_LINK_STA, который согласно даташита должен отображать состояние линка на RMII, говорит что LINK_UP (на RMII). Для инициализации использую SDK от Realtek для данного (RTL8304MB) коммутатора. Делаю всё согласно SDK_API_ProgrammingGuide, однако не помогает. Чтение MiB counters для каждого порта после старта показывает, что порты с PHY нормально принимают/передают пакеты между собой, но в порт соответствующий RMII ничего не попадает. Может быть у кого-то есть опыт использования данной микросхемы, куда копать?
  15. Добрый день! Я же Вам в другой ветке предложил этот самый простой путь. Ну хорошо, вот так будет понятнее: STM32Cube\Repository\STM32Cube_FW_H7_V1.10.0\Projects\STM32H743I-EVAL\Applications\LwIP\LwIP_HTTP_Server_Socket_RTOS\EWARM\ Всё, что нужно сделать, это исправить назначение пинов в соответствии с Вашей схемой. Проект рабочий. Если не можете скачать архив для Куба, то вот ссылка
  16. Речь шла про Ethernet в цитируемой фразе.
  17. Привет! Без MPU не сделаете. Читайте примеры в CubeMX пакете для STM32H7xxx.
  18. Добрый день! Если ещё актуально: 3 года на своей плате с Tegra Jetson TX2 - 115200 8N1. MODBUS не пользовали, PTZ, радары - полёт нормальный. А дёргать ногой из Линукса (для переключения направления), конкретно для Tegra Jetson - плохая идея.
  19. На мой вкус jQuery и css вполне достаточно. Вся динамика через Ajax. Совсем одинаково во всех браузерах всё равно не получится.
  20. Доброго вечера! Как и ожидалось, народная микросхема MС34118. Проблема в том, что если выход с нее (он же вход) попробовать оцифровать - ничего хорошего не получится, потому как человеческое ухо и АЦП весьма разные сущности. Если хотите цифровой звук, придётся делать всё по другому. Простой путь - одноплатник с Линуксом прямо в панель на входной двери и много секса с настройкой программного AEC. Сложный путь (но более подходящий для серийного производства, хотя и дорогой) использование специализированных решений. Посмотрите у Microsemi (ныне купленного Microchip) их решения для уличных камер.
  21. Добрый день! Аналоговая часть домофона сделана на "народной" MC34118 ? Да и вообще о системе в целом немного подробнее опишите. Цифровая или аналоговая или гибрид того и другого? Задача тривиальна,если типовой аналоговый домофон - надо следовать указаниям в документации по настройке. Если что-то своё сделали - то сложнее.
  22. Добрый день! В аттаче файлы с функциями доступа к регистрам по SPI. У меня управляющий контроллер STM32F051, инициализация модуля SPI для него, при тактовой частоте 25 МГц. Удачи! KSZ9897_MMD.zip
  23. Добрый день! Прошу прощения, не сразу отвечаю, может быть неактуально уже? Для Indirect регистров написал свои подпрограмки, если нужно выложу. Там довольно не очевидные вещи, плохо (или совсем никак) описанные в даташите.
  24. LwIP link up/down

    Вот как раз у PHY обычно есть прерывания для события изменения состояния линка (например у KSZ8091 это регистр 0x1B). Заводите выход прерывания от PHY на ногу контроллера, ловите прерыание, шлёте семафор и отрабатываете callback функцию LwIP.
  25. Да, в файле lwipopts.h должно быть определено #define DEFAULT_RAW_RECVMBOX_SIZE 3 //need for RAW sockets (например)
×
×
  • Создать...