创建自己的树莓派Pico-C/C++项目
本帖最后由 skyone 于 2021-4-11 11:54 编辑继Win10下配置树莓派Pico的MicroPython与C环境后的又一篇介绍树莓派Pico的文章
https://i.w3tt.com/2021/04/11/qba3p.gif
刚配置完环境就发现网上的教程全是教你使用树莓派官方的示例项目,然而几乎没有关于创建自己项目的教程,既然如此,我来吧
经过不懈的努力实际上是忘了弄。。,终于完成了树莓派Pico的C/C++项目的创建,对,你没听错,树莓派Pico C/C++项目的创建相对于minpython或Arduino来说是非常难的,尤其是在Windows环境下还有几个令人绝望的坑。废话不多说,开始这篇文章。
写在前面
这篇文章仅适用于Windows系统,要求
[*]安装了Python3且已经加入环境变量
[*]安装并配置完成了Git
[*]安装了CMake并加入了环境变量
[*]安装了graphviz并加入了环境变量(重点)
[*]安装了mingw64并加入了环境变量
[*]安装了gcc-arm-none-eabi
[*]VSCode或者CLion(推荐后者)
http://www.sci-fifans.net/static/image/hrline/1.gifhttp://www.sci-fifans.net/static/image/hrline/1.gif
clone树莓派官方仓库
需要clone两个仓库,都在GitHub上
CMD切换到一个你觉得合适的文件夹,记住文件夹目录,输入命令
<blockquote>git clone git@github.com:raspberrypi/pico-sdk.git
由于众所周知的原因,最近GitHub非常不稳定,不过使用SSH克隆没多大问题
static/image/hrline/1.gifhttp://www.sci-fifans.net/static/image/hrline/1.gif
创建C/C++项目
树莓派Pico的官方SDK使用CMake作为构建系统,且项目配置特别复杂,官方非常贴心的提供了Python写的可以选择GUI界面的构建器,赞?
首先打开命令行,进入刚刚Git克隆的pico-project-generator目录,尝试运行:
python ./pico_project.py --gui
当然,运行失败。。。
显示未配置PICO_SDK_PATH,好,这个好解决,一下两种方法任选其一
方法一:设置临时环境变量
这种方法关闭powershell后环境变量就失效了
使用powershell打开pico-project-generator目录运行:
<blockquote>$env:PICO_SDK_PATH=你克隆的pico-sdk目录方法二:设置永久环境变量
很多人在更新win10 20H2后找不到环境变量在哪设置,我姑且再提一下
打开win10的设置-->系统-->关于-->高级系统设置-->环境变量,按如下方法配置
https://i.w3tt.com/2021/04/11/qWuWL.png
重新打开cmd或powershell
再次运行
python ./pico_project.py --gui
OK,不论你用哪种方法,现在应该看到如下界面:
https://i.w3tt.com/2021/04/11/qWIgi.png
嗯,也不是很难嘛,不过你以为这就完了?大坑还在后面!
随意填一下这下表单,因为你不可能创建成功。。。
点击OK,弹出一个窗口,然而,什么都没出现。一看命令行,不对劲,出现了一堆错误,最后显示找不到文件。
重点来了!
如果你不是刚刚安装graphviz的,请卸载重装
然后,打开Python安装目录/Lib/subprocess.py
将Popen类的构造函数的参数的shell=False改为shell=True,如下:
<blockquote>def __init__(self, args, bufsize=-1, executable=None,
介绍一下原因该类在运行时需要调用`echo`命令,这在linux下当然没问题,因为linux下`echo`是一个可执行文件,而Windows下则是一个命令行内置的命令,由此导致找不到文件,我们通过更改源代码,让程序打开一个shell再运行echo就没问题了。
OK,这下终于完成了
python ./pico_project.py --gui
关于下图怎么配置,不在本篇文章的介绍范围内实际上是有些我也不懂。。
https://i.w3tt.com/2021/04/11/qWIgi.png
配置好选项后,依旧点击OK,这次没有报错了,虽然我操作时弹出的窗口里面还是乱码,但项目已经创建成功了
http://www.sci-fifans.net/static/image/hrline/1.gifhttp://www.sci-fifans.net/static/image/hrline/1.gif
开始开发吧
快使用VSCode或CLion开始开发你的树莓派Pico C/C++项目吧~~~
开发环境没配置好的请看Win10下配置树莓派Pico的MicroPython与C环境
特别注意!配载永久环境变量后CLion不需要再配置项目,直接打开文件夹就可以开发了
https://i.w3tt.com/2021/04/11/qW3sX.png
https://i.w3tt.com/2021/04/11/qbMrx.png
https://i.w3tt.com/2021/04/11/qbOGj.png
令人无力吐槽的
代码块
{:5_208:} 芜湖!考虑一起来干点大事嘛!{:5_220:} Alnitak主管 发表于 2021-4-11 21:01
芜湖!考虑一起来干点大事嘛!
比如说啥事呢?{:5_206:} skyone 发表于 2021-4-11 23:35
比如说啥事呢?
加入我和阿方的极客团队{:5_205:} Alnitak主管 发表于 2021-4-13 20:53
加入我和阿方的极客团队
需要帮忙随时找我就可以啦,但加入团队的话,愿意肯定是愿意的,但大一下实在太忙了,高数、现代、大物、理论力学差点把我整自闭{:9_504:},课余时间没有多少,肯定没办法进行很多合作,如果这样也没问题的话,加入倒是可以呀{:9_563:}。
另外,关于我能帮上什么忙,我最近在弄一些API之类的,基于Python或JS,比如GiteaWeb钩子实现和并请求邮件提醒、基于MySQL和阿里云函数计算的简单评论系统(鸽了一个多月了),有类似这方面问题我都可以试试,但页面设计真的不擅长,CSS会一些,但应用得一团糟{:9_531:},总之,我是个啥都会一点但也啥都不会的“万金油” skyone 发表于 2021-4-14 13:01
需要帮忙随时找我就可以啦,但加入团队的话,愿意肯定是愿意的,但大一下实在太忙了,高数、现代、大物、 ...
捉虫:线代而不是现代(doge)
页:
[1]