556|0

862

帖子

2

TA的资源

纯净的硅(初级)

楼主
 

【得捷Follow me第4期】W5500-EVB-Pico platform io方式开发环境踩坑记录 [复制链接]

 

PlatformIO 是一个用于物联网开发的开源生态系统。它提供跨平台的开发环境和统一的调试器,还支持远程单元测试和固件更新...

PlatformIO 简介

PlatformIO 是独立于平台运行的,实际上它只依赖于 python,然而 python 在 macOS、linux 和 windows 都能完美适配. 也就是说 PlatformIO 的工程从一个电脑很容易迁移到另一个电脑,只需要拷贝再使用 PlatformIO 就能完美打开。

目前官方推荐的 IDE 使用方案就是 VSCode + PlatformIO IDE 插件

1、 准备:

(1)安装VSCode

(2)VSCode安装插件PlatformIO

(3)连接pico至pc

2、 通过project wizard创建项目

(1)打开PlatformIO插件home页

在project wizar中 board选择Raspberry Pi Pico,framework仅支持arduino,name中输入项目名称。第一次使用pico,单击finish按钮后,等待下载安装pico固件包和工具链。

 

 

(2)编辑代码

待工程创建成功后,打开main.cpp 编辑代码

因为增加了智能代码提示,编辑代码的时候,要舒服很多。

 

#include <Arduino.h>

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
  Serial.begin(115200);
}

void loop() {
  Serial.println("helloworld,PICO");
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);
}

(3)build工程

 

单击页面最下方的build按钮,编译工程,代码比较简单,没有意外的话,就通过了。

 

(4)下载

下载有两种方式,

a. 以bootsel方式启动pico,将build后生成的uf文件手动拖放到u盘中。

这种方式,需要手动操作,稍微麻烦一些。

 

b. 在vscode中单击“upload”一键下载

 

但是不出意外的话,意外就发生了。

upload默认使用picotool方式,单击upload后,会强制pico重启到bootsel模式,但是bootsel模式下pico默认在pc中是usbstorage模式,自动下载无法下载进去。

 

这时候就需要使用zadiag工具修改这个时候的usb设备驱动 修改为WinUSB驱动。

  因为pico两种启动模式下,分别是两类USB设备。这里总结一下:

在vscode platform io平台下,

bootsel模式下,在设备列表中共有两个设备RP2 Boot (Interface 0) 和RP2 Boot (Interface 1),需要将两个设备依次修改为如下的驱动(原驱动为USBSTOR(V10.0.))

 

正常启动模式下,为RaspberryPi Pico (Interface 0),使用USB Serial(CDC)驱动,驱动安装后,再次查看显示usbser (v1.0.0.0),也就是下图中①和②处驱动是一致的。

 

驱动修改之后,就可以一键自动下载了。

 
3. 总结
目前platform io官方仅支持两款开发板,还未支持W5500-EVB-Pico,这个是比较遗憾的。要想使用W5500网络协议栈实现网络部分:
两个思路,1)将arduino中的库作为第三方自定义库,复制到platform io项目文件夹中;
2)自定义开发板并将arduino pico固件移植到platform io中。
 
有时间了再战,未完待续......
点赞 关注
个人签名水不撩不知深浅 人不拼怎知输赢
 
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表