WizFi360 + AirKiss实现微信智能配网功能!!!

WizFi360 + AirKiss实现微信智能配网功能!!!

Uncategorized, WiFi, WIZnet 产品应用小例全系列, 应用
WizFi360概述 支持802.11b/g/n 2.4G WIFI标准,支持SoftAP/SoftAP + Station模式,最高2Mbps波特率,支持Smartconfig CE/FCC/KC认证,工作温度:-40~85℃ WizFi360是一款高性价比低功耗的工业级WiFi模块,兼容IEEE802.11 b/g/n标准,支持SoftAP、Station以及SoftAP+Station模式,串口波特率最高可达2Mbps,可以满足用户在多种应用场景下使用。 AirKiss 概 述 AirKiss是微信硬件平台为Wi-Fi设备提供的微信配网、局域网发现和局域网通讯的技术。开发者若要实现通过微信客户端对Wi-Fi设备配网、通过微信客户端在局域网发现Wi-Fi设备,或者把微信客户端内的音乐、图片、文件等消息通过局域网发送至Wi-Fi设备,需要在硬件设备中集成相应的AirKiss静态库。 目前,AirKiss有两种版本的静态库供开发者自行选择: Airkiss2.0:支持微信配网和局域网发现 AirKiss3.0:支持局域网发现和局域网通讯 注意事项 对于支持AirKiss微信配网的Wi-Fi设备,用户可以使用微信客户端对该产品进行入网配置。 WIZnet—AirKiss设备是搭配WIZnet-WizFi360使用的,暂时仅支持WizFi360连接。 *注意* 手机与电脑需要要连接同一个WiFi(支持802.11b/g/n 2.4G WIFI标准) 硬件&软件 关注“WIZnet微知纳特”微信公众号 串口调试工具 WizFi360模块 操作步骤 关注微知纳特微信公众号【wiznet微知纳特】,点击文章开头蓝字关注或者扫描二维码 将硬件按照【图片】所示连接并上电,将拨码开关按照【图片】所示拨开 打开一个串口调试工具(无限制),选择正确的端口,然后打开【open】 打开后按一下模块上的【RST】键,此时串口打印【ready】如下图所示 在串口调试工具上输入命令【如下图所示】(详细命令请参考WizFi360 AT命令手册) 下载地址:https://www.iwiznet.cn/products/wi-fi/WizFi360/   命令: AT+CWMODE_CUR=1(设置工作模式:Station 模式)       AT+CWSTARTSMART (开始 smartconfig) 具体AT命令请参考:WizFi360AT命令手册(www.iwiznet.cn) 打开微信,关注微信公众号“WIZnet微知纳特”,点击‘产品应用’,点击‘AirKiss设备’,跳转到‘配置设备上网’页面后,输入连接WIFI的密码,点击连接,见下图:                         配置成功!串口打印出WiFi 【ID】【密码】 此时WizFi360 微信AirKiss配网成功! 感谢阅读! 更多WizFi360的产品资料:https://www.iwiznet.cn/products/wi-fi/WizFi360/
Read More

WIZVSP虚拟串口工具使用说明

Uncategorized, WiFi, WIZnet 产品应用小例全系列, WIZnet产品, 应用
1. 概述 WIZ VSP(Virtual Serial Port)是一款 PC 端的虚拟串口上位机工具,可以实现 PC 与 PLC 之间通过 Internet 通信。WIZ VSP 支持创建多个虚拟串口,同时支持 TCP Client、TCP Server、UDP 等协议。 - 1.1 下载和安装过程 WIZ VSP 的下载链接:http://wizvsp.wiznet.io/点开链接后会出现一个注册的页面,需要填写个人信息及邮箱,如图 1 所示。 [caption id="attachment_17163" align="aligncenter" width="1320"] 图1 用户注册[/caption] 点击 register 后,会弹出一个 WIZ VSP 的下载页面,点击 WIZVSP Download下载该软件的压缩包,并且服务器会向你填写的邮箱发送一封邮件,里面有安装 WIZ VSP 时所需要的 serial key。解压压缩包,双击setup.exe,点击next,选择I Agree,点击next,选择安装路径,点击 next,该安装程序准备安装,安装完成后会出现如图 2 所示。点击 close 关闭页面。 [caption id="attachment_17164" align="aligncenter" width="504"] 图2 安装程序步骤[/caption] 打开下载路径下的文件夹,双击 VSP.exe,出现如图 3 所示的弹出框,Serialnumber 为邮件中的 serial key,正确填写后点击 Confirm,至此,VSP 安装完成,双击点开后如图 4 所示。 [caption id="attachment_17165" align="aligncenter" width="777"] 图3 程序安装步骤2[/caption] [caption id="attachment_17166" align="aligncenter" width="776"] 图4 程序安装完成[/caption] 1.2 功能 介绍 1.2.1 菜单栏介绍 打开 VSP.exe,界面如图 4 所示,菜单栏有 New connection、Edit、Delete、Delete all、Help 和 Exit。New connection 为创建一个新的端口并建立新的连接;Edit 为编辑所选串口的配置信息;Delete 为删除所选的端口;Delete all 为删除所有创建的端口;Help为帮助文档,Exit 为退出该界面,退出后不清除配置信息。 1.2.2 信息栏介绍 当有新的端口创建时,左边会出现该端口的配置信息,如图 5 所示。其中包括端口名、端口号、工作模式、连接状态以及发送和接收的数据大小。 [caption id="attachment_17167" align="aligncenter" width="784"] 图5 信息栏介绍[/caption] 1.2.3 配置栏介绍 配置栏主要功能是创建端口时配置这个端口的网络信息。配置栏分为 Type 选项卡、Connection Prefs、Signal lines 和 Proxy/security。 ① Type 选项卡 Type 选项卡主要是配置虚拟串口的连接方式(TCP Server、TCP Client、UDP);端口名和端口号。如果选择…
Read More
介绍一下官方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

如何将固件写入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可控机器人手臂

WIZnet可控机器人手臂

Uncategorized, WIZnet 产品应用小例全系列, 应用, 物聯網
使用以太网远程控制机器人手臂       硬件: Arduino UNO和Genuino UNO WIZnet WIZ750SR-TTL-EVB套件 通用机器人手臂 项目简介: 如果您想与串行设备通信,那么可能最大电缆长度是主要障碍。标准波特率的最大电缆长度可以是50英尺。您可以通过牺牲数据速率来进一步增加电缆长度。而且现在大多数PC都没有串口。以太网到串行转换器可能是上述问题的理想解决方案。您可以通过以太网端口高速传输数据到串行设备。电缆长度可达100米或更长。 在这个项目中,我使用WIZnet的串行到以太网(S2E)设备(WIZ750SR)来控制3D打印的机械臂。这是一个概念项目,手臂的容量非常有限。我使用开源处理环境开发了一个Windows应用程序,用于从我的台式PC控制手臂。 首先,我使用WIZnet的S2E配置工具配置WIZnet设备,如下所示(注意IP地址和端口号)。WIZnet设备配置为TCP服务器。串行通信的波特率应为115200(忽略图像上的速率)。 然后我将3.3V USB FTDI转换器连接到WIZ750SR以检查串行通信。我用PuTTY来测试通信。 我打开两个PuTTY窗口,一个作为Telnet客户端,另一个作为串行客户端。 串行通信检查成功后,通过TX和RX引脚将Arduino板连接到WIZ750SR。 为了将WIZ750SR与Arduino板连接,可以安全地使用电平转换器,因为WIZ750SR工作在3.3V,Arduino工作在5V。在这里,我连接了WIZ750SR和Arduino板之间的电平转换器。电平转换器的高压侧必须与Arduino连接,并且电平转换器的低压侧必须与WIZ750SR连接。 我用Arduino NANO和Arduino UNO测试了WIZ750SR器件。 为了通过以太网从我的PC控制机器人手臂,我使用Processing开发了一个桌面应用程序。处理是使用虚拟COM端口向Arduino发送数据。 虚拟COM端口或虚拟串行端口是传统软件应用程序期望连接到串行设备端口(COM端口)但由于物理上缺少可用串行端口而无法连接时的理想解决方案。相反,我们重新配置计算机以通过局域网或Internet发送串行端口数据,就像通过真正的串行端口一样。当遗留应用程序将数据发送到串行COM端口时,它实际上是通过TCP / IP网络传输的,然后从网络传输到您的遗留应用程序 - 并且是presto! - 我们有一个虚拟串口或虚拟COM端口。 要了解有关虚拟COM端口的详细信息(它们如何工作以及如何配置),请查看链接:https://www.netburner.com/learn/how-to-create-a-virtual-serial-port/ 要为PC设置虚拟COM端口,您将需要第三方工具。您可以将WIZ VSP用于此目的。我使用了NetBurner的另一个工具。我从这里下载了NetBurner虚拟COM端口工具,并按如下方式配置它: 在将虚拟COM端口配置为COM20之后,我开发了一个Processing程序,使用WIZ750SR以图形方式与Arduino机械臂进行交互。要运行处理代码,您需要为Processing添加ControlP5 GUI库。从这里下载库: http ://www.sojamo.de/libraries/controlP5/ 请注意COM端口号,它必须是您使用NetBurner创c建的虚拟COM端口号。 Processing程序的图形输出如下: 从五个滑块我可以非常平稳地控制机器人手臂的五个伺服电机的旋转。 应用程序的完整源代码附加到代码部分。 下图显示了PC,WIZ750SR和Arduino之间的连接。 这款微型机器人手臂采用3D打印,设计文件可在Thingiverse中使用。我用五个伺服电机来控制手臂。伺服电机连接到Arduino数字引脚。 使用以太网可以远距离控制手臂。无需在PC中安装串口。 文章来源:https://create.arduino.cc/projecthub/taifur/wiznet-controlled-robotic-arm-871744?ref=search&ref_id=wiznet&offset=1
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交叉,以符合以太网布线规范的要求。 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
WIZnet高性能以太网模块

WIZnet高性能以太网模块

Uncategorized, WIZnet 产品应用小例全系列, 串口转以太网, 博客, 应用
WIZnet高性能以太网模块有以下几个系列: - W5500S2E 系列 • W5500S2E-S1, W5500S2E-Z1, W5500S2E-R1 - W7500S2E 系列 • W7500S2E-Z1, W7500S2E-R1, W7500S2E-C1 高性能以太网模块特点: W5500S2E系列 • 支持Modbus RTU/ASCII转Modbus TCP/UDP • 支持Modbus over TCP/UDP • 波特率可设置为1.2Kbps~1.152Mbps • 支持NetBIOS功能,方便用户为其设备命名 • 支持本地和远程固件升级 • 支持数据/AT 模式通信 • 特设Socket连接状态管脚,确保用户每包数据不丢失 • 支持连接密码校验功能,提高通信安全性 • 智能网线侦测及Keep Alive功能,保证网络链路实时畅通 • 配置方式:上位机、Web浏览器、串口AT命令 W7500S2E系列 - W7500S2E 系列 • 波特率可设置为300bps~460,800bps • 支持NetBIOS功能,方便用户为其设备命名 • 支持数据/AT 模式通信 • 特设Socket连接状态管脚,确保用户每包数据不丢失 • 支持连接密码校验功能,提高通信安全性 • 智能网线侦测及Keep Alive功能,保证网络链路实时畅通 • 配置方式:上位机、Web浏览器、串口AT命令 通用型RJ45/网络变压器 - HanRun • HRW5500RE - 工业级RJ45 • HRW5500TE -工业级网络变压器 WIFI模块 - WizFi360 • GB15629.11-2006、IEEE802.11 b/g/n/e/i/d/k/r/s/w • 集成32位嵌入式Cortex-M3处理器,工作频率80MHz • 集成通用加密硬件加速器,支持PRNG/SHA1/MD5/RC4/DES/3DES/ AES/CRC/RSA等多种加解密协议 • 集成2.4G射频收发器,满足IEEE802.11规范 • 支持Wi-Fi WMM/WMM-PS/WPA/WPA2/WPS • 支持20/40M带宽工作模式 • 支持STA/AP/STA+AP工作模式 • 支持AT远程升级 • 支持Smart Config功能(包括Android和IOS设备) • HSPI、UART、I2C、I2S、SDIO2.0、7816接口、PWM、GPIO • 集成电源管理电路 • 睡眠模式电流小于10uA • 2ms之内唤醒、连接并传输数据包 • 工作温度范围:-40℃~85℃ 服务器: - CAN转以太网 • 10/100M自适应以太网接口 • 支持双CAN口收发 • 支持DHCP自动获取IP地址 • CAN口波特率为60kbps~1Mbps • 支持本地和远程固件升级 • 灵活的CAN口数据分包设置 • 网络端支持TCP、UDP传输方式 • 支持DNS功能 • 支持AT命令、Web浏览器、上位机方式配置 •…
Read More