概述
W6100-EVB-Pico是基于树莓派RP2040和全硬件TCP/IP协议栈控制器W6100的微控制器评估板-基本工作原理与树莓派Pico板相同,但通过W6100芯片增加了以太网功能。
板载资源
RP2040是Raspberry Pi的首款微控制器。它将我们的高性能、低成本和易用性的标志性价值观带入微控制器领域。 凭借大容量片上存储器、对称双核处理器复合体、确定性总线结构和丰富的外设集,以及我们独特的可编程 I/O (PIO) 子系统,它为专业用户提供了无与伦比的功能和灵活性。
- 带有2MB Flash 的RP2040微控制器
- 双核Arm Cortex-M0 + @133MHz
- 264KB 高性能SRAM
- 外部四通道SPI闪存,带就地扩展(XIP)
- 高性能全横杠总线结构
- 30个GPIO(4个可用于ADC)
- 12位500ksps分辨率模数转换器(ADC)
- 通过专用QSPI总线最高支持16MB的片外闪存
- DMA控制器
- 各种数字外设
- 2个UART、2个SPI控制器和2个I2C控制器、16路PWM通道
- 1个定时器、1个RTC
- 2个可编程I/O(PIO)块,总共8个状态机
- USB 1.1 主机和设备支持
- 支持 UF2 的 USB 大容量存储启动模式,用于拖放式编程
W6100是全球第一款支持IPv4/IPv6双核的新一代全硬件以太网TCP/IP协议栈控制器。W6100在WIZnet核心专利技术——全硬件TCP/IP协议栈IPv4的基础上增加了IPv6,使用户能够更加简单快速地实现嵌入式设备的联网功能。
- W6100芯片规格参数
- IPv4/IPv6双协议栈
- 支持多种TCP/IP协议
- TCP, UDP, IPv6, IPv4, ICMPv6, ICMPv4, IGMP, MLDv1, ARP, PPPoE
- 同时支持8路独立socket通信
- .内置32KB内存用于TX和RX缓冲区各16KB
- 支持多种SOCKET-less命令
- ARP4、ARP6、PING4、PING6、NS(DAD)、RS、UNA
- 支持高速SPI接口(SPI模式0,3)和系统总线(2位地址总线和8位数据总线);
- 支持网口极性自动转换和PHY工作模式自动协商(全/半双工、10/100M)
- 集成了10BaseT/10BaseTe/100BaseTX的以太网PHY
- 支持基于UDP协议的网络唤醒(WOL)功能
- 支持PHY掉电和关闭系统时钟两种节能模式
- 2MB NOR(W25Q16JVZPIM)闪存,通过QSPI直接连接控制。
- Micro-USB B接口,用于供电和数据传输(程序下载、串口收发)
- 40引脚21x51 'DIP'风格1mm厚PCB板带有0.1“通孔引脚也与边缘定位
- 3针脚 ARM SWD
- 内置RJ45接口
- 内置LDO
硬件规格
如上图深蓝色底纹部分所示,RP2040的部分GPIO直接与W6100的SPI接口相关引脚相连,具体连接对应如下表:
注:这些引脚使SPI通信与W6100使用以太网功能。如果您正在使用以太网功能,这些引脚不能用于任何其他目的。
W6100-EVB-Pico内部使用的RP2040 GPIO如下表所示:
I/O | 引脚名 | 描述 |
I | GPIO16 | 连接W6100的MISO接口 |
O | GPIO17 | 连接W6100的CS接口 |
O | GPIO18 | 连接W6100的SCLK接口 |
O | GPIO19 | 连接W6100的MOSI接口 |
O | GPIO20 | 连接W6100的RSTn接口 |
I | GPIO21 | 连接W6100的INTn接口 |
I | GPIO24 | VBUS检测接口 |
O | GPIO25 | 用户LED灯 |
I | GPIO29 | 用于ADC模式检测VSYS/3 |
除了GPIO和接地引脚外,还有7个其他引脚接口:
引脚号 | 引脚名 | 描述 |
PIN40 | VBUS | Micro-USB输入电压,连接到Micro-USB接口引脚1。名义上的5V。 |
PIN39 | VSYS | 主系统输入电压,可在4.3V到5.5V的允许范围内变化,由板载LDO产生3.3V。 |
PIN37 | 3VE_EN | 连接到板载LDO使能引脚。要禁用3.3V(也使RP2040和W6100断电),将此引脚短至低。 |
PIN36 | 3V3 | 主3.3V电源给RP2040和W6100,由板载LDO产生。 |
PIN35 | ADC_VREF | ADC电源(和参考)电压,并在W6100-EVB-Pico上通过滤波3.3V电源产生。 |
PIN33 | AGND | GPIO26-29接地参考。 |
PIN30 | RUN | RP2040使能引脚,复位RP2040,将该引脚短至低。 |
工作条件:
属性 | 参数 |
工作温度 | -20℃~85℃ |
Micro-USB输入电压 | DC 5V(+/- 10%) |
输入电压 | DC 4.3V~5.5V |
开发环境配置
- 开发环境:Windows10/11,Visual Studio Code
- 硬件准备:W6100-EVB-Pico开发板,网线,Micro USB数据线
步骤1:下载编译工具
首先下载树莓派官方的编译工具:
GitHub - raspberrypi/pico-setup-windowshttps://github.com/raspberrypi/pico-setup-windowshttps://github.com/raspberrypi/pico-setup-windows
该工具集成包含了以下几个软件:
- Arm GNU Toolchain
- CMake
- Ninja
- Python3.9
- Git for Windows
- Visual Studio Code
- OpenOCD
进去之后选择:Download the lastest release即可
步骤2:安装程序
下载完成之后,双击.exe文件进行安装,选择好安装路径点击install,安装完成后勾选下载示例到文件夹
下载测试
在开始菜单找到Visual Studio Code,打开后会自动加载我们刚刚下载示例程序。打开hello_world文件夹下面usb文件夹下的hello_usb.c文件,该示例的功能是通过USB口自动打印"Hello,world"
编译
点击最下方工具图标,选择Pico ARM GCC 作为我们的编译链
在左侧选择CMake工具,点击hello_usb文件后面的下载按钮生成执行文件
下载
按住W5500-EVB-Pico的BOOTSEL按键后再通过USB插入电脑,之后再松开BOOTSEL按键。此时电脑会把W5500-EVB-Pico识别为大存储设备。
我们打开build/hello_world/husb文件夹,将编译生成的后缀为.uf2文件拖入W5500-EVB-Pico中,即可完成下载。
现象
此时电脑上的大容量存储设备消失,表示程序下载完成。此时W5500-EVB-Pico会把USB虚拟成串行设备连接至电脑,我们用VS Code自带的串行监视器连接上W5500-EVB-Pico就可以查看打印信息了。
技术文档
树莓派pico参考资料
RP2040 Datasheet (raspberrypi.com)https://datasheets.raspberrypi.com/rp2040/rp2040-datasheet.pdfhttps://datasheets.raspberrypi.com/rp2040/rp2040-datasheet.pdf
树莓派 Pico 中文站https://pico.org.cn/https://pico.org.cn/
W6100参考资料
Overview | WIZnet Document Systemhttps://docs.wiznet.io/Product/iEthernet/W6100/overviewhttp://docs.wiznet.io/Product/iEthernet/W6100
WIZnet · GitHubhttps://github.com/Wiznethttps://github.com/Wiznet
W6100-EVB-Pico原理图
Schematic & Part list & Gerber File文件
Hardware-Files-of-WIZnet/02_iEthernet/W6100 at master · Wiznet/Hardware-Files-of-WIZnet (github.com)https://github.com/Wiznet/Hardware-Files-of-WIZnet/tree/master/02_iEthernet/W6100https://github.com/Wiznet/Hardware-Files-of-WIZnet/tree/master/02_iEthernet/W5500
感谢大家的观看!!!下期给大家带来用配置静态IP地址的方式让W5500-EVB-Pico连接上以太网。觉得本篇文章写的不错的话点个关注!!!点个赞吧!!!!!