首页 > 评测 > 通过网络卸载实现Unattackable——WIZnet W7500上手

通过网络卸载实现Unattackable——WIZnet W7500上手

安全MCU   网络卸载   WIZnet   W7500   TCP/IP   offload   IOP   
  • 作者:Oranger
  • 来源:21ic
  • [导读]
  • 号称牢不可破的W7500是来自韩国WIZnet的自主研发MCU,独特的网络卸载功能是其最大特色。到底有没有这么神?我们来一探究竟。

WIZnet24.png

在WIZwiki-W7500的外设测试代码中有个ioLibrary里面有和网络有关的各种库,下面我们通过调用该库文件进行网络测试

WIZnet25.png

首先要根据本机设置正确的网关和子网掩码以及开发板的静态IP和网卡。

WIZnet26.jpg

然后设置PHY和网络信息:

WIZnet28.jpg

我们实现的功能是loopback,开发板作为一个TCP Server,接收到信息后转发给发送端:

WIZnet27.jpg

然后在串口中断打印调试信息如下,下面的信息显示为socket 0一次完整的连接然后断开然后又继续监听的过程

WIZnet29.png

loopback 测试信息1s定时发送一次。

详细的代码可以下载官方的文件查看,通过分析代码我看可以看到只需要几个简单的设置就可以实现网络的数据收发,官方库函数中封装了网络模块需要使用的

各种接口函数,用的时候直接调用就可以,非常的简单快捷。

官方提供的例程里面还有一个httpServer的例子,在WIZwiki-W7500作为服务器,可以从电脑浏览器上访问,测试的时候发现我下载的官方代码里面有个小bug

systick的中断函数里面没有对延时函数使用的计时器变量进行递减要自己手动添加,实际测试的时候可以注意下这个问题。

WIZnet31.jpg

httpServer模式下初始化部分和之前loopback的一样,只是数据的处理使用了http部分的库函数,编译好工程下载到开发板,然后在PC端输入设置的IP地址后打开如下页面

WIZnet32.png

可以点击Network Information进入到网络信息界面,这个真是我们初始化的时候设置的网络信息

WIZnet33.png

对应的串口的调试信息

WIZnet34.png

进入到LED控制界面,通过按下对应的按钮可以打开关闭相应的LED

WIZnet35.png

串口输出的调试信息如下:

WIZnet36.png

上面是keil开发环境下的一些功能的测试,如果使用IAR、或者GCC,可以直接找到文件夹对应的工程打开即可。

4、总结

通过对WIZwiki-W7500开发板配合官方提供的外设例子的使用和测试,可以对W7500的硬件TCP/IP有个整体的了解,最直观的感受是使用

非常简单,通过几步初始化配置和调用官方的库函数就能实现各种联网功能,其次是官方提供的资料非常丰富,从最基本的搭建环境到调试下载

以及各种工具的使用都有详细的介绍,即使是首次接触使用也能非常快的上手。

初次接触WIZwiki-W7500建议先看下官方的提供的资料:http://wizwiki.net/wiki/doku.php?id=products:wizwiki_w7500:start

对W7500的介绍可以参考:http://wizwiki.net/wiki/doku.php?id=products:w7500:start

固件库可以从这里下载:https://github.com/Wiznet/W7500

官方的中文博客上有很对使用的例子可以参考,虽然大多数都是W500的,但是移植到W7500也非常简单,参考价值很高:http://www.iwiznet.cn/category/blog/

总体来说,对于需要联网的设备,如果想要快速的搭建网络部分,又不想过多的处理TCP/IP协议的东西,硬件TCP/IP是非常好的选择。

  • 本文系21ic原创,未经许可禁止转载!

网友评论