你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

st-img
chrome
st-img
firefox
st-img
safari
st-img
ie8及以上
shequ.stmicroelectronics.cn
  • ST意法半导体官网
  • STM32中文官网
  • ST全球论坛
登录/注册
  • 首页
  • 技术问答
  • 话题
  • 资源
  • 创客秀
  • 视频
  • 标签
  • 积分商城
  • 每日签到
大鱼飞呀飞

大鱼飞呀飞

 

回答数 0 关注数 0
关注 私信
  • 动态99
  • 提问
  • 回答0
  • 创客秀 0
  • 分享 0
  • 关注0
15 回答

STM32F207+DP83848+Lwip如何不插网线初始化,之后插入网线正常...

STM32F2
图涂途凃 图涂途凃 回答时间: 2017-12-7 10:36

我在 STM32F107 上已经实现了,和你的问题描述有点不一样:不插网线初始化LWIP,臣妾做不到...   插入网线正常通信,臣妾做到了这个是:不插网线开机,定时5s不断初始化网口,一旦插上网线并且网口初始化成功后再初始化LWIP。之后就可以正常运行,热插拔也没问题。 项目上正在使用,目前没什么问题。 用了ucosii 的官方例程或者大神们移植的程序 首先在BSP_Init() 中找到 ETH_BSP_Config();再找到 Ethernet_Configuration();(程序中我注释了,原因是把这个函数放到任务中定时调用) void ETH_BSP_Config (void) {     /* Configure the GPIO ports for ethernet pins */     ETH_GPIO_Config();     /* Config NVIC for Ethernet */     ETH_NVIC_Config();     /* Configure the Ethernet peripheral */ //  Ethernet_Configuration(); } 打开 Ethernet_Configuration();找到 ETH_Init(&ETH_InitStructure, PHY_ADDRESS);这个函数是初始化网口的,是否连接上网口这个函数返回值不同 用 ETH_Link_Flage 在任务中判断网口是否初始化成功(是否插上网线),连上了就删除初始化网口的任务。以后不管插拔网线都可以连上 建议去仔细看看 uint32_t ETH_Init(ETH_InitTypeDef* ETH_InitStruct, uint16_t PHYAddress) 中干了什么!!! void Ethernet_Configuration (void) {     .     .     .     .     /* Configure Ethernet */ ETH_Link_Flage = ETH_Init(&ETH_InitStructure, PHY_ADDRESS);     /* Enable the Ethernet Rx Interrupt */     ETH_DMAITConfig(ETH_DMA_IT_NIS | ETH_DMA_IT_R, ENABLE); } 下面是初始话网口的任务 void Net_Init (void *pdata) {         extern u8 ETH_Link_Flage         while(1)         {                 if(ETH_Link_Flage == 1)                 {                         LwIP_Init();                         LwIP_Pkt_Sem = OSSemCreate(0);                         OSTaskCreate(LwIP_Pkt_task, (void *)NULL, (OS_STK *)&LwIP_Pkt_Task_STK[LwIP_Pkt_STK_Size-1], LwIP_Task_PRIO);                         OSTaskDel(NetInit_TASK_PRIO);                 }                 else                 {                         Ethernet_Configuration();                 }                 OSTimeDlyHMSM(0,0,5,0);         } }

赞0
13 回答

STM32F207+DP83848网线插入问题

STM32F2
我不怕 我不怕 回答时间: 2017-6-9 10:01

也遇到了同样的问题,和楼主一样,我也再主循环里添加了网络连接状态轮询,如果网络连接上了并且之前没有成功初始化过则重新初始化,但还是没能解决这个问题,不知道具体要重新初始化哪些东西?求救呀

赞0
大鱼飞呀飞 大鱼飞呀飞


阅读作者更多的帖子

所在话题

参与活动

  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    网络 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16
  • 滴滴押注社区团购,明确“投入不设上限,要做市场第一”

    线下 2020-10-16