stm32f407 网卡通信

2019-07-21 05:09发布


现在有两块 stm32f407 的开发板, 网卡都是 dp83848 的 ,RMII 模式通信 , 一块是内部时钟提供50M时钟源, 一块是外部50M 有源晶振作为网卡时钟源。

结果, 同一个 ping_demo 例程, 第一块用内部时钟给网卡提供时钟 的就可以 ping 通, 第二块 外部 50M 有源晶振提供时钟的就 ping 不同。
不解, 利用 50M外部晶振需要修改什么吗?

求大神指点啊!!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
song19881218
1楼-- · 2019-07-21 08:49
搜一下这个PHY_CLOCK_MCO,也许你就会明白了,这个是选择内部或者外部时钟的预编译选项
honghongbuqi
2楼-- · 2019-07-21 14:38
选择了 RMII_MODE 模式, 我用 外部 50 M 有源晶振提供网卡时钟的话, 下面这段代码是不是需要进行修改啊?

 // 配置 A8 输出时钟信号
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
  GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL ;  
  GPIO_Init(GPIOA, &GPIO_InitStructure);  

  RCC_MCO1Config(RCC_MCO1Source_PLLCLK,RCC_MCO1Div_2); 
  SYSCFG_ETH_MediaInterfaceConfig(SYSCFG_ETH_MediaInterface_RMII);
tangqilin
3楼-- · 2019-07-21 19:20
RCC_MCO1Config(RCC_MCO1Source_PLLCLK,RCC_MCO1Div_2); 这句应该不需要吧,还有ETH_RMII_REF_CLK配置AF11
honghongbuqi
4楼-- · 2019-07-21 22:54
 精彩回答 2  元偷偷看……
tangqilin
5楼-- · 2019-07-21 23:18
就是这样

一周热门 更多>