w5500

基于STM32和W5500的Modbus TCP通讯

試著忘記壹切 提交于 2020-03-21 05:10:59
在最近的一个项目中需要实现Modbus TCP通讯,而选用的硬件平台则是STM32F103和W5500,软件平台则选用IAR EWAR6.4来实现。 1、移植千的准备工作 为了实现Modbus TCP通讯首先需要下载W5500的驱动源码,可以到WIZnet的官网下载: http://wizwiki.net/wiki/doku.php?id=products:w5500:driver 下载下来的压缩包,解压后如下图: 需要将ethernet文件夹拷贝到我们的项目目录中: 并在IAR的项目下添加相关的文件和路径,主要是socket.c、w5500.c、wizchip_.conf.c三个文件。这三个文件分别实现socket、硬件驱动及相关通讯配置功能,具体可以查看相应的源码级手册。 并在如下图所示的项目选项设置中添加Ethernet和Ethernet\W5500目录。 2、移植过程和代码编写 在完成以上工作后就可以开始真正地移植工作了。具体步骤如下: 硬件配置及初始化。 以太网通讯配置的初始化。 实现具体的通讯过程。 2.1、硬件的配置及初始化 由于W5500通过SPI接口与STM32通讯,所以硬件配置和初始化是非常简单的,与W5500实际上没有关系,使一些通用的操作。事实上就是STM32F103的SPI接口初始化的过程,需要实现RCC、GPIO以及SPI的初始化就可以了

W5500EVB TCP Client模式设置说明

落爺英雄遲暮 提交于 2020-03-07 08:56:00
W5500EVB是WIZnet为了方便用户更好了解、使用W5500这款网络芯片所开发的评估板, 该板採用了 STM32F103RCT6+W5500 的设计。基于 ARM 的 Cortex-M3 平台。那么在实现网络通信的过程中,TCP通信模式为最经常使用,本教程就先为您介绍一下TCP Client模式是如何成功实现的。 一、 程序烧录 1. 程序改动 打开IAR Embedded Workbench软件快捷方式,打开TCP Client\app.eww文件。 然后在main.c函数中改动例如以下图1所看到的的两个IP地址,而且确保调试PC的IP地址与改动内容在同一个网段内,否则无法建立连接。当中绿色框内主要设置PC的IP地址,红色框内主要设置W5500-EVB的IP地址。 图 1 编译界面 改动正确以后,点击project\make 或者按F7快捷键又一次编译文件。 2. 设置烧录工具 Flash loader Demonstrator 用于为W5500-EVB烧录程序,安装软件会出现如图2所看到的窗体。当mini-USB连接到PC的USB设备时,设备管理器会正确安装USB转串口驱动,Port Name 口会自己主动识别到相应的COM口。 3. 程序下载 如图3所看到的,红色框中。SW7是BOOT0按键,SW6是RESET按键。 按下按键SW7不松开

W5500EVB UDP模式的測试与理解

断了今生、忘了曾经 提交于 2020-03-02 18:07:34
之前的博文中已经介绍过W5500EVB 在TCP模式下的两种(Server及Client)传输数据的实现过程,那么传输控制协议中,UDP也是很经常使用的。这样的无连接的协议在很多其它场合为用户提供了便捷。比方发电子邮件,QQ聊天发收消息等…好,那今天就学习一下。UDP模式在W5500EVB上的简单实现。 一 实验硬件及其连接 二 UDP实验相关知识 W5500是一款全硬件TCP/IP嵌入式以太网控制器,为嵌入式系统提供了更加简易的互联网连接方案。W5500集成了TCP/IP协议栈,10/100M以太网数据链路层(MAC)及物理层(PHY),用户无需特别关注TCP 和 UDP的实现过程。仅仅需最好对应配置和查询工作就可以。以下主要解说TCP和UDP差别。供參考 1 基于连接与无连接 TCP—传输控制协议提供的是面向连接、可靠的字节流服务。当客户和server彼此交换数据前。必须先在两方之间建立一个TCP连接,之后才干数据传输。TCP提供超时重发。丢弃反复数据,检验数据,流量控制等功能,保证数据能从一端传到还有一端。 每一个数据包的传输过程是:先建立链路、传输数据、然后清除链路。数据包不包括目的地址。受端和发端不但顺序一致,并且内容同样。它的可靠性高。 UDP—用户数据报协议是面向无连接的。每一个数据包都有完整的源、目的地址及分组编号,各自在网络中独立传输,传输中无论其顺序

W5500电路图

混江龙づ霸主 提交于 2020-02-03 09:49:20
W5500是韩国一款集成全硬件 TCP/IP 协议栈的嵌入式以太网控制器,W5500同时也是一颗工业级以太网控制芯片,最近发现我们国内也有和W5500 芯片一样芯片 介绍给大家 如下图: 来源: https://www.cnblogs.com/li-2136815881/p/11935844.html

W5500封装

醉酒当歌 提交于 2020-02-03 07:22:10
W5500是韩国一款集成全硬件 TCP/IP 协议栈的嵌入式以太网控制器,W5500同时也是一颗工业级以太网控制芯片,最近发现我们国内也有和W5500 芯片一样芯片 介绍给大家 如下图: 来源: https://www.cnblogs.com/li-2136815881/p/11935865.html

SWA2G422&485JK2G基础篇: 手机APP通过APMACBind方式绑定W5500(以太网)设备,实现MQTT远程通信控制

此生再无相见时 提交于 2020-01-12 02:07:07
说明   上一节演示了W5500实现MQTT通信控制   通过上一节咱知道   W5500订阅的主题为:user/W5500的MAC地址   W5500发布的主题为:device/W5500的MAC地址   这节演示下APP利用APMACBind方式获取W5500的MAC地址,进而做到和W5500实现MQTT通信 APMACBind方式介绍   APMACBind是我自己做的一种方式,这种方式目前有一个项目在使用   不过那是前年做的项目,当时是为了解决微信配网绑定问题   不过自从微信小程序支持了UDP,这种方式也被我淘汰(在我心底被淘汰了,有了更为简便的方式)   不过还是有必要拿出来讲一下,因为这种方式比较经典!体现了知识的灵活运用.   首先说明简要说明一下如何实现的让手机APP获取W5500的MAC地址   1.W5500连接路由器,连接上MQTT   2.W5500获取路由器的MAC地址   3.W5500发布的主题:device/路由器MAC   4.手机APP和W5500连接一个路由器   5.手机APP获取路由器MAC地址   6.手机APP订阅:user/路由器MAC   这样W5500就能够把自身的MAC地址通过MQTT发给手机APP,实现绑定   至于为什么用路由器的MAC地址作为主题(因为唯一)   所有用户都用一个MQTT服务器

w5500驱动使用方法调试笔记

做~自己de王妃 提交于 2019-12-14 11:52:29
1、w5500有两种方式可以运行的,server端一般用中断的方式,效率比较高,client使用查询的模式,本身自带2k的发送缓存和2k的接收缓存。 2、查询模式:有数据的时候,查询模式可以每隔一段时间去查询,有数据是读出,没有数据的继续查询,挺方便的。这个代码我参考的野火的驱动。 3、中断模式:当服务器使用时,还是需要使用中断模式,因为技术代理说最好不要用,但我使用了中断,感觉没啥问题,但是有一个点需要注意的。 4、中断模式的注意点: 因为w5500有很多中断的,连接超时中断,接收中断,发送中断,链接成功中断,断开成功中断。可以使能,也可以屏蔽,具体可以看看数据手册,有中文版的。 调试过程: 我把发送完成中断取消了之后,发现还是有提示发送完成的信息,我以为没有关闭,一直瞎调试,后来看看波形之后,的确是关掉了,所以正如手册所说的,屏蔽位清0了,即便发送了中断,他上会在int引脚中产生下降沿,因此就屏蔽了。 总结:因为发送完成中断在我这里不需要,上位机会根据收到的数据进行自己判断,发送中断有点类似于串口发送中断。 来源: https://www.cnblogs.com/CodeWorkerLiMing/p/12038525.html

w5500阶段性总结

半腔热情 提交于 2019-12-06 13:09:15
文章目录 序言 W5500芯片简介 库文件组成介绍 ioLibrary Driver 库文件移植过程 准备接口函数 接口绑定 官方库源码分析 wizchip_conf.c 和wizchip_conf.h w5500.c和w5500.h socket.c和socket.h 总结 序言 最近开始了W5500的编程之旅,我从商家给的例程开始学习,但是渐渐地发现,这些例程有一些缺点(功能不够完善,可移植性差,代码编写不规范,接口不够人性化等等),所以我开始使用WIZnet的官方库。官方库写得很好,移植也很简单,功能全面(毕竟自己的产品)。本篇文章我将会对我最近的学习经历进行一下总结,同时安排一下下一阶段的学习任务。我将分为如下几个部分进行介绍: W5500芯片简介 库文件组成介绍 库文件移植过程 官方库源码分析 总结 W5500芯片简介 W5500 是一款全硬件 TCP/IP 嵌入式以太网控制器,为嵌入式系统提供了更加简易的互联网连接方 案。W5500 集成了 TCP/IP 协议栈,10/100M 以太网数据链路层(MAC) 及物理层(PHY),使得 用户使用单芯片就能够在他们的应用中拓展网络连接。 久经市场考验的 WIZnet 全硬件 TCP/IP 协议栈支持 TCP,UDP,IPv4,ICMP,ARP,IGMP 以及 PPPoE 协议。W5500 内嵌 32K

W5500 学习开发: W5500学习说明

陌路散爱 提交于 2019-12-06 06:21:59
前言      官方已经给了大部分的例子,我只是做一下移植说明 这一节看一下如何移植官网程序的DHCP    首先先明确:单片机和W5500通信是通过SPI,所有的数据都是通过SPI接收和发送, 所以,拿到官方源码只需要根据自己的原理图修改SPI部分 改一下配置的引脚 注意:咱之所以那样写,是因为 注: 咱现在不需要修改这个名字 因为没有必要.....咱用的SPI1 如果自己觉得想修改的话可以这样 实际上官方给的程序就是让您把自己的SPI放到这里 如果自己想修改名字,自行修改.......... 编译 然后把程序下载进去 让电脑串口和STM32通信 通信选择可以看原理图,,原理图的位置和PCB一致 短接BOOT0和3.3V 复位一下单片机 去掉BOOT0和3.3V的短接,复位下单片机 接上网线,连接到路由器 注意哈,连接的是 打开串口调试助手 复位下STM32 结语   其实也就是根据自己的改一下SPI口而已......    来源: https://www.cnblogs.com/yangfengwu/p/11965217.html