嵌入式开发者社区

标题: EMAC/mdio网络通信时接收中断无法触发 [打印本页]

作者: xx2012    时间: 2017-4-21 17:05
标题: EMAC/mdio网络通信时接收中断无法触发
对starterware下的enet程序的基础上进行了修改——将通道0设为混杂模式,然后修改了描述符的初始化部分,调试显示网络数据包已经收入接收描述符内存区,然而却主程序一直处在等待中断状态(EMAC、emac控制器、cpu中断的配置都没有修改)。
ps:之前测试的时候是能够触发接收中断,然后我对描述符的初始化部分进行了修改之后就一直无法触发接收中断,请问是否可能是内部的EMAC中断控制模块已经损坏?
如图: 文件描述:当应用软件使用一个与EMAC 保存的内部值相匹配的值去更新TXnCP 或 RXnCP 的时候,EMAC 中断被响应。然后我调试过程中发现RXnCP 的值一直无法写入(案例中EMACinit初始化会RXnCP 为0,然而我在读RXnCP是并无变化),程序执行中也无变化。

作者: Lewis    时间: 2017-4-24 13:59
不知道你为什么要去修改底层,一般不建议修改底层,具体修改了什么。芯片内部模块一般不会那么容易损坏,可以使用我们提供的网口程序测试。
作者: xx2012    时间: 2017-5-17 09:35
Lewis 发表于 2017-4-24 13:59
不知道你为什么要去修改底层,一般不建议修改底层,具体修改了什么。芯片内部模块一般不会那么容易损坏,可 ...

以太网的例程都用过了,没法用,才想要自己改底层。
发现问题在串口输出上。串口输出占用太多时间导致丢包。
作者: Lewis    时间: 2017-5-25 19:48
串口输出占用时间多,可以使能fifo,一次最多可以把16个字符填到fifo就行,这样就不用等待了




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4