硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3884|回复: 6
收起左侧

[有问必答] 你好,目前ping可以ping通了,只是丢包严重啊 ??

[复制链接]

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
发表于 2017-2-15 22:30:56 | 显示全部楼层 |阅读模式
[blockquote]
[/blockquote]

你好,目前ping可以ping通了,只是丢包严重啊 ??

丢包严重.png


程序主程序

void main(void)
{

  ... ...


  while(1)
  {
      MX_LWIP_Process();      // 只有这个函数
   }

}



void MX_LWIP_Process(void)
{
  ethernetif_input(&gnetif);

  /* Handle timeouts */
  #if !NO_SYS_NO_TIMERS && NO_SYS
    sys_check_timeouts();
  #endif

}
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117586
QQ
发表于 2017-2-16 01:25:18 | 显示全部楼层
1. 先保证硬件没问题
2.硬件没问题的话,就集中在底层驱动接口上了。
回复

使用道具 举报

0

主题

35

回帖

35

积分

新手上路

积分
35
发表于 2017-2-16 08:49:11 | 显示全部楼层
掐指一算,楼主用的是DM83848。

前段时间用107+83848,ping挺稳定的呢。
回复

使用道具 举报

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
 楼主| 发表于 2017-2-16 09:17:16 | 显示全部楼层

回 登云钓月 的帖子

登云钓月:掐指一算,楼主用的是DM83848。

前段时间用107+83848,ping挺稳定的呢。 (2017-02-16 08:49) 
能否发上了共享一下啊 ??
回复

使用道具 举报

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
 楼主| 发表于 2017-2-16 09:18:29 | 显示全部楼层

回 eric2013 的帖子

eric2013:1. 先保证硬件没问题
2.硬件没问题的话,就集中在底层驱动接口上了。
 (2017-02-16 01:25) 
你好,硬件应该是木有什么问题的了,

底层的话,就只有驱动接口有关是吧 ?? 还有没有哪些东东有关啊 ?
回复

使用道具 举报

692

主题

3576

回帖

5677

积分

论坛元老

积分
5677
 楼主| 发表于 2017-2-17 09:47:52 | 显示全部楼层

回 hpdell 的帖子

hpdell:

你好,硬件应该是木有什么问题的了,

底层的话,就只有驱动接口有关是吧 ?? 还有没有哪些东东有关啊 ?
你好,硬件应该是木有什么问题的了,

底层的话,就只有驱动接口有关是吧 ?? 还有没有哪些东东有关啊 ?

已经搞定了,是初始化的问题了,具体如下:


你好,已经搞定了啊,硬件是没有问题,

是软件的问题,我目前使用的是CubeMX v4.19版本的工具软件来自动产生代码的

对比 CubeMX v4.16 版本自动产生的代码,发现在 low_level_init 这个里面少了如下代码:

  /**** Configure PHY to generate an interrupt when Eth Link state changes ****/
  /* Read Register Configuration */
  HAL_ETH_ReadPHYRegister(&heth, PHY_MICR, &regvalue);
  
  regvalue |= (PHY_MICR_INT_EN | PHY_MICR_INT_OE);

  /* Enable Interrupts */
  HAL_ETH_WritePHYRegister(&heth, PHY_MICR, regvalue );
  
  /* Read Register Configuration */
  HAL_ETH_ReadPHYRegister(&heth, PHY_MISR, &regvalue);
  
  regvalue |= PHY_MISR_LINK_INT_EN;
   
  /* Enable Interrupt on change of link status */
  HAL_ETH_WritePHYRegister(&heth, PHY_MISR, regvalue);


增加后运行一切稳定,目前看是这样的
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117586
QQ
发表于 2017-2-19 10:15:48 | 显示全部楼层

回 hpdell 的帖子

hpdell:你好,硬件应该是木有什么问题的了,

底层的话,就只有驱动接口有关是吧 ?? 还有没有哪些东东有关啊 ?

....... (2017-02-17 09:47) 
感谢分享解决办法。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-8-16 10:18 , Processed in 0.043170 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表