树莓派pico与RP2040学习(第一篇)
本文旨在简述如何基于Ubuntu系统搭建树莓派pico开发环境。
为了简化步骤,官方提供了脚本文件,打开命令行窗口,输入以下命令:
wget https://raw.githubusercontent.com/raspberrypi/pico-setup/master/pico_setup.sh
如果提示没有wget
,请输入以下命令:
sudo apt install wget
如果一切顺利,您可以在文件夹中看到一个名为pico_setup.sh
文件。下面需要赋予该文件以执行权限。
chmod +x pico_setup.sh
在执行该文件前,我建议您先对该文件进行一些修改。
先进入root,以便编辑该文件;
sudo su
gedit pico_setup.sh
打开文件后您将看到许多命令,等会儿执行该文件时将自动执行这些命令。先看到最后几行,建议您注释掉149行
到154行
,以及163行
到164行
。因为我在安装过程发现,这几行代码会报错,出现报错后面的命令就不会执行了。注释掉的这几行命令,前面的是下载vs code以及一些插件,后面的是对树莓派的设置,我们使用CLion开发,注释掉并不会影响的。
请使用#
进行注释,效果如下图所示。
现在我们可以开始运行该文件了。
./pico_setup.sh
运行结束后将看到一个名为pico
的文件夹,打开后如图所示。
如果您仔细对比,会发现您下载的pico
文件夹与我的有些不同,缺少了pico-project-generator
文件夹;我们现在来下载这个文件夹。
cd pico
git clone https://github.com/raspberrypi/pico-project-generator.git
echo "export PICO_SDK_PATH=这里填pico-sdk文件夹的路径" >> .bashrc
pico-sdk
文件夹在刚刚下载的pico
文件夹里,路径实例:
echo "export PICO_SDK_PATH=/home/cunjiang/Raspberry/pico/pico-sdk" >> .bashrc
现在,我们只需要下载CLion
,开发环境就基本搭建好啦。
点击以下链接前往下载CLion
。
下载链接
建议使用Toolbox App
进行下载。
进入第一章中下载的pico-project-generator
文件夹,在该文件夹中打开命令行窗口,输入:
./pico_project.py --gui
第一行,Project Name
是项目名称,Location
是项目的存储路径;再往下,可以勾选自己所需的库以及其他设置。这里我不勾选,保持默认。
点击OK
开始构建,出现以下提示即表示完成。
查看刚刚构建的文件夹,我们发现图标右下角有个锁。
进入管理员权限并修改权限:
sudo su
chmod -R 777 myTest/
此时打开CLion
,打开项目文件夹:
点击右上角的锤子,可以尝试构建,如上图所示。
现在,我们来生成一个可以下载到芯片上的二进制文件。在CLion
左下角的图标中找到终端,进入管理员权限,进入build
文件夹并进行`make’.
sudo su
cd build/
make -j12
make -j12
中,make
是要生成二进制文件,后面的j12
是多个编译器同时工作,不加-j12
其实也不影响,可以自己根据实际情况更改,可以更改为-j10``-j8
等。编译完如下图所示。
现在我们可以在文件夹中看到二进制文件。
我们可以在第一章中下载的pico
文件夹中找到一个示例,并将该示例复制过来:
/**
* Copyright (c) 2020 Raspberry Pi (Trading) Ltd.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
#include "pico/stdlib.h"
int main() {
#ifndef PICO_DEFAULT_LED_PIN
#warning blink example requires a board with a regular LED
#else
const uint LED_PIN = PICO_DEFAULT_LED_PIN;
gpio_init(LED_PIN);
gpio_set_dir(LED_PIN, GPIO_OUT);
while (true) {
gpio_put(LED_PIN, 1);
sleep_ms(250);
gpio_put(LED_PIN, 0);
sleep_ms(250);
}
#endif
}
按照上面的方法进行编译。
现在进行最后一步,将二进制文件下载到芯片。
拿出树莓派pico,按住板子上的按键,用USB线与电脑连接,会看到有一个新的文件夹。
将刚刚生成的二进制文件拖进这个文件夹,这个文件夹会自动消失,此时将看到板子上的LED灯闪烁。