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

Не проходит инициализация контроллера Ethernet, STM32F407VET6

Всем привет. Имеется китайский боард на STM32F407VET6. Пытаюсь запустить на нем Ethernet в режиме MII. Работаю в CubeIDE, библиотеки HAL. Проблема в следующем: куб формирует функцию MX_ETH_Init() для инициализации контроллера Ethernet, но она не проходит. Как только устанавливается разрешение тактирования Ethernet (__HAL_RCC_ETHMAC_CLK_ENABLE()) в регистре ETH_DMABMR устанавливается в "1" бит SR (программный сброс), который должен автоматически очиститься после сброса. Но он не очищается и программа залетает в Error_Handler. Может кто сталкивался с подобным? И еще, часть выводов MII на плате подключены к различной периферии (Flash, LED), может ли это оказывать влияние на процесс инициализации?

Изменено пользователем haker_fox
Добавил название МК к теме для лучшего поиска.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как вариант:

На некоторых демо платах нет проброса пина прерывания от физики до МК. Примеры инициализации иногда генерятся с учётом этого сигнала. Либо бросить перемычку, либо цикл опроса.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Надо смотреть схему, без этого ничего сказать нельзя

с указанным процессором и его ГД версией у меня эзернет работает на двух разных ПХУ успешно

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...