网卡采用的是DM9000,工程代码中,采用STM32的FSMC接口来驱动DM900网卡,DM9000是并口网卡,引脚多,但是速度快,也可以采用其他网卡,SPI协议的、UART协议的等。 比如:ENC28J60。 因为主要是讲LWIP协议栈的移植,所以网卡相关的代码就没有细说(需要准备一个网卡可以正常通信的工程,再移植)。 工程源码、LWIP资料包下载地址...
DM9000_WriteReg(DM9000_IMR, IMR_PAR);// 关闭网卡中断 DM9000->REG = DM9000_MWCMD;// 发送此命令后就可以将要发送的数据搬到DM9000 TX SRAM中 q = p; // 向DM9000的TX SRAM中写入数据,一次写入两个字节数据 // 当要发送的数据长度为奇数的时候,我们需要将最后一个字节单独写入DM9000的TX SRAM中 while...
网卡采用的是DM9000,工程代码中,采用STM32的FSMC接口来驱动DM900网卡,DM9000是并口网卡,引脚多,但是速度快,也可以采用其他网卡,SPI协议的、UART协议的等。 比如:ENC28J60。 因为主要是讲LWIP协议栈的移植,所以网卡相关的代码就没有细说(需要准备一个网卡可以正常通信的工程,再移植)。
地址线数据线公用一线,地址线与数据线可以分时复用,总线转换周期就是指总线在这两种状态间切换需要的延时,防止冲突。 这一句话, 根据 安富莱-V5 开发板的原理图, DM9000 是没有地址线的啊, 它就是用的 分时复用 啊, 即使它也是 SRAM. 想到这里我将时序修改为: p.FSMC_AddressSetupTime = 6; p.FSMC_Addre...
DM9000_Reset(void){DM9000_RST = 0;//DM9000硬件复位delay_ms(10);DM9000_RST = 1; //DM9000硬件复位结束delay_ms(100 普罗旺斯的薰衣草2019-06-27 04:35:34 uboot移植dm9000无法获取IO BUS的位数 我在韦东山的S3C2440开发板上移植DM9000时ping主机ping不同,是因为无法获取IO BUS的位数,但不知道问题出现在...
网卡采用的是DM9000,工程代码中,采用STM32的FSMC接口来驱动DM900网卡,DM9000是并口网卡,引脚多,但是速度快,也可以采用其他网卡,SPI协议的、UART协议的等。 比如:ENC28J60。 因为主要是讲LWIP协议栈的移植,所以网卡相关的代码就没有细说(需要准备一个网卡可以正常通信的工程,再移植)。
DM9000有三类寄存器,数据寄存器、状态寄存器和控制寄存器。 常用到的寄存器有6个: (1)网络控制寄存器NCR 作用:对DM9000芯片的网络相关功能的配置,各位解释如下: (2)网络状态寄存器NSR 作用:寄存器的各位表示网络连接状态,通过这些标志位判断芯片的状态,写驱动的时候,一般会用到连接状态标志位,和发送完成标志位等。各位...
PHY是DM9162和DM9000,DM9162是正常的,无论是Ping还是客户端服务器都没问题,现在的问题是DM9000,直接...
网口芯片选型:W5100,W5500,CH9121,DM9000,DM9000A,ENC28J60,LAN91C111,RTL8019,LAN7820。 很多STM32内部不带以太网,带以太网功能的内部只有以太网MAC,没有PHY。因此需要外扩以太网芯片。对于不带以太网的STM32,外扩常用的芯片有SPI接口的ENC28J60和并口的DM9000芯片。对于带以太网的STM32还需要外扩一片PHY芯片。
DM9000A片选,低电平有效 35IOR FSMC_NOE DM9000A读命令控制,低有效 36IOW FSMC_NWE DM9000A写命令控制,低有效 32CMD FSMC_A2 DM9000A数据命令选择,高数据,低命令 34INT 上拉到3.3V,再接STM32通用IO 中断请求引脚,高有效 38、39 接STM32通用IO LED指示灯,分别是通信速率指示,连接状态指示 基本知识点1——何...