当前位置:首页 > 单片机 > 单片机
[导读] 本文介绍了一款单片网络接口芯片W5100,该芯片内部集成了TCP/IP硬件协议栈,支持多种网络协议。给出了基于STM32处理器的硬件电路连接图和软件程序设计。目前,该系统已成功应用在多个建筑能耗监测项

本文介绍了一款单片网络接口芯片W5100,该芯片内部集成了TCP/IP硬件协议栈,支持多种网络协议。给出了基于STM32处理器硬件电路连接图和软件程序设计。目前,该系统已成功应用在多个建筑能耗监测项目中,运行结果表明该系统通信稳定可靠,能够满足项目对远程数据传输的需求。

数据采集与传输系统一直是工业控制、环境参数监测、建筑能耗信息监测等多个领域共同关注的问题,尤其是针对远程数据传输问题。受传输距离的限制,传统的现场总线通信方式只适合于近距离的数据传输;而基于GPRS技术的数据传输系统虽然可以不受距离的限制,但其按照流量进行收费,对于大量数据连续传输而言资费不低,在实际的项目中应用也不是很广泛。目前,基于以太网的数据传输系统以其成本低廉、通信速率高和支持远距离通信等诸多优点,在监测领域得到了越来越多的应用。
常见的网络驱动芯片有RTL8019、CS8900、ENC28J60、DM9000、W5100等,其中ENC28J60支持串行SPI接口通信方式,接口电路设计相对简单。RTL8019、CS8900和DM9000都是并行总线式驱动方式,需要连接较多的数据线、地址线以及读写控制引脚等。W5100既支持串行SPI接口,同时也支持并行总线方式。这几款芯片中除了W5100内置TCP/IP协议栈之外,其余都需要用户自己开发以太网驱动程序,需要占据大量的存储空间以及宝贵的RAM内存单元;而且,软件的实现方式与硬件集成相比,稳定性和可靠性也稍差。

1 W5100芯片介绍
W5100是韩国Wiznet公司生产的一款多功能的单片网络接口芯片,内部集成有10/100M以太网控制器,且经过多年实际项目应用验证的硬件TCP/IP协议栈,提供全双工以太网解决方案。与该公司之前的产品W3100相比,W5100内部集成了物理层RTL8201CP核,它是一款集TCP /IP协议栈、以太网MAC和PHY为一体的网络接口芯片,具有更高的集成度和更稳定的工作性能,便于硬件实现。W5100芯片同时支持直接并行总线、间接并行总线和SPI串行总线共3种接口方式与主控芯片进行通信,可以满足不同场合的需求。这些性能使得用户不需要考虑以太网TCP/IP协议栈的移植等复杂的软件驱动程序,可以像访问外部存储器一样操作W5100,实现网络通信功能。W5100的性能特点如下:
①内嵌10/100BaseT以太网物理层;
②理论最大传输率可达25 Mb/s;
③支持自动MDI/MDIX,自动校正信号极性;
④支持ADSL连接(支持PPPOE协议中的PAD/CHAP认证模式);
⑤支持4个独立端口同时运行;
⑥内置16 KB存储器用于数据发送/接收缓存。
1.1 内部结构及引脚功能
如图1所示,W5100将网络协议的处理分成一个由特定处理器执行的控制部分和一个硬件线路部分,实现硬件化的TCP、UDP、ICMP、IPv 4、ARP、IGMP以及PPPoE协议,含有连接以太网协议中的数据控制及MAC协议;按照功能可以将W5100的引脚分为与处理器接口的通信引脚、以太网物理层功能引脚、时钟引脚、LED工作状态指示引脚、电源引脚等几类。直接总线接口方式需要用到ADDR[0~14]共15个引脚;而间接总线接口方式只需要用到地址线0和地址线1,其余的地址线ADDR[2~14]通过电阻接地即可;使用SPI接口方式时需要注意,必须将SEN引脚接高电平,才能使SPI功能有效,后面在硬件电路部分介绍。

1.2 寄存器功能介绍
W5100的寄存器可以分为通用寄存器和端口寄存器两类。其中,通用寄存器包括对W5100的网络配置、中断、超时参数以及缓冲区大小等设置;端口寄存器是针对W5100的4个独立的端口设置,包括端口模式寄存器、端口命令寄存器、端口中断寄存器和端口状态寄存器等在内的共17个寄存器。

通用寄存器的详细信息如表1所列。针对中断寄存器IR共有7个中断源,当任何一个未被屏蔽的中断置为高电平时,W5100的中断输出引脚INT将会一直保持低电平,MCU通过读取IR寄存器定位中断源,并进行中断程序处理,之后清零IR中相应的位,INT引脚才恢复为高电平。


W5100内部共有16 KB发送/接收缓冲区,发送和接收各占8 KB,默认每个端口的发送和接收均为2 KB,即RMSR=TMSR=0x55,在实际使用过程中,用户可以根据实际情况调整发送/接收缓冲区大小。如图2所示,通过修改每个端口对应的S1和S0寄存器可以修改相应的端口缓冲区大小。


端口寄存器是分别针对4个独立Socket的寄存器,以Sn_xx的形式表示,其中n取值为0、1、2、3。端口模式寄存器Sn_MR定义了该端口工作在TCP模式或者是UDP模式,不同模式下端口寄存器的表现形式不一,本文对此不作过多的阐述。

2 系统方案设计
本文核心处理器采用的是STM32F103VET6,它是一款基于Cortex—M3内核的ARM处理器芯片,内部集成了512K Flash程序存储空间和64K的SRAM数据存储空间。STM32F103VET6最高工作频率72 MHz,含有资源外设接口,包括2个12位数/模转换器、7个定时器、CAN总线接口、SPI通信接口、3路USART串行通信接口等资源。图3展示了基于STM32F103VET6的W5100通信系统结构图,包括电源电路、时钟电路、复位电路、
JTAG调试电路和W5100以太网通信电路。

2.1 硬件电路设计
本系统中STM32F103VET6处理器采用SPI串行接口方式与W5100进行通信,硬件电路连接如图4所示。13F-60FGYDPNW2滤波器带有网络变压器的RJ45接口元件。W5100的通信、控制引脚分别与STM32F103-VET6相连接,其中INT引脚连接PC4(外部中断4),该引脚低电平有效。当W5100产生连接、断开、发送数据完成、接收到数据或者通信超时等情况时,该引脚将会产生一个从高电平到低电平的跳变,触发一次中断。W5100的RST_BG引脚需要通过一个12.3 kΩ的电阻接地,由于没有标称12.3 kΩ的电阻,因此采用12 kΩ电阻+300 Ω精密电阻的方式连接。

W5100工作频率较高,为了保证通信的稳定性、可靠性,在设计PCB电路板的时候有几点需要注意:
①RJ45接口元件与W5100之间的距离要足够的小;
②终端匹配模块要尽量地靠近网络变压器;
③晶振布局要远离网络变压器和TX、RX导线,避免对高速信号造成干扰;
④去耦电容距W5100的位置越近越好,导线相对越宽越好。


2.2 软件程序设计
W5100的程序设计包括初始化和Socket驱动两个部分,初始化过程主要对芯片内部的各寄存器编程来实现芯片的复位、收发缓冲器设置等底层工作,初始化过程涉及的寄存器包括:
①RMSR(接收缓冲区寄存器)和TMSR(发送缓冲区寄存器)设置为0xAA(默认为0x55),本系统中只用到了Socket0和Socket1两个端口,冈此将缓冲区设置为4 KB,增大发送和接收空间。
②RTR(重发时间寄存器)按照默认值设置,即200 ms(0x07D0)。通信过程中,当发出连接、断开等命令后,在200 ms内没有收到对方的响应时,将会触发重发机制。
③RCR(重发计数寄存器)设置为8次。
④IMR(中断屏蔽寄存器),通过向相应的中断屏蔽位写入1使能相应的中断源,指出了IMR的每一位对应的中断源,本系统中需要开启7、6、1、0即可。即设置IMR寄存器为0xC3,中断产生后,STM32F103VET6可以通过访问IR寄存器获得中断来源,从而进行相应的中断程序处理。中断屏蔽寄存器如下。

除了上面几个寄存器之外,还需要设置MAC地址、IP地址、网关地址等,根据实际应用向对应的控制位写入相应的地址即可,这里不再赘述。
W5100可以工作在TCP和UDP两种通信模式下,在不同的通信模式下又分为客户端和服务器两种工作状态,TCP是面向连接的以太网通信,相比UDP可以提供更可靠的通信服务。本文通过W5100建立TCP的客户端工作模式,将采集到的数据通过以太网发送至数据中心的服务器。如图5所示,客户端首先向服务器发起请求连接,成功建立连接之后,当周期性数据采集任务结束后,将向服务器发送数据包;如果遇到网络阻塞,会产生通信超时或者没有响应等情况,将会终止一次通信连接,关闭Socket,然后重新发起新的连接请求,循环反复。


3 系统应用
目前,通过本文开发的基于W5100的远程数据采集与传输系统已经成功应用在辽宁省建筑能耗监测平台、太原理工大学节约型校园监管平台、大连市公共机构能耗监管平台等多个能耗监测项目当中。其中,辽宁省项目覆盖范围最广,涉及到省内14个地级市共50栋建筑的能耗采集与传输工作。调试期间,因能耗采集周期和上传周期均一致,并且各客户端的时间信息通过服务器进行同步,导致所有的客户端均在同一个时刻向数据中心发起连接或者发送能耗信息数据,如图6所示(上传周期为5 min),第1分钟的C1~Cn表示各地的数据采集器在同一时刻向服务器发起连接请求,第5 min的C1~Cn表示各数据采集器在同一时刻向服务器发送能耗数据信息,从而造成服务器偶尔因连接负载过多造成采集软件死机等情况发生。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

近日,米尔电子推出米尔基于NXP i.MX 93系列产品-MYC-LMX9X核心板及开发板。NXP i.MX 9系列在i.MX 6和i.MX 8系列产品市场验证的基础上,继承了前代产品的优点的同时,进一步提升了性能、资源...

关键字: 核心板 开发板 处理器

2024年4月18日,重庆——今日,英特尔AI教育峰会暨OPS2.0全球发布活动在第83届中国教育装备展示会期间顺利举行。峰会现场,英特尔携手视源股份、德晟达等合作伙伴正式发布新一代开放式可插拔标准——OPS 2.0,并...

关键字: OPS 2.0 显卡 处理器

全新Balletto™系列无线MCU基于Alif Semiconductor先进的MCU架构,该架构具有DSP加速和专用NPU,可快速且低功耗地执行AI/ML工作负载

关键字: 处理器 微控制器 AI

新型LPDDR5X是未来端侧人工智能的理想解决方案,预计将在个人电脑、加速器、服务器和汽车中得到更广泛的应用

关键字: 三星 人工智能 LPDDR5 处理器

Supermicro广泛多元的系统产品组合提供高度灵活性,可满足现今针对工作负载优化且具液冷设计的数据中心需求,并集成了新型高效核(Efficient-core)与性能核(Performance-core)处理器,这些处...

关键字: Intel MICRO SUPER 处理器

亿道信息旗下品牌ONERugged刚刚上新了四款高性价比三防平板电脑,分别是M87J和M81T两款8寸机型,以及M17J和M11T两款10.1寸机型。作为一站式加固计算机品牌,ONERugged一直以打造坚固耐用的三防终...

关键字: 平板电脑 处理器

通往定制高端 3.5 英寸系统的更快、更可持续的途径

关键字: 处理器 嵌入式设计 OEM

发布AI开放系统战略,展示与新客户、合作伙伴跨越AI各领域的合作。

关键字: AI 英特尔 处理器

2024年4月10日,苏州——英特尔与苏州阿普奇物联网科技有限公司联合举办2024阿普奇生态大会暨新品发布会。会上,阿普奇携手英特尔及其他行业专家共同发布了阿普奇E-Smart IPC新一代旗舰产品AK系列,该系列采用英...

关键字: 数字化 英特尔 处理器

在现代电气和电子工程领域,分流器作为一种重要的电气元件,广泛应用于各种电路中。它不仅能够有效地将电流分配到不同的支路,还能实现电路的保护和测量功能。本文将详细介绍分流器的使用方法、应用场景以及实用技巧,帮助读者更好地理解...

关键字: 分流器 电气元件 电路
关闭
关闭