STM32F107以太网做串口服务器卡顿问题

2019-12-27 18:39发布

大家好,我们公司用STM32F107(具有以太网MAC控制器)+外置PHY的形式做一个串口服务器,这个串口服务器通过TCP/IP和PC、WEB端通信,将数据和控制信息通过CAN或RS485的形式转发到下位机。这个串口服务器使用STM32F107+lwIP+ucos,我是刚入职负责别人的这个项目,它搞的代码我用不了我就通过神州IV号开发板的例程进行测试。
例程是STM32F107裸跑lwip,板子和电脑直连时ping板子的时间是17ms,而我主机ping路由器的网关也就2MS。我觉得这个STM32F107是不是太慢了?
作上述测试的原因:
板子下载了神州官方的例程,PC和开发板直连时能ping通(收发数据),当板子接入交换机时ping都ping不通,个人怀疑是芯片处理不过来导致以太网相关的模块停止工作了。
回到家后,我通过python写了个小脚本,通过UDP的方式不断向板子发送数据包(数据为4000字节),如果每隔50ms或25ms发送数据包时,PC和板子是能ping通的,抓包也能
看到数据的收发过程。如果每隔10ms(<20ms)发送数据包时最开头的ping有应答,后面的ping包都没有收到应答,并且发送出去的udp包也没有抓到板子的任何应答。我该怎么办?
我觉得这应该换处理速度更高的芯片,第二个就是复位以太网接口,请问我该怎么样复位呢?他是接收的包过多我处理不过来导致的卡死行为。我该怎么处理?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
gwj221
1楼-- · 2019-12-28 00:04
 精彩回答 2  元偷偷看……
youkebing
2楼-- · 2019-12-28 05:39
udp的话,其实不用lwip,直接自己写一个速度应该不慢,而且容易查问题
ericdai
3楼-- · 2019-12-28 06:36
用带linux的板子吧 ,又不贵,牛刀杀鸡,简单直接
451006071
4楼-- · 2019-12-28 12:31
我们公司板子早都出来了,用的就是STM32F107,神州的官方程序貌似有点小问题。目前的方案就是STM32F107+UCOS+LWIP。。。哎。。
denike
5楼-- · 2019-12-28 13:55
没遇到过楼主的问题!!107和429都使用过 完全没问题,估计是代码问题
451006071
6楼-- · 2019-12-28 19:36
 精彩回答 2  元偷偷看……

一周热门 更多>