1.原理
以FL2440为研究对象,DM9000A支持8位 16为模式,内部有64个寄存器、SRAM等,分别控制其工作,对于其寄存器的读写依靠地址端口和数据端口来控制,在系统移植的时候根据硬件连接设置:
#define S3C24XX_PA_DM9000 0x20000300
#define S3C24XX_VA_DM9000 0xE0000000
static struct resource s3c_dm9000_resource[] = {
[0] = {
.start = S3C24XX_PA_DM9000, .end = S3C24XX_PA_DM9000+ 0x3,
.flags = IORESOURCE_MEM
}, //定义了地址端口物理地址
[1]={
.start = S3C24XX_PA_DM9000 + 0x4, //CMD pin is A2
.end = S3C24XX_PA_DM9000 + 0x4 + 0x7c,
.flags = IORESOURCE_MEM
}, //定义了数据端口物理地址
&nb

本文详细介绍了DM9000A在FL2440平台上的工作原理,包括其地址端口和数据端口的配置、寄存器的读写方法以及对PHY寄存器的16位读写操作。同时,文章讨论了如何通过DM9000A进行高效的数据传输,如SRAM的写入和读取,以及DMA传输的优势。
最低0.47元/天 解锁文章
2663

被折叠的 条评论
为什么被折叠?



