产品概述
RP2040-ETH是一款迷你RP2040开发板,让你拥有集成 TCP/IP 协议栈,做到网络通信,
在极小板型下引出14 个多功能 GPIO 引脚,PCB边缘采用半孔工艺,可以轻松快捷集成到项目中。
产品特性
- 采用了 Raspberry Pi 官方设计的 RP2040 微控制器芯片
- 搭载了双核 ARM Cortex M0 + 处理器,运行频率高达 133MHz 灵活时钟
- 内置了 264KB 的 SRAM 和 4MB 的板载 Flash
- 板载 CH9120,集成 TCP/IP 协议栈
- 可通过上位机软件、串口命令设置芯片工作模式、端口、IP 等网络参数
- 邮票孔设计,可直接焊接集成到用户自主设计的底板上
- 可通过 USB 识别为大容量存储器进行拖放式下载程序
- RP2040 的 14 个 GPIO 引脚引出
- 多种硬件外设
- 1 个 SPI(SPI0)
- 2 个 I2C
- 2 个 UART
- 3 个 12 位 ADC
- 13 个可控 PWM 通道
- 片内内置温度传感器
- 8 个可编程 I/O (PIO) 状态机,用于自定义外设支持
引脚分布
RP2040-ETH 使用教程
环境搭建
C/C++ 开发环境安装 | * 使用例程与教程之前,需要搭建开发环境,并且学会工程的基础使用方法 |
|
MicroPython 开发环境安装 | *去Thonny 官网下载适合自己系统的软件- 安装完成之后,第一次要配置语言和主板环境,由于我们是为了使用Pico,所以注意主板环境选择Raspberry Pi 选项
- 配置Micrpython环境及选择Pico端口。
- 先将Raspberry Pi Pico 接入电脑,左键点击Thonny右下角的配置环境选项--》选择configture interpreter
- 在弹出的窗口栏中选择MicroPython(Raspberry Pi Pico),同时选择对应的端口。
- 点击ok后返回到Thonny主界面,下载固件库到Pico里面,然后点击停止按钮,在Shell窗口中即可显示当前使用到的环境。
- Pico在windows下载固件库方法: 连接电脑后,同时按住BOOT跟RESET键后,先松开RESET,再松开BOOT再,电脑会出现一个可移动磁盘,将固件库复制进去即可。
- 树莓派系统跟windows系统操作类似,树莓派需要安装带桌面的最新版本系统即可
|
|
|
硬件连接
RP2040连接引脚对应关系CH9120 | RP2040 | 功能 |
RXD | GP21 | 串行数据输入 |
TXD | GP20 | 串行数据输出 |
TCPCS | GP17 | TCP客户端模式下,连接状态指示,低电平表示连接成功 |
CFG0 | GP18 | 网络配置使能脚,低电平时,进入串口配置模式 |
RSTI | GP19 | 复位,低电平有效 |
例程使用
例程简介
- C/C++的设置IP、网关、子网掩码、端口号和串口波特率都在CH9120.c或者CH9120.cpp文件中,按照自己实际需求进行修改即可:
UCHAR CH9120_LOCAL_IP[4] = {192, 168, 1, 200}; // LOCAL IP
UCHAR CH9120_GATEWAY[4] = {192, 168, 1, 1}; // GATEWAY
UCHAR CH9120_SUBNET_MASK[4] = {255, 255, 255, 0}; // SUBNET MASK
UCHAR CH9120_TARGET_IP[4] = {192, 168, 1, 10}; // TARGET_IP
UWORD CH9120_PORT1 = 1000; // LOCAL PORT1
UWORD CH9120_TARGET_PORT = 2000; // TARGET PORT
UDOUBLE CH9120_BAUD_RATE = 115200; // BAUD RATE
#设置CH9120工作模式在void CH9120_init(void)函数中,结合头文件定义的模式,选择需要的即可:
CH9120_TX_4_bytes(TCP_CLIENT, Mode1); //设置模式 0x00:TCP 服务器 0x01:TCP 客户端 0x02:UDP 服务器 0x03:UDP 客户端
#头文件已定义,可以直接使用
#define TCP_SERVER 0
#define TCP_CLIENT 1
#define UDP_SERVER 2
#define UDP_CLIENT 3
- micropython的设置工作模式、IP、网关、子网掩码、端口号和串口波特率都在py文件中:
MODE = 1 #0:TCP 服务器 1:TCP 客户端 2:UDP 服务器 3:UDP 客户端
GATEWAY = (192, 168, 1, 1) # GATEWAY
TARGET_IP = (192, 168, 1, 1)# TARGET_IP
LOCAL_IP = (192, 168, 1,200) # LOCAL_IP
SUBNET_MASK = (255,255,255,0) # SUBNET_MASK
LOCAL_PORT1 = 1000 # LOCAL_PORT1
TARGET_PORT = 2000 # TARGET_PORT
BAUD_RATE = 115200 # BAUD_RATE
- 第一步设置完之后,会进入的收发模式,CH9120会将接收到的信息,再发送回去(仅限Acsll码字符串)
树莓派环境下
cd ~
sudo wget https://www.waveshare.net/w/upload/8/88/RP2040_ETH_CODE.zip
unzip RP2040_ETH_CODE.zip
cd ~/RP2040_ETH_CODE
C
- 以下教程为在树莓派上操作,但由于cmake的多平台、可移植的特点,在PC上也是能成功编译,但操作略有不同,需要您自行判断。
- 进行编译,请确保在C/RP2040-ETH-Demo/build/目录下:
- 进入build目录,并添加SDK:
- 其中 ../../pico-sdk 是你的SDK的目录。
cd C/RP2040-ETH-Demo/build/
export PICO_SDK_PATH=../../pico-sdk
#注意:务必写对你自己的SDK所在路径
cmake ..
#执行make生成可执行文件,第一次编译时间比较久
make -j9
#编译完成,会生成uf2文件。
- 将RP2040-ETH连接树莓派后,同时按住BOOT跟RESET键后,先松开RESET,再松开BOOT再,电脑会出现一个可移动磁盘,将固件库复制进去即可。
cp main.uf2 /media/pi/RPI-RP2/
Python
- RP2040-ETH连接树莓派后,同时按住BOOT跟RESET键后,先松开RESET,再松开BOOT再,电脑会出现一个可移动磁盘
- 将~/RP2040_ETH_CODE/Python/rp2-pico-20230209-unstable-v1.19.1.uf2 文件拷入RP2040中。
- 在树莓派上打开Thonny IDE (点击树莓logo -> Programming -> Thonny Python IDE ),你可以在Help->About Thonny查看版本信息
- 以确保你的版本是有Pico支持包的,同样你可以点击Tools -> Options... -> Interpreter选择MicroPython(Raspberry Pi Pico 和ttyACM0端口
如图所示:
如果你当前的Thonny版本没有pico支持包,输入以下指令来更新Thonny IDE
sudo apt upgrade thonny
3.点击File->Open...->~/RP2040_ETH_CODE/Python/RP2040-ETH-Demo.py,运行脚本即可
Windows环境下
C
- 先安装Visual Studio Code
- 安装完成后,打开Visual Studio Code 拓展界面(快捷键Ctrl+Shift+X)
- 输入CMake Tools并安装
- 按F1输入open settings UI,打开设置UI界面
- 搜索cmake.configureEnvironment
- 点击添加项
Item | Value |
PICO_SDK_PATH | [存放PICO-SDK路径]\pico-sdk |
- “[存放PICO-SDK路径]\pico-sdk”为您存放sdk的路径,填写不对将无法编译
- 再搜索cmake.generator,填入:
NMake Makefiles
#Ctrl+S保存设置,清空build文件夹,重启Visual Studio Code并重新编译
- 点击下载程序,解压后进入RP2040_ETH_CODE的文件夹中。
- 进入RP2040_ETH_CODE\C\RP2040-ETH-Demo后,使用vs code打开工程
- 将build中的main.uf2文件拷贝带Pico中,就会自动运行程序了。
Python
- RP2040-ETH连接电脑后,同时按住BOOT跟RESET键后,先松开RESET,再松开BOOT再,电脑会出现一个可移动磁盘
- 2.将Python目录中rp2-pico-20230209-unstable-v1.19.1.uf2 文件复制到识别的可移动盘(RPI-RP2)中
- 3.打开Thonny IDE(注意:要使用最新版本的Thonny,否则是没有Pico的支持包的,当前Windows下的最新版本为v3.3.3)
- 4.点击工具->设置->解释器,如图所示选择Pico及对应的端口
- 5.文件->打开->RP2040-ETH-Demo.py,点击运行即可,如下图所示:
上位机配置
- 如果想通过上位机配置,不通过串口命令去控制,可以参考以下方法,此方法只适用于windows系统:
- 下载网络配置工具
- 给RP2040-ETH连接上电源跟以太网
- 打开网络配置工具
- 搜索设备->双击搜索到的设备->设置自己需要的信息->配置设备参数->等待重启完成
- 执行完上图的1和2,然后配置红框中的参数,然后执行3,等待4出现即可