OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5590|回复: 10

STM32F407的uCOSIII移植 LWIP(LAN8720) TCP连接触发硬件中断

[复制链接]

1

主题

5

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2020-1-14
在线时间
3 小时
发表于 2020-6-10 17:38:10 | 显示全部楼层 |阅读模式
2金钱
前期测试:
       1、裸机测试LWIP的TCP连接收发都是正常的。
       2、uCOSIII 移植任务线程运行正常。
遇到问题:
       1、将LWIP和uCOSIII 结合就出问题了,系统运行正常,底层也能ping通,但是一建立tcp客户端连接 系统就死了,进入HardFault_Handler硬件中断错误。

求大神指点迷津。

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

2

主题

172

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3141
金钱
3141
注册时间
2014-11-29
在线时间
183 小时
发表于 2020-6-10 21:08:53 | 显示全部楼层
lutigers
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2020-6-11 01:24:19 | 显示全部楼层
帮顶
回复

使用道具 举报

0

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
155
金钱
155
注册时间
2014-11-24
在线时间
31 小时
发表于 2020-6-11 09:29:59 | 显示全部楼层
不科学。ping其实也是数据交互,是arp层的事情。也是出于tcpip层之上的内容。和你自己写的APP其实是同一层级,只是内部封装了。
能ping,就说明了,你的板子可以正常接收网络发过来的数据,也能正常运行,正常发送数据到网络。

所以,我只能判断是你自己的APP程序写的有问题。
[color=Blue]承接TFT人机界面项目外包:http://stm8.taobao.com[/color] [color=Red]承接仪表、工业控制、通信类项目外包[/color] STM8学习群:191240143
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2020-1-14
在线时间
3 小时
 楼主| 发表于 2020-6-11 10:25:01 | 显示全部楼层
honami520 发表于 2020-6-11 09:29
不科学。ping其实也是数据交互,是arp层的事情。也是出于tcpip层之上的内容。和你自己写的APP其实是同一层 ...

嗯呢 就是比较奇怪,我分开验证都是正常的,你说APP有问题,我切换成不用uCOSIII系统,裸机单线程处理,tcp_server服务器app,收发都是正常的。我再研究研究
回复

使用道具 举报

93

主题

746

帖子

1

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1849
金钱
1849
注册时间
2012-9-16
在线时间
286 小时
发表于 2020-6-11 13:21:10 | 显示全部楼层
UDP可以吗?
纵浪大化中,不喜亦不惧;应尽便须尽,无复独多虑!
回复

使用道具 举报

0

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
155
金钱
155
注册时间
2014-11-24
在线时间
31 小时
发表于 2020-6-11 16:59:34 | 显示全部楼层
木头人Jack 发表于 2020-6-11 10:25
嗯呢 就是比较奇怪,我分开验证都是正常的,你说APP有问题,我切换成不用uCOSIII系统,裸机单线程处理,t ...

难道是你的UCOS没有移植好?是这样的,我也是ucos+LWIP的,程序里面跑了10多个任务,网络相关的主机、从机加起来都超过6个。都是好好的。

是不是你的sys_arch.c里面的函数没有移植好。里面有的需要开启保护、互斥什么的。可能是这个里面没处理好,导致你ping的话正常,多线程运行后就不行了。
[color=Blue]承接TFT人机界面项目外包:http://stm8.taobao.com[/color] [color=Red]承接仪表、工业控制、通信类项目外包[/color] STM8学习群:191240143
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2020-1-14
在线时间
3 小时
 楼主| 发表于 2020-6-15 14:38:22 | 显示全部楼层
honami520 发表于 2020-6-11 16:59
难道是你的UCOS没有移植好?是这样的,我也是ucos+LWIP的,程序里面跑了10多个任务,网络相关的主机、从 ...

谢谢
好的 是的,我重新一步一步检查了,现在可以运行了。但是只能跑一个服务,跑了两个就系统死不运行了。应该是堆栈没设置好。你这边的工程方便提供吗?我想对比一下你的这么多服务的运行。linux_hj3450@126.com
回复

使用道具 举报

1

主题

5

帖子

0

精华

新手入门

积分
16
金钱
16
注册时间
2020-1-14
在线时间
3 小时
 楼主| 发表于 2020-6-15 14:39:15 | 显示全部楼层

没试,我抽空也验证一下,现在tcp的服务可以运行了
回复

使用道具 举报

0

主题

2

帖子

0

精华

初级会员

Rank: 2

积分
78
金钱
78
注册时间
2019-12-10
在线时间
25 小时
发表于 2020-8-10 11:57:38 | 显示全部楼层

@正点原子 哪里下载UCOSIII-LWIP-探索者开发板的例程?
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手上路

积分
38
金钱
38
注册时间
2015-5-1
在线时间
5 小时
发表于 2021-3-31 15:28:53 | 显示全部楼层
木头人Jack 发表于 2020-6-15 14:38
谢谢
好的 是的,我重新一步一步检查了,现在可以运行了。但是只能跑一个服务,跑了两个就系统死不运行 ...

你好  你的问题解决了为吗? 我也遇到类似的问题。
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-28 07:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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