【RP2040】香瓜树莓派RP2040之搭建开发环境(windows)

news2024/10/5 13:03:21

本文最后修改时间:2022年08月23日 01:57

一、本节简介

本节以树莓派pico开发板为例,搭建windows下的编译环境。

二、实验平台

1、硬件平台

1)树莓派pico开发板

①树莓派pico开发板

②micro usb数据线

2)电脑

2、软件平台

暂无

三、版权声明

1)作者:甜甜的大香瓜

2)声明:喝水不忘挖井人,转载请注明出处。

3)纠错/业务合作:897503845@qq.com

4)香瓜嵌入式之树莓派群:512598061

5)本文出处:原创连载资料《简单粗暴学树莓派》

6)完整开源资料下载地址(电脑端打开):

opengua.taobao.com

四、实验前提

1、在进行本文步骤前,请先阅读以下章节:

1)《简单粗暴学树莓派》的“第一章至第二章”章节

2)《Raspberry Pi Pico : C/C++ SDK and Toolchain Setup in Windows 10》:

Raspberry Pi Pico : C/C++ SDK and Toolchain Setup in Windows 10 - Arnab Kumar Das

3)《Raspberry-Pi-PICO系列--第四篇 开发环境搭建-Windows系统 + Visual Studio Code开发》:Raspberry-Pi-PICO系列--第四篇 开发环境搭建-Windows系统 + Visual Studio Code开发_coder.mark的博客-CSDN博客

4)《getting-started-with-pico》的《9.2. Building on MS Windows》

2、在进行本文步骤前,请先实现以下章节:

暂无

五、基础知识

1、pico是什么?

答:

pico是树莓派公司在21年1月出的一款单片机开发板,价格大概在4美金(20多元人民币)。

目前型号有pico、pico H(pico焊上插针)、pico W(pico基础上增加wifi模块)、pico WH(pico W焊上插针)。

 

2、pico能在几个平台做开发?

答:

可以在树莓派(比如树莓派4等)、mac、windows下做开发。

3、windows下需要装哪些软件?

答:

其实要下载安装的软件有很多,上图的只是让你能命令行编译的软件。详情看本文具体操作步骤(或看目录快速浏览)。

六、实验步骤

1、安装Arm GNU Toolchain

1)下载链接

Downloads | GNU Arm Embedded Toolchain Downloads – Arm Developer

 

 2)安装注意事项

 

这里特别注意要打上勾。

可以在命令行里输入“arm-none-eabi-gcc -v”来判断是否装好。

2、安装CMake

1)下载链接

https://objects.githubusercontent.com/github-production-release-asset-2e65be/537699/658da1cd-1df4-4ba8-ae1f-24f8f742f29d?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20220805%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20220805T124236Z&X-Amz-Expires=300&X-Amz-Signature=2fd92b6a8dd08e92e247972e293098ef571ac9f44bce61c1a15171fe4ede8d76&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=537699&response-content-disposition=attachment%3B%20filename%3Dcmake-3.24.0-windows-x86_64.msi&response-content-type=application%2Foctet-stream

 2)安装注意事项

需如上选择。

3、安装Visual Studio2022

1)下载链接

下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux

 2)安装注意事项

要注意文件很大,看看C盘够不够空间。

4、安装Python3.10

1)下载链接

Python Releases for Windows | Python.org

2)安装注意事项

 

5、安装Git

1)下载链接

https://git-scm.com/download/win

2)安装注意事项(其他按默认)

 

 

6、下载pico的SDK和例程

1)在D盘新建一个文件夹,命名为“GUA_PICO”。

2)在GUA_PICO里,点右键,选择“Git Bash Here”。

3)依次输入:

git clone -b master https://github.com/raspberrypi/pico-sdk.git

cd pico-sdk

git submodule update --init

cd ..

git clone -b master https://github.com/raspberrypi/pico-examples.git

7、设置SDK的环境变量

1)右键“我的电脑”属性,点击“高级系统设置”,点击系统属性里“高级”中的“环境变量”。

填入“PICO_SDK_PATH”、“D:\GUA_PICO\pico-sdk”

8、创建编译文件夹并编译

1)打开一个新的Developer Command Prompt for VS 2022。

2)输入:

D:

cd D:\GUA_PICO\pico-examples

mkdir build

cd build

cmake -G "NMake Makefiles" ..

nmake

其中nmake是编译所有例程,时间会比较久。

注意,如果更换了Arm GNU Toolchain的版本,需要删掉build文件夹里的东西,重新编译

注意:

如上图则表示“cmake -G "NMake Makefiles" ..”执行正确了。

如果是报错,有可能是环境变量的路径没设置对,或者要先把build文件夹内的文件删除干净。

如上图,就说明命令行的编译环境已建好。

9、安装Visual Studio Code

1)下载链接

https://code.visualstudio.com/download

2)安装注意事项

默认就有添加PATH,都按默认装即可。

10、配置Visual Studio Code

1)用Developer Command Prompt for VS 2022打开Visual Studio Code

注意这里不能直接打开VS CODE,一定要用命令行打开。

2)在VS CODE里按Ctrl + Shift + X,安装CMake Tool(注意不是CMake)

 

3)添加环境变量

点击右下角设置选择extensions setting

 

与前面一样填入“PICO_SDK_PATH”、“D: \GUA_PICO\pico-sdk”。如下图

 

往下找到Cmake: Generator,输入“NMake Makefiles”,然后关闭Settings。

4)安装cortex-Debug插件

11、使用VS CODE编译

导入工程,File->Open Folder,选择pico-examples的路径。香瓜的路径是“D:\ GUA_PICO\pico-examples”,如下图

 

 

点击“all”选择“blink”工程,我们只选择编译这个工程,否则时间非常久。如下图

此时可以随便修改一下blink(不改的话编译文件不会生成),点build编译,如下图

如果有弹出安装C的指令,点击安装

 

 

查看uf2编译文件的时间是否被更新了,如果更新了,说明编译成功,如下图

12、下载uf2编译文件到pico

1)按着PICO上的BOOTSEL按键,插入usb供电,然后松开。

2)电脑会弹出或识别出一个盘,将刚刚编译的blink.uf2放进新盘内,会自动关闭。

3)pico的led开始闪烁,说明代码已下载成功。

4)可通过调整LED的闪烁时间,来进一步验证是否下载的是自己修改的代码。

至此,就已经装好了VS CODE编译环境,接下来是实现仿真功能。

13、安装MSYS2

1)下载链接

https://www.msys2.org/

2)安装注意事项

全部默认安装后,在弹出的框内填入

pacman -Syu

 

 

装好后窗口会自动关闭,然后重新打开MSYS2。

输入

pacman -Su

 

安装完成后输入

pacman -S mingw-w64-x86_64-toolchain git make libtool pkg-config autoconf automake texinfo mingw-w64-x86_64-libusb gcc

然后要装很久……装好后手动关闭。

14、下载openocd编译文件并执行

1)将香瓜提供的openocd文件夹复制到“D: \GUA_PICO”下

2)打开x64版本的

输入指令(注意是“/”,不是“\”)

cd D:/GUA_PICO/openocd

./openocd.exe

15、下载picoprobe固件进pico

1)按着pico的BOOTSEL按键,插入USB,松开按键。等待电脑识别pico为一个盘。

2)将picoprobe固件拖拽进pico识别的盘里,会自动关闭,即下载成功。

 

16、安装Zadig驱动

1)下载地址

https://zadig.akeo.ie/

2)已下好picoprobe固件的pico,连接电脑。

3)

 

 

 

拔插pico的usb,查看驱动是否装好。

这样出现COM口就说明已经装好了。

17、VS debug环境配置

1)在pico-examples目录下右击鼠标, Git Bash Here

2)输入如下指令,会将pico-examples/ide内的文件拷贝到.vscode目录并修改

cp ide/vscode/launch-raspberrypi-swd.json .vscode/launch.json

 

3)用文本打开“D: \GUA_PICO\pico-examples\.vscode”路径下的launch.json文件,并改成如下图所示,图后附上修改后的代码

{

    // Use IntelliSense to learn about possible attributes.

    // Hover to view descriptions of existing attributes.

    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387

    "version": "0.2.0",

    "configurations": [

        {

            "name": "Cortex Debug",

            "cwd": "${workspaceRoot}",

            "executable": "${workspaceRoot}/build/blink/blink.elf",

            "request": "launch",

            "type": "cortex-debug",

            "servertype": "openocd",

            "device": "Pico2040",

            "runToMain": true,

            "configFiles": ["interface/picoprobe.cfg", "target/rp2040.cfg"],

            "searchDir": ["D:/GUA_PICO/openocd/tcl"],

            "svdFile": "D:/GUA_PICO/pico-sdk/src/rp2040/hardware_regs/rp2040.svd",

        }

    ]

}

注意searchDir是新加的,需要改成自己电脑中的路径。

4)修改Cortex-Debug插件的配置项目

添加如下路径(根据自己openocd.exe所在路径),修改后关闭,记得点保存

{

    "cmake.configureEnvironment": {

        "PICO_SDK_PATH": "D:\\GUA_PICO\\pico-sdk"

    },

    "cmake.generator": "NMake Makefiles",

    "cmake.configureOnOpen": true,

   

"cortex-debug.openocdPath":"D:/GUA_PICO/openocd/openocd.exe",

    "cortex-debug.gdbPath": "arm-none-eabi-gdb",

}

18、下载libusb

1)下载地址

https://libusb.info/

2)复制文件,具体操作如下图

19、下载python27.dll

1、下载并复制“python27.dll”到“C:\Windows\SysWOW64”

2、使用命令行执行:

regsvr32 python27.dll -s

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/888928.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

绝对值函数的可导性

绝对值函数的可导性 声明:下面截图来自《考研数学常考题型解题方法技巧归纳》

无涯教程-Perl - syswrite函数

描述 此函数尝试将SCALAR中的LENGTH个字节写入与FILEHANDLE相关的文件。如果指定了OFFSET,则从提供的SCALAR中的OFFSET字节中读取信息。该函数使用C /操作系统的write()函数,该函数绕过普通缓冲。 语法 以下是此函数的简单语法- syswrite FILEHANDLE, SCALAR, LENGTH, OFFS…

[oneAPI] 手写数字识别-GAN

[oneAPI] 手写数字识别-GAN 手写数字识别参数与包加载数据模型训练过程结果 oneAPI 比赛:https://marketing.csdn.net/p/f3e44fbfe46c465f4d9d6c23e38e0517 Intel DevCloud for oneAPI:https://devcloud.intel.com/oneapi/get_started/aiAnalyticsToolki…

高德地图1.4.15楼层处理

前因: 接入了高德1.4.15JS API的项目中使用了mapStyle: ‘amap://styles/grey’,在这个模式下楼层几近透明,方案一是升级到2.0然后加wallColor (表示建筑物墙面的颜色)和roofColor (表示建筑物屋顶的颜色)…

机器学习与模型识别1:SVM(支持向量机)

一、简介 SVM是一种二类分类模型,在特征空间中寻找间隔最大的分离超平面,使得数据得到高效的二分类。 二、SVM损失函数 SVM 的三种损失函数衡量模型的性能。 1. 0-1 损失: 当正例样本落在 y0 下方则损失为 0,否则损失为…

uniapp小程序实现上传图片功能,并显示上传进度

效果图: 实现方法: 一、通过uni.chooseMedia(OBJECT)方法,拍摄或从手机相册中选择图片或视频。 官方文档链接: https://uniapp.dcloud.net.cn/api/media/video.html#choosemedia uni.chooseMedia({count: 9,mediaType: [image,video],so…

如何最大利用WhatsApp高效拓客引流?

对话式商务盛行,WhatsApp是许多国家最受欢迎的聊天应用程序,包括巴西、德国、印尼、泰国、新加坡等。用户渗透率超过80%,作为一个无敌社交APP,自然也是跨境业务的首选。 以下是使用 WhatsApp 进行电子商务时需要记住的一些策略。…

做好需求管理的四个最佳实践

改进您的需求管理过程可以对你的开发过程产生重大影响,所带来的益处包括:提高效率、缩短上市时间,以及节省宝贵的预算和资源。需求是最能向工程师说明要构建什么,以及向测试人员说明要测试什么的信息。 需求具有三个主要功能&…

数据结构——栈(C语言)

需求:无 栈的概念: 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端为栈底。栈中的数据元素遵守后进先出(LIFO)原则。压栈&…

FPGA应用学习笔记-----布线布局优化

优化约束: 设置到最坏情况下会过多 布局和布线之间的关系: 最重要的是与处理器努力的,挂钩允许设计者调整处理器努力的程度 逻辑复制: 不能放置多个负载,只使用在关键路径钟 减少布线延时,但会增加面积&a…

大规模SFT微调指令数据的生成

前言 想要微调一个大模型,前提是得有一份高质量的SFT数据,可以这么说其多么高质量都不过分,关于其重要性已经有很多工作得以验证,感兴趣的小伙伴可以穿梭笔者之前的一篇文章: 《大模型时代下数据的重要性》&#xff…

【AI】百度AI助力开发,测试一下百度搜索的AI能力如何

百度搜索页面有个AI对话,点击进去看看: 是不是文心一言?它说不是。 测试一下辅助写代码功能: 1、写个爬虫: 代码: import requests from bs4 import BeautifulSoup# 目标网站的URL url "http:/…

Ubuntu虚拟机网络无法连接的几种解决方法

虚拟机网络无法连接的几种解决方法 问题状况描述可能的解决方案 问题状况描述 Ubuntu虚拟机没有网络,无法ping通互联网,左上角网络连接图标消失等情况可能的解决方案 1.重启虚拟机网络编辑器 2.重启虚拟机网络适配器 3.重启虚拟机网络服务器1.重启网络…

优思学院|五大工具:APQP、FMEA、MSA、SPC、PPAP

在现代制造业中,质量是企业成功的关键之一。为了确保产品和过程的质量,需要采用一系列有效的工具和方法。APQP、FMEA、MSA、SPC和PPAP被认定为质量管理体系的五大核心工具,这些工具不仅在汽车行业中得到广泛应用,还被其他制造领域…

生信豆芽菜-分组比较的表格

网址:http://www.sxdyc.com/visualsCliTableCompare 1、数据准备 两列的数据,最后比较这两组的样本分布 2、选择两个分组的颜色,有几个就选几个颜色,表头颜色,图片的宽度和高度,提交等待运行成功 3、结…

PHP入门基础教程 - 专栏导读

🏆作者简介,黑夜开发者,全栈领域新星创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责…

148. 排序链表

题目描述 给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。 示例 1: 输入:head [4,2,1,3] 输出:[1,2,3,4]示例 2: 输入:head [-1,5,3,4,0] 输出:[-1,0,3,4,5]示例 3&#…

【仿写tomcat】四、解析http请求信息,响应给前端,HttpServletRequest、HttpServletResponse的简单实现

思考 在解析请求之前我们要思考一个问题,我们解析的是其中的哪些内容? 对于最基本的实现,当然是请求类型,请求的url以及请求参数,我们可以根据请求的类型作出对应的处理,通过url在我们的mapstore中找到se…

计算机控制技术|17/8|11:32

目录 1. 学习计算控制系统需要的相关知识有哪些? 2. 计算机控制系统是什么? 3. 计算机控制系统的主要研究内容是什么? 4. 计算机控制系统的主要特点是什么? 5. 计算机控制系统的性能指标主要有哪些? 6. 计算机控…

学生宿舍管理系统(前端java+后端Vue)源码

完整资料下载链接 界面介绍 登录 宿舍管理 菜单管理 角色管理 ###班级管理