历时大半年,DM9000模块终于工作正常了.
为此,把LWIP源码分析过了一遍,不敢说熟悉,只能说有所了解了.
过程:
从网上买了一块DM9000AEP,接到开发板的剩余引脚上,参照DE2板网上的例程dm9000.c写了自己的驱动程序.
DM9K能产生接收中断后,证明了裸机情况下芯片能正常工作.
接下来,根据焦海波大侠对LWIP的译作,把LWIP从硬件中断接收到包直到上传到上层,最后通过套接字获取数据的过程走了一遍.
最后,通过AVALON总线挂载自己写的通信模块,将网络数据转换发出去。
虽然很多人说学nios ii没用。但这个过程中,我至少了解了TCP/IP协议,了解了UCOS操作系统信号量,邮箱,进程,中断管理方面的内容,同时参照ALTERA提供的例程,第一次看清楚了硬件操作映射成CPU可操作的地址的过程,这也是硬件与软件的交会处,驱动程序的必经路,最后感觉使用AVALON总线,对于集成各种模块的确是很便利。
以上,欢迎拍砖。 |