接着上篇博客话题,继续我的项目总结,上篇讲到出现了,error:A1586E:  Bad operand types(UnDefOT,Constant) for operator(,按照前面提到的方法,编译已经通过,终于可以安安心心地把程序下载到板子上了。用STM32CubeMX配置的过程如下:

配置以太网接口的一些问题


配置以太网接口的一些问题


配置以太网接口的一些问题

我期待地等了一分钟,发现板子毫无反应,以太网接口亮都不亮,网线是插了又拔,拔了又插,电源是开了又关,关了又开,板子就是毫无反应。然后拿出硬件原理来对照发现配置中少了一个复位引脚,如果不对接口复位,以太网接口是无法工作的,于是对配置进行了如下修改:

配置以太网接口的一些问题

硬件修改完毕之后,在程序也要做一定的修改,在static void low_level_init(struct netif *netif)这个函数中,我们要加一段复位代码如下所示:

 /* USER CODE BEGIN MACADDRESS */
 HAL_GPIO_WritePin(ETH_RESET_GPIO_Port, ETH_RESET_Pin, GPIO_PIN_RESET);      //复位
for(x=0;x<4000;x++)
{
y++;
}
HAL_GPIO_WritePin(ETH_RESET_GPIO_Port, ETH_RESET_Pin, GPIO_PIN_SET);           //复位结束
  /* USER CODE END MACADDRESS */

编译之后,下载到板子中,发现以太网接口亮了。我觉得这一切应该可以圆满结束了,一切就绪准备ping一下,发现是我想多了,板子亮了,但依然无法工作,还是有坑,这些坑会在后面的博客中继续更新。


相关文章:

  • 2022-12-23
  • 2021-12-10
  • 2022-01-08
  • 2021-05-09
  • 2021-09-07
  • 2021-08-15
  • 2021-04-01
  • 2021-12-31
猜你喜欢
  • 2021-04-11
  • 2021-06-18
  • 2021-07-05
  • 2021-05-09
  • 2021-07-21
  • 2021-12-06
  • 2021-11-15
相关资源
相似解决方案