tag 标签: 间接总线接口模式

相关博文
  • 热度 22
    2013-2-27 10:10
    890 次阅读|
    0 个评论
           W5200是WIZnet公司研发的一款高速SPI以太网控制芯片,内嵌全套硬件TCP/IP协议栈。它支持ADSL连接 (支持PPPOE协议 带PAP/CHAP验证),支持8个独立的端口(sockets)同时连接,内部32K字节存储器作TX/RX缓存。多种指示灯信号输出(Full/Half duplex. Link, Speed)。休眠模式及网络奂醒也是其很有特色的功能。下面继续给大家介绍如何使用W5200的间接总线接口模式? 驱动程序移植指引 首先,我 们 要定 义 W5200 的基地址 定 义它为 ‘__DEF_IINCHIP_MAP_BASE__’ 方法 : #define __DEF_IINCHIP_MAP_BASE__ 0x8000   如果它的基地址是大于0xffff, 以下的部分就要改变一下.   static u32 SBUFBASEADDRESS ; static u32 RBUFBASEADDRESS ; u32 getIINCHIP_RxBASE(u8 s) u32 getIINCHIP_TxBASE(u8 s) u8 IINCHIP_WRITE(u32 addr, u8 data) u8 IINCHIP_READ(u32 addr)   W5200 界面 用户使用不同的MCU会有不同‘__DEF_IINCHIP_BUS__’的基本值. 用户是需要在间接模式和SPI模式选择其中一个模式来实现硬件界面   #define __DEF_IINCHIP_INDIRECT_MODE__ 1 #define __DEF_IINCHIP_SPI_MODE__   2 #define __DEF_IINCHIP_BUS__            __DEF_IINCHIP_INDIRECT_MODE__   W5200 初始化 1)    设置ADDR 为0x0000。(写入0x00值到0x0000地址) *((volatile uint8*)(0x0000)) = 0x00;   2)    W5200硬件重设   3)    设置W5200为间接的接口模式和地址自动增加功能 MR  0x03;   4)    使用软件重设将W5200初始化. MR  0x80;   5)    设置网络配置 以下是要配置的基本网络的配置 - 网关地址寄存器 - 源硬件地址寄存器 - 子网掩码寄存器 - 源IP地址寄存器   ex) 网关地址要设置为192.168.0.1 GAR  ;   使用以上的方法来配置其他的寄存器 (源硬件地址寄存器, 子网掩码寄存器, 源IP地址寄存器)   6)    设置RX寄存器和TX寄存器的内存大小.你可以分配每一个信道的内存大小   7)    当你完全第6 步, 你可以得到W5200的ICMP应答消息. 这代表了,你可以用W5200的IP 地址去 “Ping” 来得到自W5200的回复.   感谢关注! 相关内容: 如何使用W5200的间接总线接口模式(一) (http://blog.iwiznet.cn/?p=3007)      
  • 热度 18
    2013-2-27 10:06
    826 次阅读|
    0 个评论
           W5200是WIZnet公司研发的一款高速SPI以太网控制芯片,内嵌全套硬件TCP/IP协议栈。它支持ADSL连接 (支持PPPOE协议 带PAP/CHAP验证),支持8个独立的端口(sockets)同时连接,内部32K字节存储器作TX/RX缓存。多种指示灯信号输出(Full/Half duplex. Link, Speed)。休眠模式及网络奂醒也是其很有特色的功能。下面继续给大家介绍如何使用W5200的间接总线接口模式? 驱动程序移植指引 首先,我 们 要定 义 W5200 的基地址 定 义它为 ‘__DEF_IINCHIP_MAP_BASE__’ 方法 : #define __DEF_IINCHIP_MAP_BASE__ 0x8000   如果它的基地址是大于0xffff, 以下的部分就要改变一下.   Refer to types.c static u32 SBUFBASEADDRESS ; static u32 RBUFBASEADDRESS ; u32 getIINCHIP_RxBASE(u8 s) u32 getIINCHIP_TxBASE(u8 s) u8 IINCHIP_WRITE(u32 addr, u8 data) u8 IINCHIP_READ(u32 addr)   W5200 界面 用户使用不同的MCU会有不同‘__DEF_IINCHIP_BUS__’的基本值. 用户是需要在间接模式和SPI模式选择其中一个模式来实现硬件界面   Refer to types.h #define __DEF_IINCHIP_INDIRECT_MODE__ 1 #define __DEF_IINCHIP_SPI_MODE__   2 #define __DEF_IINCHIP_BUS__            __DEF_IINCHIP_INDIRECT_MODE__   W5200 初始化 1)    设置ADDR 为0x0000。(写入0x00值到0x0000地址) *((volatile uint8*)(0x0000)) = 0x00;   2)    W5200硬件重设   3)    设置W5200为间接的接口模式和地址自动增加功能 MR  0x03;   4)    使用软件重设将W5200初始化. MR  0x80;   5)    设置网络配置 以下是要配置的基本网络的配置 - 网关地址寄存器 - 源硬件地址寄存器 - 子网掩码寄存器 - 源IP地址寄存器   ex) 网关地址要设置为192.168.0.1 GAR  ;   使用以上的方法来配置其他的寄存器 (源硬件地址寄存器, 子网掩码寄存器, 源IP地址寄存器)   6)    设置RX寄存器和TX寄存器的内存大小.你可以分配每一个信道的内存大小   7)    当你完全第6 步, 你可以得到W5200的ICMP应答消息. 这代表了,你可以用W5200的IP 地址去 “Ping” 来得到自W5200的回复.   感谢关注! 相关内容: 如何使用W5200的间接总线接口模式(一) (http://blog.iwiznet.cn/?p=3007)
  • 热度 21
    2012-12-18 16:28
    952 次阅读|
    0 个评论
      W5200是WIZnet公司研发的一款高速SPI以太网控制芯片,内嵌全套硬件TCP/IP协议栈。它支持ADSL连接 (支持PPPOE协议 带PAP/CHAP验证),支持8个独立的端口(sockets)同时连接,内部32K字节存储器作TX/RX缓存。多种指示灯信号输出(Full/Half duplex. Link, Speed)。休眠模式及网络奂醒也是其很有特色的功能。下面将介绍如何使用W5200的间接总线接口模式。 间接总线接口模式只需要使用2位地址线和8位的数据线跟/CSn, /RDn, /WRn连接去MCU就可以使用。 以下是间接总线接口模式下相关的寄存器. 如何将W5200间接总线接口模式初始化 1. 在地址为0×0000写入0×00和这个数据要保持到硬件重置完成为止。就跟以下的方法一样 A. 因为ADDR0和ADDR1是共同使用SPD和DUP的引脚 *((volatile uint8*)(0×0000)) = 0×00; 2. 硬件重置的方法 A.最少要给RSTn引脚2us的低电位(0) B.之后给RSTn引脚高电位(1),给它150ms的等候 3.在MR寄存器中写入0×01(IND位就会给规定) A.如果你要使用AI,你可以在MR寄存器中写入0×03的。(AI和IND位就会给规定) 4. 当已经写入MR寄存器给AI和IND位给规定了,就要写入0×80到MR寄存器。 (W5200就会软件重置) 如何读写内部寄存器和内部TX / RX记忆 把地址写入IDM_AR01中就可以使用读写功能 读或写IDM_DR. 如果要将数据读写功能可以放到顺序的地址中,就需要把MR寄存器中的AI位给规定了.在这个情况下, 用户可以把程序1做一次就可以. 因为每次要读写IDM_DR和IDM_AR的时候, 那个值就会自动加1. 所以IDM_DR其他的数据就会放到后面的地址中去读写了。   相关文档: iEthernet W5200数据手册 W5200和W7200的休眠模式及唤醒模式
  • 热度 12
    2012-12-18 16:15
    1268 次阅读|
    0 个评论
      W5200是WIZnet公司研发的一款高速SPI以太网控制芯片,内嵌全套硬件TCP/IP协议栈。它支持ADSL连接 (支持PPPOE协议 带PAP/CHAP验证),支持8个独立的端口(sockets)同时连接,内部32K字节存储器作TX/RX缓存。多种指示灯信号输出(Full/Half duplex. Link, Speed)。休眠模式及网络奂醒也是其很有特色的功能。下面将介绍如何使用W5200的间接总线接口模式。 间接总线接口模式只需要使用2位地址线和8位的数据线跟/CSn, /RDn, /WRn连接去MCU就可以使用。 以下是间接总线接口模式下相关的寄存器. 如何将W5200间接总线接口模式初始化 1. 在地址为0×0000写入0×00和这个数据要保持到硬件重置完成为止。就跟以下的方法一样 A. 因为ADDR0和ADDR1是共同使用SPD和DUP的引脚 *((volatile uint8*)(0×0000)) = 0×00; 2. 硬件重置的方法 A.最少要给RSTn引脚2us的低电位(0) B.之后给RSTn引脚高电位(1),给它150ms的等候 3.在MR寄存器中写入0×01(IND位就会给规定) A.如果你要使用AI,你可以在MR寄存器中写入0×03的。(AI和IND位就会给规定) 4. 当已经写入MR寄存器给AI和IND位给规定了,就要写入0×80到MR寄存器。 (W5200就会软件重置) 如何读写内部寄存器和内部TX / RX记忆 把地址写入IDM_AR01中就可以使用读写功能 读或写IDM_DR. 如果要将数据读写功能可以放到顺序的地址中,就需要把MR寄存器中的AI位给规定了.在这个情况下, 用户可以把程序1做一次就可以. 因为每次要读写IDM_DR和IDM_AR的时候, 那个值就会自动加1. 所以IDM_DR其他的数据就会放到后面的地址中去读写了。   相关文档: iEthernet W5200数据手册 W5200和W7200的休眠模式及唤醒模式