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

STM32F4discovery + ethernet DP83848

т.к. плата не имеет PG11 PG13 PG14, то переназначил на PB11 PB12 PB13

 /* Configure PG11, PG14 and PG13 */
//  GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_11 | GPIO_Pin_13 | GPIO_Pin_14;
//  GPIO_Init(GPIOG, &GPIO_InitStructure);
//  GPIO_PinAFConfig(GPIOG, GPIO_PinSource11, GPIO_AF_ETH);
//  GPIO_PinAFConfig(GPIOG, GPIO_PinSource13, GPIO_AF_ETH);
//  GPIO_PinAFConfig(GPIOG, GPIO_PinSource14, GPIO_AF_ETH);
  
  GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13;
  GPIO_Init(GPIOB, &GPIO_InitStructure);
  GPIO_PinAFConfig(GPIOB, GPIO_PinSource11, GPIO_AF_ETH);
  GPIO_PinAFConfig(GPIOB, GPIO_PinSource12, GPIO_AF_ETH);
  GPIO_PinAFConfig(GPIOB, GPIO_PinSource13, GPIO_AF_ETH);

 

вопрос- не могу в коде найти, где эти ноги дергаются? Т.е. надо же дефайн тоже поменять на порты PB. Так же?

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


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

т.к. плата не имеет PG11 PG13 PG14, то переназначил на PB11 PB12 PB13

 /* Configure PG11, PG14 and PG13 */
  
  GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13;
  GPIO_Init(GPIOB, &GPIO_InitStructure);
  GPIO_PinAFConfig(GPIOB, GPIO_PinSource11, GPIO_AF_ETH);
  GPIO_PinAFConfig(GPIOB, GPIO_PinSource12, GPIO_AF_ETH);
  GPIO_PinAFConfig(GPIOB, GPIO_PinSource13, GPIO_AF_ETH);

 

вопрос- не могу в коде найти, где эти ноги дергаются? Т.е. надо же дефайн тоже поменять на порты PB. Так же?

Нигде не дёргаются. GPIO_AF_ETH - это включение альтернативной функции этих ног. Т.е. MAC-контроллер их сам дёргает.

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


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

т.е. достаточно просто переписать GPIO инициализацию как у меня и должно работать? Только пинг не проходит.

Что еще надо сделать? IP поменял, режим RMII включил. Что еще забыл?

 

Увидел, что для 100-пин проца нет никаких альтернатив, кроме ног PB 11 12 13.

Что-то еще у меня сидит.

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


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

удалось запустить платку в режиме вебсервера. Но только если адрес DHCP получает плата. Как только закомментировал строку USE_DHCP, сразу статический адрес не хочет присваиваться. И ничего не работает.

Может есть у кого проект рабочий?

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


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

Как только закомментировал строку USE_DHCP, сразу статический адрес не хочет присваиваться. И ничего не работает.

А зачем вы ее закоментировали? Не проще бы назначить ее нулем?

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


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

там же дальше макрос идет, если DHCP, то выполняется определенная часть кода. Поэтому закомментил.

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


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

вот

http://c2n.me/iLipKn

четко написано, что либо раскомментируйте DHCP, либо закоментируйте.

Что не так?

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


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

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

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

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

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

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

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

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

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

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