OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » vxworks下多网口使用netJobAdd的问题

共7条 1/1 1 跳转至

vxworks下多网口使用netJobAdd的问题

菜鸟
2005-12-23 01:50:00    评分

我们这个系统有三个网口,第一个网口使用mpc850的SCC实现,第二个和第三个使用CS8900实现。第二个和第三个使用相同的驱动代码。

如果三个网口同时收到广播报文,中断顺序是网口2、网口1、网口3,他们的中断都会调用netjobAdd把相应的工作添加到netTask中。netTask的处理顺序是网口2、网口2、网口1。即网口3没处理,网口2处理了两次。

修改驱动,为网口2、3的netJobAdd调用不同的处理函数,确定了网口2确实是处理了两次,网口3未处理。

如果拔掉网口2的网线,网口2收不到广播报文的时候,网口3可以正常处理。

请问哪位大虾遇到过类似问题,请多指教




关键词: vxworks     下多     网口     使用     netJobAd    

菜鸟
2005-12-23 01:52:00    评分
2楼

另外,拔掉网口1的网线,网口2仍然是处理了两次,网口3未得到处理。


菜鸟
2005-12-26 16:25:00    评分
3楼
自己顶一下

菜鸟
2005-12-27 03:56:00    评分
4楼

你的网口2和网口3接得是什么中断呢?是不是硬件上处理2得时候把3得disable了?


菜鸟
2005-12-27 22:12:00    评分
5楼

网口2、3接的中断是IRQ4和IRQ5

我曾试过在硬件上处理2或者3的时候把2和3的中断都disable了,还是不行。


菜鸟
2005-12-29 23:25:00    评分
6楼
3的中断确实是3处理了,打印出来的信息和单步跟的时候变量信息都是3的信息

菜鸟
2005-12-30 21:32:00    评分
7楼

呵呵

有趣的问题!


共7条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]