-
w5300_FPGA
2016-07-12 10:31:50w5300_FPGA -
W5300芯片FPGA驱动
2020-03-28 09:02:11基于Wiznet公司的W5300以太网解决方案,完成以太网通讯设计。该项目代码基于浩然电子的HS-NM5300A模块调试,可直接使用。 (Based on Wiznet's W5300 Ethernet solution, complete the Ethernet communication design... -
W5300以太网芯片中文手册
2020-09-18 13:32:25W5300以太网芯片中文手册 -
W5300使用配置总结
2019-01-09 09:35:54W5300使用配置总结,经测试可用。 -
w5300程序源码
2014-06-23 09:42:01w5300程序。以太网通信模块,收发数据 -
W5300中文手册
2016-11-03 08:31:28W5300在很多嵌入式系统中都非常适用,包括: 家庭网络设备:机顶盒,PVR和数字多媒体设备。 串口转以太网:访问控制,LED显示等 并行接口转以太网:POS/微型打印机,复印机 USB转以太网:存储设备,网络打印机 ... -
w5300原理图
2012-03-08 23:03:34w5300原理图,便于需要了解W5300电路图原理 -
w5300datasheet
2012-03-09 21:00:48w5300 一款串口转rf45的芯片,这里是w5300的datasheet 资料详细,希望那个对大家有所帮助! -
W5300底层驱动配置总结
2019-02-16 22:17:48W5300集成TCP/IP协议栈芯片,底层驱动程序配置总结。服务器和客户端配置 -
stm32F4+w5300
2018-04-29 10:26:10stm32f4 驱动 w5300 固件库例程 接口使用8/16位数据总线 以太网 -
W5300资料和FPGA控制源码.rar
2020-04-07 10:59:44W5300资料和FPGA控制源码,用FPGA控制W5300实现TCP(host)和UDP通信。 W5300是一个0.18μm的CMOS技术的单芯片,集成了10/100以太网控制器、MAC和TCP/IP。W5300专用于互联网嵌入式应用,它具有易于安装、稳定、高... -
fpga +W5300控制流程设计程序
2018-11-24 19:41:28基于FPGA的W5300控制流程设计,是基于ise的软件设计,设计芯片为xillinx K7系列 使用网口调试助手测试数据收发没有问题 代码有具体注释以及chipscope抓仿真波形,对应的testbench也有 -
STM32F103ZE驱动W5300
2017-02-20 12:00:53STM32完美控制W5300.解决过去ping通但不能通信的问题。硬件连接须把所有电源接上!切记,打开readme查看接线方式。 -
W5300和W5100对比
2019-12-30 11:45:43原文链接:...由于W5300是基于W5100的TCP/IP内核,因此它继承了W5100的基本功能。W5100与W5300最主要的区别是数据总线。W5100支持8位的数据总线,而W5300不但支持8位,而且支持16位数据总...原文链接:https://www.iwiznet.cn/2012/12/24/w5300%E4%B8%8Ew5100%E5%B7%AE%E5%BC%82%E5%AF%B9%E6%AF%94/
由于W5300是基于W5100的TCP/IP内核,因此它继承了W5100的基本功能。W5100与W5300最主要的区别是数据总线。W5100支持8位的数据总线,而W5300不但支持8位,而且支持16位数据总线。由于数据总线的扩展,因此W5300的寄存器是基于16为总线设计的。
主机接口
<注> 1.通过设置W5300的MR寄存器,主机写数据的获取时间和主机读数据的保持时间可以被配置。
网络接口
<注> 1. MII_TXEN and MII_TXD[3:0]是用于网络指示LED信号的备用功能引脚。根据TEST_MODE[3:0]引脚的配置,这些引脚被用于MII信号。由于W5300支持MII信号,可以连接来自于第三方的PHY芯片,而不使用嵌入在W5300内部的PHY芯片。
寄存器
W5300的寄存器与W5100基本上一致。使用寄存器的不同之处如下。
扩展
<注> 1. 会话ID和PPPoE服务器硬件地址用于PPPoE模式。
在W5100上,会话ID和PPPoE服务器硬件地址可以通过S0_DPORTR和S0_DHAR获取。S0_DPORTR和 S0_DHAR均支持主机读操作和主机写操作。但是在W5300上,会话ID和PPPoE服务器硬件地址可以通过PSIDR和PDHAR获取,同时可以通过S0_DPORTR和Sn_DHAR进行设置,与W5100相同。
2. 在W5100上,Sn_DPORTR同时支持主机读操作和主机写操作。但是,在W5300上,Sn_DPORTR只支持主机写操作。
增加
移除
• 数据通信存储器
<注> 1. W5300的内部存储器可以通过TSMR,RMSR和MTYPER设置为大小范围在128K字节的TX或RX缓冲区。TX/RX缓冲区大小应该被设置为8的倍数。根据这个的大小,MTYPE的每一位均可被配置。
• 端口
<注> 1.每一个端口的TX/RX存储器可以通过TMSRn和RMSRn配置为从0K字节到64K字节的任意值。
数据传输长度
在W5100这边,主机计算并更新与指针寄存器相关的存储器,同时以字节为单位访问该存储器。因此,通过使用Sn_TX_RD和Sn_TX_WR可以很轻松的获取实际的TX数据长度信息。
W5300没有那些指针寄存器,而且访问存储器以字(2字节)为单位。因此,实际的TX数据长度应该在Sn_TX_WRSR中设置。
检查数据接收
<注> 1. W5300与W5100检查数据接收的方式相同。此外,W5300支持4 BRDYn 引脚来监视端口n的缓冲区深度。BRDYn可以选择端口号,信号极性和存储器类型(TX/RX),而且当端口n的缓冲区深度大于或与Pn_BDPTHR的值一致时,BRDYn置位。主机可以监视BRDYn引脚通过I/O端口或中断引脚。
TCP
<注> 1.由于W5100的存储器以字节为单位进行工作,对于TCP模式下的接收数据不需要附加信息。可是,W5300的存储器以字(2字节)为单位进行工作,无法区分TCP数据长度是奇数字节还是偶数字节。当(W5300)接收到数据时,主机应该分析数据包信息并处理与接收长度相同的数据。如果接收数据长度是偶数字节的话,通过设置Sn_MR寄存器的ALIGN位为1,可以不用添加数据包信息。
2.根据对Wn_KPALVTR的设置,W5300可以手动地发送0字节数据长度的保活数据包(Sn_KPALVTR=0x00或者SEND_KEEP指令)或者自动地发送 (Sn_KPALVTR > 0,无指令)。
MACRAW
<注> 1.无论什么时候在W5300上接收到MACRAW数据,CRC循环校检(4字节)数据都会添加在最后。接收到的CRC数据是以太网数据帧的CRC值,但实际上并不使用。在读取到这个CRC数据之后,主机将会无视它。
2.停止帧是一种以太网设备数据流控制机制。当发送端的发送速率大于接收端的接收速率是,以太网流控制机制启动。在这种情况下,接收端发送停止帧到发送端以暂时停止数据发送。
封装
-
基于W5300和FPGA的实时数据采集系统设计
2020-10-17 20:43:48为实现数据采集的实时传输和远程控制,设计并实现了基于W5300和FPGA的实时数据采集系统。系统选用W5300搭建网络模块,采用TCP协议与远程上位机通信,控制以AD7357为核心的A/D模块进行数据采集。通过对系统稳定性和... -
Wiznet W5300 FPGA 控制程序
2020-04-07 11:00:33Wiznet W5300 FPGA 控制程序 用FPGA实现了最简单的TCP host 和UDP传输,硬件上就需要注意那个25Mhz的时钟,和复位信号,其它外部上下来参考《W5300数据手册V1.2.5.pdf》这个手册就行了。 W5300一共支持8个Socket,...Wiznet W5300 FPGA 控制程序
用FPGA实现了最简单的TCP host 和UDP传输,硬件上就需要注意那个25Mhz的时钟,和复位信号,其它外部上下来参考《W5300数据手册V1.2.5.pdf》这个手册就行了。
W5300一共支持8个Socket,128KB TX/RX DPRAM
它是用于数据通信的128KB存储,由16个8KB的DPRAM(双端口随即存储器)组成。由主机灵活地分配给每一个套接口。注意这个模块这里写自己要配置的IP地址和socket对应的端口号,目的地址等
ip_config_decode m0_ip_config_decode( .clk ( clk_100m ), .rst_n ( rst_n ), .ip_config_sel ( ip_config_sel ),//注意这里写自己要配置的IP地址和socket对应的端口号,目的地址等 .ip_config_en ( ip_config_en ),//注意这里写自己要配置的IP地址和socket对应的端口号,目的地址等 .ip_config_data ( ip_config_data ),//注意这里写自己要配置的IP地址和socket对应的端口号,目的地址等 .decode_done ( decode_done ), .s_gateway ( s_gateway ),//源网关 .s_subnet_mask ( s_subnet_mask ),//源子网掩码 .s_hardware_addr ( s_hardware_addr ),//源MAC地址 .s_ip_addr ( s_ip_addr ),//源IP地址 .s0_source_port ( s0_source_port ),//socket_0的源端口号 .s0_d_hardware_addr ( s0_d_hardware_addr ),//socket_0的目的MAC地址 .s0_d_ip_addr ( s0_d_ip_addr ),//socket_0的目的IP地址 .s0_d_port ( s0_d_port ),//socket_0的目的端口号 .s1_source_port ( s1_source_port ),//socket_1的源端口号 .s1_d_hardware_addr ( s1_d_hardware_addr ),//socket_1的目的MAC地址 .s1_d_ip_addr ( s1_d_ip_addr ),//socket_1的目的IP地址 .s1_d_port ( s1_d_port ),//socket_1的目的端口号 .s2_source_port ( s2_source_port ),//socket_2的源端口号 .s2_d_hardware_addr ( s2_d_hardware_addr ),//socket_2的目的MAC地址 .s2_d_ip_addr ( s2_d_ip_addr ),//socket_2的目的IP地址 .s2_d_port ( s2_d_port ),//socket_2的目的端口号 .s3_source_port ( s3_source_port ),//socket_3的源端口号 .s3_d_hardware_addr ( s3_d_hardware_addr ),//socket_3的目的MAC地址 .s3_d_ip_addr ( s3_d_ip_addr ),//socket_3的目的IP地址 .s3_d_port ( s3_d_port ),//socket_3的目的端口号 .s4_source_port ( s4_source_port ),//socket_4的源端口号 .s4_d_hardware_addr ( s4_d_hardware_addr ),//socket_4的目的MAC地址 .s4_d_ip_addr ( s4_d_ip_addr ),//socket_4的目的IP地址 .s4_d_port ( s4_d_port ),//socket_4的目的端口号 .s5_source_port ( s5_source_port ),//socket_5的源端口号 .s5_d_hardware_addr ( s5_d_hardware_addr ),//socket_5的目的MAC地址 .s5_d_ip_addr ( s5_d_ip_addr ),//socket_5的目的IP地址 .s5_d_port ( s5_d_port ),//socket_5的目的端口号 .s6_source_port ( s6_source_port ),//socket_6的源端口号 .s6_d_hardware_addr ( s6_d_hardware_addr ),//socket_6的目的MAC地址 .s6_d_ip_addr ( s6_d_ip_addr ),//socket_6的目的IP地址 .s6_d_port ( s6_d_port ),//socket_6的目的端口号 .s7_source_port ( s7_source_port ),//socket_7的源端口号 .s7_d_hardware_addr ( s7_d_hardware_addr ),//socket_7的目的MAC地址 .s7_d_ip_addr ( s7_d_ip_addr ),//socket_7的目的IP地址 .s7_d_port ( s7_d_port ));//socket_7的目的端口号
先看tcp_server_port
然后是udp_port
下面是相关的资料和FPGA源代码
W5300资料和FPGA控制源码.rar -
W5300随便写点
2017-03-01 11:59:47第1步是给w5300的电路腿复位,就是给芯片供电。因为w5300本身也可以看做是个CPU 第2步是配置STM32单片机的腿 第3步开始对w5300的寄存器进行操作了(需要操作什么寄存器可以看官方手册) 好第3步 ---------把RST置1...第1步是给w5300的电路腿复位,就是给芯片供电。因为w5300本身也可以看做是个CPU
第2步是配置STM32单片机的腿
第3步开始对w5300的寄存器进行操作了(需要操作什么寄存器可以看官方手册)
好第3步
---------把RST置1,就是复位。
----------把IND置1。
IND:为0是直接访问模式,1是间接访问模式。
这里把他设为直接访问模式。这俩访问啥区别 现在不清楚。以后补充。(补充:可能是直接寄存器就是官方把寄存器直接就给出来了,以后的发送接收啊初始化啊直接对寄存器进行操作就可以了。就是手册里的COMMON寄存器。而间接寄存器就是提供给我们一个基地址,让我们自己弄偏移)
----------把FS置位1. 就是弄成小开端。 FS 就是FIFO SWAP的意思。 SWAP翻译为交换。那么为啥设置为小开端,因为arm是小端啊。所以小端+小端就是大端了。
----------给SHAR & SHAR2 & SHAR4赋值,就是把w5300的mac地址赋值。
--------------设置本地IP MASK GW
官方寄存器的顺序显示给出了gw 然后给出了mask 然后给出了IP,这里也按照这个顺序介绍
首先是GW ,寄存器是GAR GAR2 ,翻译为gateway address
然后是mask, 那么这个subnet是啥意思?subnet用百度一查 是子网的意思 ,subnet mask就是子网掩码的意思。
然后是IP 就是SIPR SIPR2 给个名字是source IP。 这里source是源头 就是本地的IP了。通信里有不少都是这么起名字的。
-----------------------------------------------好了,以上这些就把 本地mac 本地 IP MASK GW 都设置好了------------------------------这些设置如果用电脑作为比较的话,就是电脑的mac是厂商自己设定的,我们不用改。 ip mask gw是我们在控制面板里面自己设定的静态的。--------------------------------------------------
好了,下面就讲讲组播的初始化。
对于一个组播,比如说我手里有个板子,里面有一个w5300,我想发送一个组播到电脑。那么我的板卡要配置什么?
特别值得注意的是,在谢希仁的书第6版本的第170页写到“”多播地址只能用于目的地址,而不能用于原地址“。(当然这是叫法的问题,这种叫法比较清晰)
所以说我看到W5300的手册里面说的组播是没有源地址的,也没有源mac的。
所以我们要设置我的板卡的1个socket,包括
1个目的mac,1个目的ip,一个server port 和一个 client port。
-
STM32_W5300_16Bit 标准例程.rar
2020-02-29 17:17:18STM32_W5300_16Bit 标准例程,使用外设FSMC 16位总线,包含各种网络通讯例程、异常断网处理、接线方法等分享给大家,希望能对大家有所帮助 -
W5300中文资料使用说明
2011-06-09 03:49:29W5300的中文版资料 看不懂英文版的自己下来看吧 -
w5300在ucosIII的移植
2019-12-16 09:16:03W5300网卡芯片在stm32 ucosIII的移植 1.ucosIII说明 因为ucosiii没有设备驱动模型的概念,所以ucosIII驱动的移植和操作系统本身关系不大,更多和板卡、cpu有更大的关系。 2.驱动移植基本概念分析 基于m3、或m4的...W5300网卡芯片在stm32 ucosIII的移植
1.ucosIII说明
因为ucosiii没有设备驱动模型的概念,所以ucosIII驱动的移植和操作系统本身关系不大,更多和板卡、cpu有更大的关系。
2.驱动移植基本概念分析
基于m3、或m4的cpu来进行后续讨论。当我们从cpu的官网下载了标准外设库、补充库、第三方库后,基本的外设驱动就有了。目前观察发现usb驱动、网卡驱动、外部flash、外部sd、外部ram的驱动和具体的驱动芯片有关。
3.网卡驱动移植
我们目前准备使用的网卡是w5300。所以我们的驱动移植更多的工作是匹配cpu和网卡自带的驱动之间的矛盾。
- 打开w5300的官网,https://www.wiznet.io/product-item/w5300/
- 可以看到提供的资源如下图所示:主要包括数据手册,推荐原理图,驱动文件。
下载后的文件如下:
第一个文件夹内部是驱动文件、第二个文件夹是推荐原理图、第三个文件是w5300的datasheet。
其他需要的参考文件可能就是如下两个:一个cpu的芯片手册,一个编程指导。
到现在准备工作告一段落,下面就进入实际操作的层面了。
3.1驱动源码分析
驱动源码的目录如下所示:
除了帮助文件,我们最主要需要关心Ethernet、Internet两个文件夹。
1)驱动文件
Ethernet文件夹包含驱动文件和驱动文件访问接口。
其中w5300.c、w5300.h是具体访问硬件的驱动文件,socket.c socket.h是提供给应用层访问的接口。在socket.c socket.h中提供了tcp udp的协议。网络层,物理层,传输层,链路层的协议由w5300硬件实现。
2)协议文件
Internet文件夹包括了各种网络协议的支持
目录的所有文件都调用socket.c socket.h的函数访问网络控制器的寄存器。不同的协议主要是提供不同的协议(大部分都是应用层,mqtt除外)供业务层调用。
- 应用程序demo
下载推荐的demo程序,里面有tcp,udp的demo。 结合芯片手册可以对每个寄存器有更直观的理解和认识。
3.2推荐电路分析
因为网卡接到了Flexible static memory controller (FSMC)区域bank3,推荐的典型电路如下所示:剩余的工作主要在于驱动文件的移植。
3.3数据手册关键点
Fsmc 的内存地址:
我们的接入地址是fsmc bank3,所以基地址是0x8000 0000。
W5300功能框图
所以我们配置该模块就是配置器寄存器。
W5300寄存器的分布图如下:BA就是fsmc bank3的基地址
真正的移植工作就是参考datasheet配置这些寄存器(Mode Register,Indirect Mode Registers,COMMON Registers,SOCKET Registers),实现网卡的init,close,read,write等类似的函数并提供给其他模块使用。
到现在移植步骤基本表达清楚了,后续如果有时间在输出一个关于网卡每个寄存器的翻译描述文件。
-
以太网接口芯片W5300使用说明
2017-07-28 16:12:00W5300的目标是在高性能的嵌入式领域,如多媒体数据流服务。与WIZnet现有的芯片方案相比较,W5300在内存空间和数据处理能力等方面都有很大的提高。 W5300特别适用于IPTV,IP机顶盒和数字电视等大流量多媒体数据的传输... -
stm32 FSMC操作W5300网络通信分享
2019-03-07 08:20:54stm32 FSMC操作W5300网络通信分享 -
W5300网口芯片的FPGA控制协议流程
2017-12-25 13:54:17一、 系统硬件构成与设计 1.1 W5300芯片介绍 ...W5300是一款0.18um CMOS工艺的单芯片器件,内部集成10/100M以太网控制器,MAC和TCP协议栈。W5300主要应用于高性能嵌入式领域,如...W5300的数据通信存储器扩展到12 -
[转]以太网接口芯片W5300使用说明
2019-09-23 21:25:21一、芯片简介 引用百度百科对芯片的一个简介,我就不再赘述。 ...W5300的目标是在高性能的嵌入式领域,如多媒体数据流服务。与WIZnet现有的芯片方案相比较,...W5300特别适用于IPTV,IP机顶盒和数字电视等大流量... -
W5300数据手册-v1.1.1.pdf
2011-11-09 10:53:14w5300是一款以太网接口芯片,它里面集成了硬件及软件协议栈,能够实现高速数据传输。 -
基于FPGA的以太网芯片W5300的tcp/ip协议的开发
2019-07-16 19:21:37W5300的目标是在高性能的嵌入式领域,如多媒体数据流服务。与WIZnet现有的芯片方案相比较,W5300在内存空间和数据处理能力等方面都有很大的提高。 W5300特别适用于IPTV,IP机顶盒和数字电视等大流量多媒体数据的传输... -
W5300E01-ARM 交叉编译器(Cross Compiler)用户手册
2019-07-07 13:57:43W5300E01-ARM是基于W5300的ARM功能测试评估板: 1 简介 当用户的开发环境与目标系统不同时就会用到交叉编译器. 例如,当开发基于ARM的嵌入式系统时,用户就需要在电脑上写出源代码,并用交叉编译器进行... -
具有W5300的HD PVR
2012-05-10 09:05:26HDT (Hyundai Digital Technology)是一家韩国的STB公司,主要研发和生产数字卫星,PVR,IPTV等等。 2009年1月, HDT开始设计了他们的HD PVR硬件。在新的设计中,他们使用了STMicronics... W5300就是用来实现以太网 -
如何使用W5300实现ADSL连接(二)
2013-08-16 18:07:00上一篇,已经简单为大家介绍了有关如何使用W5300实现ADSL连接的内容,今天继续介绍 连接过程。 连接过程 ADSL连接过程如下。 图 2. W5300 PPP/PPPoE过程 Phase 0. W5300 PPP/PPPoE(ADSL)设置 为ADSL的连接...
-
通过web站点使用上传webshell的方式获取meterpreter权限
-
visual c++获得硬盘U盘序列号等所有信息,主机ID,网卡MAC地址_vc9源代码.rar
-
SubstancePainter插件开发-基础入门
-
Biaofun讲轻量级应用服务器搭建网站的教程
-
Excel高级图表技巧
-
linux ifconfig is not found
-
ProBuilder快速原型开发技术
-
wubi16046r333.exe
-
uni-app实战专题
-
天蓝色网络教育培训网页模板
-
神经网络的阐述论文.docx
-
面试必问!多线程并发问题
-
three.js入门速成
-
学校学习园地网页模板
-
apache atlas_v2.docx
-
Linux服务器高并发调优实战
-
什么是tomcat,Apache,Nginx和Tomcat的区别
-
【数据分析-随到随学】Mysql数据库
-
基于神经网络的高角色散宽带介质超光栅的快速优化
-
release-1928-x64-gdal-3-2-1-mapserver-7-6-2.zip