介绍一下官方WizFi360

介绍一下官方WizFi360

Uncategorized, WiFi, WIZnet产品, 博客
产品概述 WizFi360是一款高性价比低功耗的工业级WiFi模块,兼容IEEE802.11 b/g/n标准,支持SoftAP、Station以及SoftAP+Station模式,串口波特率最高可达2Mbps,可以满足用户在多种应用场景下使用。 特点 集成4G射频收发器,兼容IEEE802.11 b/g/n标准 支持SoftAP/Station/SoftAP+Station模式 支持Smartconfig一键配置 支持串口AT命令配置 支持AT命令及数据透传两种数据传输方式 支持TCP Server/TCP Client/UDP工作模式 支持0~13信道自定义 支持20/40MHz带宽自适应模式 支持WPA_PSK/WPA2_PSK密码验证加密方式 波特率设置范围为600bps至2Mbps之间常用的16组波特率值 支持多达5路TCP/UDP链接 支持DHCP自动获取IP地址(Station模式) 支持自动分配IP地址(AP模式) 支持DNS功能,满足用户通过域名实现模块与服务器通讯的需求 支持Keep Alive功能,保证网络链路实时畅通 支持Ping功能,随时诊断网络是否连通 内置SNTP协议,随时获取网络时间 内置全球唯一MAC地址,支持用户自定义MAC地址 支持串口本地固件升级以及网络调试工具固件升级 工业级(工作温度范围:-40℃~85℃) 参数表 表1 主要参数表   类 别 参 数 说 明 无线参数 无线标准 802.11 b/g/n 频率范围 2.4GHz-2.5GHz(2400MHz~2483.5MHz) 硬件参数 数据通信串口 3.3V TTL×1:TXD、RXD、CTS、RTS、GND 工作电压 3.0~3.6V(建议3.3V) 工作温度 -40℃~85℃ 软件参数 无线网络模式 SoftAP/Station/SoftAP+Station 密码验证加密方式 WPA_PSK/WPA2_PSK 工作模式 TCP Server/TCP Client/UDP 配置方式 AT命令 固件升级方式 支持串口/WiFi本地固件升级,官方云服务器升级以及用户自定义云服务器升级 认证报告 CE/FCC/KC 表2 接收灵敏度参数表   参 数 典型值 单 位 输入频率 2400~2484 MHz 输出功率 72.2Mbps下,PA的输出功率 12 dBm 11b模式下,PA的输出功率 19 dBm 灵敏度 DSSS,1 Mbps -95 dBm CCK,11 Mbps -86 dBm OFDM,6 Mbps -89 dBm OFDM,54 Mbps -73 dBm HT20,MCS0 -89 dBm HT20,MCS7 -71 dBm 邻道抑制 OFDM,6 Mbps 32 dBm OFDM,54 Mbps 15 dBm HT20,MCS0 29 dBm HT20,MCS7 10 dBm 表3 射频功耗参数表   模 式 典型值 单…
Read More
WIZnet-io6Library如何使用

WIZnet-io6Library如何使用

Uncategorized, W6100, WIZnet 产品应用小例全系列, 博客, 应用, 物聯網
概观 io6Library是一个IPv6集成库,可以轻松集成和管理使用WIZnet硬连线双TCP / IP堆栈控制器(WIZCHIP)产品系列的用户应用程序。 io6Library用于管理依赖于用户特定MCU的代码,因此用户无需根据用户MCU执行io6Library的移植操作。(有关更多信息,请参见如何使用) 内容 io6Library可分为以下三种类型。   Reigsters Defintion 通用寄存器:定义通用寄存器,如网络信息,模式,中断等。 套接字寄存器:定义SOCKET寄存器,如套接字模式,套接字通信,套接字中断等。 每个WIZCHIP I / O访问功能 基本I / O功能:通过WIZCHIP定义的HOST接口(SPI,BUS等)访问输入/输出的基本单元功能 公共寄存器访问功能:基于基本I / O功能访问公共寄存器的功能 SOCKET寄存器访问功能:基于基本I / O功能访问SOCKET寄存器的功能 WIZCHIP控制API,用于用户应用程序集成,管理和迁移 SOCKET API:与BSD SOCKET API一样,SOCKET API提供可以与socket socket commuuincation相关的函数集 额外的API:它提供支持用户应用程序集成的功能,无论WIZCHIP特定的Regiter / Memory,Address Map,Features等等。:对于User Application的小占用空间,可以使用WIZCHIP I / O Access功能替换它。       有关更多详细信息,请参阅io6Library.chm。 io6Library.chm可能不是最新的,所以请参考doxygen程序程序使用Doxyfile.dox项目制作的文档。如果您愿意,Doxygen程序可以将文档设置为chm,html或pdf。 目录 以太网络 WIZCHIP特定目录(EX> W6100 - w6100.h,c) SOCKET API:h,socket.c ioLibrary配置文件:wizchip_conf.h,wizchip_conf.c 互联网 用于IP配置的Protcols(EX> DHCP,DNS) 将添加一些协议 应用 应用程序套接字模式定义:Application.h Loopback:TCP,UDP Basic Skeleton Code,loopback.h,loopback.c io6Library用户可以通过在wizchip_conf.h中仅修改一些定义来立即使用它。有关更多信息,请参见如何使用。 如何使用 io6Library配置 定义wizchip_conf.h中定义的WIZCHIP的类型和接口,以满足您的预期用途。 选择要使用的硬连线双TCP / IP堆栈控制器。在下图中,选择蓝色框中的列表之一,并将其​​选定为_WIZCHIP_,如红框。 选择用户将用于WIZCHIP Access的主机接口(并行总线,串行总线模式等)。在下图中,选择蓝色框中的列表之一,并将其​​选定为_WIZCHIP_IO_MODE_,如红框。 仅当使用并行总线模式时,必须将HOST的存储区基地址设置为WIZCHIPCHIP,如红色框。                WIZCHIP PHY访问模式配置如下图所示,选择蓝色框中定义的以太网PHY访问模式的两种方法之一,并将其​​定义为红色框。 _PHY_IO_MODE_PHYCR_:它通过PHY命令和状态寄存器提供对WIZCHIP的以太网PHY的简单控制,如PHY操作模式和链路状态。 _PHY__IO_MODE_MII_:通过MDC / MDIO信号直接控制WIZCHIP PHY的以太网PHY寄存器。 为WIZCHIP I / O访问创建用户定义的功能 根据您的HOST界面自行创建基本的Access I / O功能。这是因为每个用户HOST的接口控制方法不同。所以,你应该成功。 例如,如果您使用STM32FXXX的SPI1定义以下内容并控制WIZCHIP   #定义 _WIZCHIP_IO_MODE_        _WIZCHIP_IO_MODE_SPI_VDM_   通过SPI接口创建基本单元功能,如WIZCHIP选择/取消选择,1字节读/写,临界区进入/退出等,如下所示。 通过SPI接口进行基本I / O访问功能,如WIZCHIP选择/取消选择,1字节读/写和临界区进入/退出,如下所示。 WIZCHIP选择/取消选择:用于设置/复位与WIZCHIP的CSn引脚相连的STM32FXXX的任何GPIO的功能 01 void your_wizchip_enable(void) 02 { 03 / * void HAL_GPIO_WritePin(GPIO_TypeDef * GPIOx,uint16_t GPIO_Pin,GPIO_PinState PinState)* / 04 HAL_GPIO_WritePin(GPIOD,GPIO_PIN_7,GPIO_PIN_RESET) 05 } 06 07…
Read More
W5100S使用FSMC总线方式解析

W5100S使用FSMC总线方式解析

W5100S, 博客
- - - W5100S介绍 W5100S 是一款多功能的单芯片网络接口芯片,内部集成全硬件的TCP/IP协议栈,以太网MAC和 10Base-T/100Base-TX以太网控制器。主要应用于高集成、高稳定、高性能和低成本的嵌入式系统中使用W5100S,用户MCU可以方便的处理IPv4,TCP,UDP,ICMP,IGMP,ARP,PPPoE等各种TCP/IP协议。W5100S分别拥有8KB的发送缓存和接收缓存,可以最大限度地减少MCU的开销。主机还可以同时使用W5100S的4个独立的硬件SOCKETs,并基于每个硬件SOCKET开发独立的互联网应用。 W5100S支持SPI接口和并行系统总线接口。 它还提供低功耗/低热量设计,WOL(Wake On LAN),以太网PHY掉电模式等。 W5100S是基于W5100改进的低成本网络接口芯片。W5100使用的任何固件及程序都可以直接在W5100S上使用,无需任何修改。 此外,W5100S采用48引脚LQFP和QFN无铅封装,明显小于W5100的80引脚封装,方便产品小型化 W5100S总线方式 W5100S连接的MCU型号是STM32F103VCT6。(以下简称STM32) STM32与W5100S采用间接总线的通信方式。并行接口通过下表中的寄存器访问通用寄存器/SOCKET寄存器,TX/RX数据缓冲区。并支持多字节数据的顺序读写 表 间接模式地址值 ADDR[1:0] 符号 描述 00 MR 通用寄存器MR 01 IDM_ARH 高8位偏移地址寄存器 10 IDM_ARL 低8位偏移地址寄存器 11 IDM_DR 8位数据寄存器 并行总线数据写入,多字节数据写入时序,如下图所示: 间接模式连续写入 并行总线数据读取,多字节数据读取时序,如下图所示: 间接模式连续读取 FSMC简介    FSMC包含四个主要模块: AHB接口(包含FSMC配置寄存器) NOR闪存和PSRAM控制器 NAND闪存和PC卡控制器 外部设备接口 W5100S如何使用FSMC总线 STM32的FSMC支持数据与地址线 复用 或 非复用 两种模式: 非复用模式:16位数据线及26位地址线分开使用。只能在144脚及以上的STM32上使用该模式。 复用模式:低16位数据/地址线复用。在该模式下,使用地址锁存器以区分数据与地址。 在复用模式下,若不使用锁存器,当NADV为低时,ADx(x=0…15)上出现地址信号Ax,当NADV变高时,ADx上出现数据信号Dx;若使用锁存器:可同时在ADx上得到Ax和Dx。 FSMC中未使用的数据线或地址线可配置为GPIO。对于16位宽度的外部存储器,FSMC将在内部使用HADDR[25:1]产生外部存储器的地址FSMC_A[24:0]。因此,实际的访问地址为右移一位之后的地址。 非复用模式的非复用接口: 复用模式的复用接口: W5100S使用FSMC总线的复用模式(MUXEN),W5100S直接与FSMC总线的复用引脚AD0~AD1相连,不需要增加外部器件。如下图所示: 根据上图所示:当该位为‘0’时,则为非复用模式;当该位为‘1’时,则为复用模式。 以下是介绍W5100S使用FSMC总线的复用模式:(WIZnet官方使用FSMC复用模式) W5100S与STM32通信采用FSMC总线方式的复用模式,如原理图所示,在数据传输时需要保存DA0、DA1地址不变,所以需要外部连接一个锁存器,使用了74HC573PW作为地址锁存器,如FSMC的读写数据时序图所示,STM32的FSMC_NADV是低电平输出地址,因为锁存器高电平输入有效,所以将FSMC_NADV信号进行反转,由低电平转换成高电平,通过锁存器实现地址锁存。 地址锁存原理图 FSMC_NADV信号写数据时序图 FSMC_NADV信号读数据时序图
Read More
WIZnet “IoT iOffload Contest” 物联网竞赛开始啦!

WIZnet “IoT iOffload Contest” 物联网竞赛开始啦!

博客
欢迎参加世界上第一次使用全硬件TCP / Dual(IPv4 / 6)的设计竞赛。 *所有参与者必须使用WIZnet的W6100相关产品(参考硬件部分) 参赛地址: 参赛地址:https://maker.wiznet.io/contests/contest-in-progress/201905-iot-ioffload-contest/ 活动时间: 5 / 1~6 / 30注册成参赛者 5 / 1~8 / 31创建并完成项目 9 / 1~9 / 29投票和评审 9/30获奖者宣布 硬件:                               奖励: 一等奖 1,000美金(5人) 二等奖 500美金(20人) 资料下载: 资料 https://maker.wiznet.io/contests/contest-in-progress/201905-iot-ioffload-contest/#software
Read More

W5500 EMC参考设计(金属壳体)

W5500, WIZnet 产品应用小例全系列, 博客, 应用
EMC测试比较重要的有四项:ESD——静电抗扰度测试,EFT——电快速瞬变脉冲群抗扰度测试,SURGE——浪涌(冲击)抗扰度测试,PFMF——工频磁场抗扰度测试。 其中EFT和SURGE是针对电源的测试,发生问题应该在电源防护上做文章。而与W5500相关的只有ESD和PFMF。 我们在近期也结合一些合作单位的测试经验,将提供能够通过测试的原理图和硬件设计参考。现将金属壳体的防护参考设计分享给大家。 下载链接:(百度云) 链接:https://pan.baidu.com/s/1pzITNHFGrSIvGKXGPJ4Bag 提取码:5p3v 也可扫描二维码下载
Read More

如何将固件写入W7500

Uncategorized, WIZnet 产品应用小例全系列, WIZnet产品, 博客, 应用, 物聯網
将固件写入WIZwiki-W7500有四种方法。 使用CMSIS-DAP(拖放) 使用CMSIS-DAP(通过Keil uVision5) 转到ISP工具手册和程序下载 使用SWD调试器 二进制示例: 硬件测试和环回二进制(WIZwiki-W7500默认二进制):下载 LED Blink binary:下载 串行输出二进制:下载 使用CMSIS-DAP(拖放) 1.将USB电缆连接到WIZwiki-W7500时,PC被识别为可移动磁盘。可移动磁盘名称为MBED。 2.您“拖放”或将固件复制到可移动磁盘,固件写入进度已完成。 3.完成固件写入后,打开以检查可移动磁盘。 4.如果可移动磁盘中存在“fail.txt”文件,则表示写入固件失败。 5.按下WIZwiki- W7500的重置按钮(SW1)后,请重复步骤2中的步骤。 使用CMSIS-DAP调试器 CMSIS-DAP也支持USB电缆和调试器。您需要设置Flash算法以在Keil中使用CMSIS-DAP调试器。 To Follow 点击顶部菜单中的“Flash”,然后打开“配置Flash工具”。选择“CMSIS-DAP Debugger”,在顶层菜单上设置“Debug”。 单击“实用程序”,然后选择“CMSIS-DAP调试程序”。打开“设置”菜单并取消选中“调试”菜单中的“SWJ”。然后确认在SW设备上设置的“ARM CoreSight SW-DP”。 在Debug菜单栏旁边,单击'Flash Download'并在下载功能中设置'Erase Full Chip',在RAM中设置'0x20000000到0x4000'用于算法,在编程算法上添加'W7500_128KB_FLASH'。用下图检查后,单击“确定”。 将固件下载到WIZwiki-W7500。您可以在底部检查完整消息和CMSIS-DAP调试器。点击“调试图标”或按Ctrl + F5进行调试。 参考 设置Flash算法 使用ISP W7500 ISP计划 转到ISP工具手册和程序下载 当W7500处于启动模式时,可以通过ISP进行固件写入,因为WIZwiki-W7500内置了ISP标头。由于ISP标头支持UART信号,因此您需要一个转换器,如TTL到RS232或TTL到USB,以便连接到您的PC。 请参考下面的框图设置。 To Follow 1.运行“W7500_ISP(20xxxxxx).exe”。 2. 要使WIZwiki-W7500进入启动模式,请在按下SW2,BOOT开关的同时供电一次。 3.从“串行端口”中选择连接到ISP标头的设备,然后单击“打开”。如果您成功进入引导模式,则会在窗口底部的状态栏上打印“Serial Open Complete”消息。 在点击ISP工具的打开按钮之前,我们建议您在其他终端窗口中进行测试。 使用终端窗口打开串口后,输入大写“U”。如果它处于ISP模式,您可以看到返回的字符。 4.单击“浏览”以选择二进制文件。 5.单击“ISP Start”按钮,然后执行固件写入。 6.固件写入完成后,将弹出如下窗口。 如何将外部SWD调试器连接到WIZwiki-W7500 此页面显示如何使用外部SWD调试器在WIZwiki-W7500中编写和调试固件。当您需要调试固件时,您有两种方法。一种是使用外部SWD调试器进行调试,另一种是使用CMSIS-DAP调试器。在此页面中,仅发布如何使用SWD调试器调试固件。 使用SWD调试器 您可以在WIZwiki-W7500和Debugger Sel Jumper中间找到SWD Header,上面有三个上限。 然后在Debugger Sel Jumper中打开J3,J4,J5跳线帽。 现在,您的WIZwiki-W7500已准备好连接SWD调试器。 连接ULINK调试器和SWD标头。此时,请注意匹配引脚号。 在Keil中设置Flash算法和ULINK调试器并 在WIZwiki-W7500上下载。然后,您可以检查成功消息。 参考 如何设置Flash算法 文章来源:http://wizwiki.net/wiki/doku.php?id=products:wizwiki_w7500:start_getting_started:write_firmware
Read More

如何调试WIZwiki-W7500

Uncategorized, WIZnet 产品应用小例全系列, WIZnet产品, 博客, 应用, 物聯網
在WIZwiki-W7500上,有SWD Header和CMSIS-DAP来调试WIZwiki-W7500。首先,您需要设置Flash算法以使用调试。此页面显示如何设置Flash算法以及如何使用ULINK Debugger和CMSIS-DAP Debugger。 设置Flash算法 下载 W7500 128KB Flash项目:下载 W7500 128KB Flash文件:下载 To Follow 下载附件并解压缩。然后你可以找到一个文件夹和一个文件。在“W7500_flash_algo_mdk”文件夹中,打开项目并“构建”。 构建后,您可以检查项目文件夹中生成的文件。返回'W7500_128_Flash'文件夹并将'W7500_128_FLM'闪存算法文件复制到Keil的Flash文件夹中。 C:\ Keil_v5 \ ARM \闪光  使用ULINK调试器 要使用ULINK Debugger,您应该通常使用cap来解除SWD Debugger Sel Jumper的断开连接。不要忘记连接USB电缆为电路板供电。 To Follow 您可以在WIZwiki-W7500和Debugger Sel Jumper中间找到SWD Header,上面有三个上限。 然后在Debugger Sel Jumper中打开J3,J4,J5跳线帽。 现在,您的WIZwiki-W7500已准备好连接SWD调试器。 连接ULINK调试器和SWD标头。此时,请注意匹配引脚号。 点击顶部菜单中的“Flash”,然后打开“配置Flash工具”。选择“ULINK2 / ME Cortex Debugger”,在顶层菜单上设置“Debug”。 单击下一个Debug的'Utilities',然后选择'CMSIS-DAP Debugger'。打开“设置”菜单,在顶部菜单的“调试”中取消选中“SWJ”。然后确认在SW设备上设置的“ARM CoreSight SW-DP”。 点击“Flash下载”。在下载功能中设置'擦除全芯片',在RAM中输入'0x20000000到0x4000'用于算法,并在编程算法上添加'W7500_128KB_FLASH'。与下图比较后,单击“确定”。 将固件下载到WIZwiki-W7500。您可以在底部查看完整消息和ULINK Debugger。点击“调试图标”或按Ctrl + F5进行调试。 使用CMSIS-DAP调试器 CMSIS-DAP也支持USB电缆和调试器。您需要设置Flash算法以在Keil中使用CMSIS-DAP调试器。 To Follow 点击顶部菜单中的“Flash”,然后打开“配置Flash工具”。选择“CMSIS-DAP Debugger”,在顶层菜单上设置“Debug”。 单击“实用程序”,然后选择“CMSIS-DAP调试程序”。打开“设置”菜单并取消选中“调试”菜单中的“SWJ”。然后确认在SW设备上设置的“ARM CoreSight SW-DP”。 在Debug菜单栏旁边,单击'Flash Download'并在下载功能中设置'Erase Full Chip',在RAM中设置'0x20000000到0x4000'用于算法,在编程算法上添加'W7500_128KB_FLASH'。用下图检查后,单击“确定”。 将固件下载到WIZwiki-W7500。您可以在底部检查完整消息和CMSIS-DAP调试器。点击“调试图标”或按Ctrl + F5进行调试。 下载多个项目时 对于使用W7500芯片的WIZ750SR代码,分别存在Boot和App项目。因此,在遵循先前的解释时存在问题。无论您使用哪种调试器,您只需要注意以下设置。 To Follow 对于一般配置,请按照前面的说明进 点击顶部菜单中的“Flash”,然后打开“配置Flash工具”。 点击点击菜单中的“实用工具”。 并选择“您的调试器”。 打开旁边的“设置”菜单,然后点击点按菜单中的“Flash下载”。 仅在下载功能中设置“擦除扇区”,“程序”,“验证”。 在编程算法中单击W7500 128KB FLASH并填入[开始] [大小]框。您可以从目标信息中获取[开始]地址和[大小],如下图所示。如果输入正确,请单击“确定”。 其余步骤可以遵循先前的描述。 如何切换应用程序和启动以进行调试 您只需要重置您想要的设备和调试! 文章来源:http://wizwiki.net/wiki/doku.php?id=products:wizwiki_w7500:start_getting_started:debugging_w7500#set_flash_algorithm
Read More

如何使用Keil为W7500创建新工程

Uncategorized, WIZnet 产品应用小例全系列, WIZnet产品, 博客, 应用, 物聯網
介绍 本应用笔记是为W7500 MCU制作KEIL项目的教程。本文档将逐步介绍如何为W7500制作项目和bin文件,以便您轻松跟进。 步骤1.下载并安装KEIL5! 下载MDK-ARM v5:https://www.keil.com/download/product/ 安装说明,请参阅链接:http://wizwiki.net/wiki/doku.php?id=products:w7500:documents:appnote:install_uvision 步骤2.下载W7500库 您可以从WIZnet的Github存储库下载W7500库:https://github.com/Wiznet/W7500 步骤3.制作工作空间!并将W7500库移动到工作区! 在此示例中,它是D:\ workspace \ project \ Library 步骤4.执行KEIL5并制作新项目 点击 New uVision Project.... 选择项目保存文件夹,然后选择项目名称。在此示例中,D:\ workspace \ project \ W7500_test \ W7500_Test.uvproj 步骤5. W7500启动代码和系统代码设置 回到项目。您需要制作与右侧显示的图像相同的文件夹 根据以上图片顺序配置; 并以同样的方式... CMSIS文件夹包括D:\ workspace \ project \ Libraries \ CMSIS \ Device \ WIZnet \ W7500 \ Source \ system_W7500.c文件 W7500_Periphs文件夹包含要使用的外围设备。 而User文件夹必须包含main.c等。 我们来做main.c 单击Add New Item to the Group。 选择C文件并使用“main”命名,然后单击“Add”。 包括w7500x.h标题但是......你应该显示红色X,因为你没有路径。 步骤6.设置包含路径 点击 Options for Target... 在C \ C ++中选择“Include Paths”,然后单击文件夹图标并单击以"..."图标; 设置包含路径: D:\workspace\project\Libraries\CMSIS\Device\WIZnet\W7500\Include D:\workspace\project\Libraries\W7500x_stdPeriph_Driver\inc D:\workspace\project\Libraries\CMSIS\Include 步骤7.内存设置 点击 "Options for Target..." 单击“Target”点击并使用上图中显示的值进行设置 然后单击“Linker”点击并选中【Use Memory Layout from Target Dialog】 步骤8.选择要使用的外围设备 点击 "Options for Target..." 单击“C / C ++”点击并在“Define”字段中添加CORTEX_M0 USE_STDPERIPH_DRIVER。 步骤9.设置用户程序以使用创建的bin文件 点击"Options for Target..." 单击“User”点击并选中“Run User Programs After Build/Rebuild”部分中的“Run #1 ”并按顺序编写此命令[fromelf --bin -o“[email protected]”“#L”] DAP使用bin文件。 步骤10.编译示例 让我们在D:\ workspace \ project \ Projects \ Peripheral_Examples \ GPIO \ Blink_LED中编译示例代码。这个折叠包括main.c, W7500x_conf.h,W7500x_it.c和W7500x_it.h,你应该将这四个文件复制到D:\ workspace \ project \ W7500_Test(我的项目文件夹) 并将W7500x_gpio.c复制到W7500_Periphs文件夹中以使用gpio外设…
Read More
WIZnet-W7500S2E系列

WIZnet-W7500S2E系列

S2E系列, W7500S2E, 博客
W7500S2E   WIZnet公司成立于1998年,是一家无晶圆厂的半导体公司。产品包括iMCU™微控制器,基于独特的专利硬件TCP/IP的互联网处理器,即TOE(TCP/IP卸载引擎)技术专门开发的。针对嵌入式互联网设备,适用于各种以太网络应用。 WIZnet 在全球拥有超过70家代理商,品牌忠诚度高,在香港、韩国、美国、中国等地设有办事处提供技术支援和产品营销。 之前我们一起了解了W5500S2E系列,现在我们一起开展关于W7500S2E系列的探秘之旅吧! 首先,我们先了解一下W7500S2E的基本情况: W7500S2E系列串口转以太网模块支持数据透传以及AT命令传输数据两种通信方式,同时支持TCP Server、TCP Client和UDP三种工作模式,串口波特率最高可达460,800bps,并提供配套的上位机配置软件,也可通过网页或AT命令等方式轻松配置。 W7500S2E系列串口转以太网模块板载了一颗集成了ARM Cortex内核+全硬件TCP/IP 协议栈的网络单片机,使得网络通信更加快速、稳定、安全。用户只需根据手册中推荐的参考设计原理图,即可快速完成硬件电路的设计,降低开发难度,节省开发时间。   W7500S2E系列串口转以太网模块根据其尺寸和接口不同分为以下型号: 型号 产品图片 特点 W7500S2E-Z1   网口类型:网络变压器 尺寸:44.45x31.75x15.75(mm) 工业级:-40~+85℃ W7500S2E-R1 网口类型:RJ-45 尺寸:44.45x31.75x23.00(mm) 工业级:-40~+85℃ W7500S2E-C1 芯片内含功能完全兼容W7500S2E系列固件 工业级:-40~+85℃ 其他芯片相关信息,请访问W7500网站 https://zh.wizse.com/ 功能特点 W7500S2E系列串口转以太网模块具有以下主要功能特点: 支持数据透传以及AT命令传输数据两种通信方式 支持外接485芯片的收发控制使能 波特率设置范围为300bps至460,800bps之间常用的16组波特率值 支持TCP Server、TCP Client和UDP三种工作模式 高达2048字节的串口发送缓存以及2048字节的网口接收缓存 全硬件以太网TCP/IP协议栈处理器,确保数据通信快速、安全、稳定 灵活的串口数据分包设置,满足用户多样化的分包需求 支持Keep-Alive功能,保证网络链路实时畅通 支持DHCP自动获取IP地址 支持DNS功能,满足用户通过域名实现模块与服务器通讯的需求 支持NetBIOS功能,方便用户通过模块名称轻松访问模块 支持连接密码校验功能,提高通信安全性 支持串口AT命令模式配置、Web网页配置以及上位机工具配置 支持上位机本地固件升级 产品特性 32位ARM     MCU LAN 10/100Mbps自适应以太网 串口 3.3V TTL×1:TXD、RXD、CTS、RTS、GND 串口通信参数 波特率:300bps至460,800bps之间常用的16组波特率值 数据位:7、8 停止位:1、2 校验:NONE、ODD、EVEN 流控:None、CTS/RTS 输入电源 W7500S2E-Z1:DC 5.0V W7500S2E-R1:DC 3.3V 尺寸(长×宽×高) W7500S2E-Z1:44.45×31.75×15.75(mm) W7500S2E-R1:44.45×31.75×23.00(mm) 工作温度 W7500S2E-Z1:-40 ~ +85℃ W7500S2E-R1:-40 ~ +85℃ 保存环境 W7500S2E-Z1:-50 ~ +95℃、5 ~ 95% RH W7500S2E-R1:-50 ~ +95℃、5 ~ 95% RH 参数配置方式 W7500S2E系列串口转以太网模块提供了三种常用的参数配置方式供用户选择: AT命令配置,用户可将W7500S2E集成于自己嵌入式产品的主板上,通过AT命令进行参数配置,也可直接通过串口工具使用AT命令配置; Web浏览器配置,用户可在本地或者同一局域网内远程通过Web浏览器进行配置; WIZS2E ConfigTool上位机软件配置,用户可在Windows操作系统的计算机上安装该软件进行配置。 配置工具下载链接:https://zh.wizse.com/
Read More

W5500常见问题及解决方案

Uncategorized, 博客
Q1: 在芯片处于TCP_Server模式下,在交换机/路由器网络中无法ping通也无法通讯。 R: WIZnet芯片是硬件协议栈芯片,有别于软件协议栈,如果芯片不主动往网络中发包,在TCP_Server模式下是不会有任何数据包发送的,这样会造成路由ARP表中无法形成IP和MAC设备的对应关系。 A:解决方案: 在芯片上电时往任意IP发送一个UDP数据包,从而更新路由的ARP表,形成匹配关系,后续通讯就正常了。 Q2: 芯片在TCP_Client模式下,断电重启之后无法立即连接到服务器。 R:这是由于客户端没有主动发送断开请求,造成服务器并不知道Socket已发生异常断开; 重新上电之后,芯片以相同的IP和端口连接服务器,而服务器还认为此Socket链接存在,所以拒绝芯片的立即连接。 A:解决方案: 在芯片使用KEEP_ALIVE机制,一段时间内发送呼吸包,如果芯片没有给服务器回复,服务器则判断链接已断开,并释放Socket资源,这时就可以成功连接。如果对客户端的本地端口没有要求的话,也可以在初始化Socket的部分让端口自动+1处理。两种方式根据具体应用分析采用。 注: 有的场景不能采用端口自动+1的方式,比如电力104规约,只允许采用2404端口连接。 Q3: 网线异常断开,服务器的Socket已经断开,但是芯片不知道Socket已经断开,并没有重建链接,此时怎么处理? A:解决方案: 可以在主循环中加入判断PHYCFGR状态的处理流程,如果PHY状态发生异常,释放所有的socket资源,并重新初始化socket。相关寄存器如下: Q4:如果芯片作为TCP_Server,最多可以链接几个Client,应该如何操作? A:解决方案: 芯片作为TCP_Server,最多可以与8个客户端建立连接。不能初始一个Socket对应多个连接。可以将芯片的8个socket全部初始化,这样就可以与8个不同的TCP_Client建立通讯链接。 Q5: 在芯片处于TCP_Client模式下,无法连接到服务器。 R: 在TCP_Client模式下,WIZnet芯片无法连接到服务器。 A: 遇到这个问题,有一个排查的步骤: 检查IP层是否可以PING通; 检查服务器的目标端口是否处于侦听状态,否则会收到RST数据包; WIZnet芯片在连接服务器时,首先会发送ARP请求,请确认ARP得到正确回复; 检查客户端-服务器间的3步握手是否完成; Q6:W5200进入Power Down模式后,长时间以后唤醒不能恢复正常,如何解决? A: 解决方案: W5200的Power Down模式是通过在一定时间内关闭W5200的内置PHY电路的工作来实现的,但是有一定几率PHY在休眠之后无法唤醒,需要在软件上做处理来唤醒芯片。经过测试验证发现,W5200芯片在3s极限值内快速唤醒一次再进入Power Down,当芯片需要唤醒正常工作时就不会出现以上问题。 Q7:WIZnet芯片进行公网通讯或者芯片间通讯的话怎么抓包? A: 解决方案: 芯片和PC通讯的话可以直接通过Wireshark抓包,如果芯片和公网直接通讯或者通讯是发生在芯片之间,则没有办法直接抓包,这需要借助于“可以抓包的交换机”,这种交换机多数是二手产品,而且是10M的网络,比如TP-LINK TL-HP5MU。把芯片和抓包计算机的网线分别插上交换机就可以运行抓包工具抓包。 Q8: W5300 TCP连接以后,Socket0数据收发正常,其它Socket有数据丢失是什么问题? A:解决方案: W5300是总线方式操作,在确保地址总线和数据总线连接正确的情况下,还有一个很重要的问题,就是保持总线时序统一,经过验证MCU总线地址保持时间至少是W5300总线操作时间的2倍以上,否则可能会导致W5300来不及处理数据而导致数据丢失。如下图介绍。 Q9: W5500的硬件设计和以往的以太网设计有不同的地方,可否使用客户原有的以太网经验电路? A:解决方案: 不能使用以往的经验电路,请严格按照WIZnet给出的参考设计进行硬件设计。 有的客户反馈在使用原有的经验电路也可以正常通讯,但是有可能发生在实验室正常,而客户现场连接不上的情况,所以统一建议客户使用官方的参考设计。 Q10:W5500的以太网电路,正常线序连接的话可能必须做过孔交叉线序,能否在线路上做交叉处理? A: 解决方案: W5500的以太网接口的四根线,按照正常的线序连接,必须通过过孔交叉线序; 按照以太网布局规范,需要等长差分走线。而且需要尽量少的过孔,可以适当做P-N交叉,既TXP-TXN交叉,RXP-RXN交叉,以符合以太网布线规范的要求。 figure-8-w5500-ethernet-wiring Q11: Wake On Line(WOL)功能如何使用? A:解决方案: WIZnet芯片打开WOL功能只需要置位MR寄存器的WOL位,不需要外部设定。唤醒方法为向WIZnet芯片的UDP端口发送Magic数据包(0xffffffffffff+16个目的MAC地址),设备唤醒后IR寄存器的WOL位会置1,通过检测该位获取WIZnet芯片的状态。(注意WOL功能不能和掉电模式(Power down mode)同时打开) Q12: 如何使用UDP组播功能? A:解决方案: 使用WIZnet芯片的UDP组播功能有几点需要注意: 1,需要在打开Socket之前,先指定目标MAC地址为组播MAC地址,定义规则如下: 2,打开一个支持多播UDP的Socket,目标IP为组播地址; 3,然后就可以进行UDP组播传输。 注意:如果没有定时发送“维持UDP组播”的数据包 的话就会被清出组播组,可以定时执行打开步骤2的打开Socket的指令,因为打开和维持UDP组播的数据包是完全一样的。 Q13: 运行HTTP_Server程序在不同的浏览器下显示效果不同,有的动态效果显示不出来? R: 这个是HTML代码和浏览器的兼容性问题,因为HTML5的很多标签和CSS样式表在低版本或者不同的浏览器内核下的排版和兼容性都不同。 A: 在HTML开发的时候使用JavaScript可以判断浏览器的内核和版本,可以针对不同的浏览器开发不同的执行代码和CSS样式表,或者建议客户使用推荐用户使用chrome系列或者chromium内核的浏览器,因为其对HTML5/CSS3支持是比较完善的。 Q14: MAC地址定义有什么特殊要求? A:解决方案: MAC地址要求不严格的话可以自定义,因为只要在一个子网内没有重复的MAC地址就不会造成MAC地址冲突的问题,因为如果进行公网通讯,网关会通过NAT功能将网关的MAC和IP对数据包中的MAC和IP进行替换然后再和公网通讯,所以不会造成公网中的MAC冲突的问题。但是如果要求比较严格,则需要从IEEE基金会申请全球唯一的MAC地址,申请地址如下: https://standards.ieee.org/products-services/regauth/oui36/index.html 进入该页面后点击Log in or create an account(新用户需注册),登陆后即可购买。 Q15: WIZnet芯片PING不通其它设备。 A:根据ICMP协议,request包的大小为128byte,reply包比request包大8byte,为136byte。 客户可以分别定义两个Buffer[128]和Buffer[136]分别对应request包和reply包,也可以共用一个Buffer[136],但是不能发送接收使用同一个128byte的Buffer,否则会造成接收数据不全,无法解析。 Q16: 使用中断方式,回环测试时无法清除中断 R: W5500收到数据后会产生RECV中断,当回环测试时,正常清掉RECV中断后,由于采用的回环测试方式,W5500又将同一包数据发送了出去,所以又会产生SEND_OK中断。 A: 此时需要再次清SEND_OK中断,或者改用单向测试方式即可。 Q17: 为何使用STM32F103无法完全发挥W5500的性能 A: STM32F103的主频最大72MHz,但是SPI接口的最高频率限制为18MHz 而W5500的SPI时钟最高可达80MHz,所以以 STM32   驱动W5500的话,无法满足W5500对最高时钟的需求。 而如果使用STM40x处理器,SPI时钟使用42Mhz,使用DMA方式,可以达到回环测试17Mbps的速率(收+发),单独发送可以达到13Mbps的速率 Q18: 如何使用PHY-PHY电路? A: 经常有需要使用PHY-PHY电路的场景,比如使用WIZnet做内部数据通讯,比如需要使用板载的Switch电路等等,PHY-PHY电路的要点就是使用耦合电容隔离两端的PHY,并加入两个PHY各自的偏置电路。类似于如下的设计: Q19: 以太网如何级联? A: 在特殊的应用场景下,客户需要用网线将所有的节点按照这种方式“A-B-C-D-E”线状级联在一起。这种应用需要使用Switch芯片,比如IP175G等芯片,按如下图示链接: Q20: 无法通过“以太网物理层一致性测试”中的眼图测试 A: 眼图是表现网络信号是否稳定的测试,眼图混乱有可能导致同一批次的设备有的无法正常通信,造成原因是: 1,没有按照以太网的布局标准来设计硬件电路, 2,采用的可能是不合格的网络变压器器件。 下图为使用W5500和HRW5500RE的眼图测试结果。 Q21: 使用WIZnet芯片无法通过低温测试 R: 通不过低温测试通常表现为低温-40℃不启动,原因是电路上除了WIZnet…
Read More