赞
踩
目录
树莓派-Pico是树莓派基金会推出的第一款微控制器领域的树莓派低成本开发板,售价仅为4美元,它包括RP2040、2MB闪存和一个支持1.8-5.5V输入电压的电源芯片。RP2040是树莓派开发的全新芯片。
RP2040有三个主要设计目标:
我们最终获得了一个功能强大的芯片,Die面积仅为2平方毫米,采用40 nm工艺,封装尺寸为7×7 mm QFN-56封装中。
RP2040具有以下功能:
RP2040具有两个快速内核和大量片上RAM,是机器学习应用程序的绝佳平台。
树莓派官方基于RP2040提供了完整的C SDK、MicroPython、Fuzix系统,适合不同级别的玩家,可玩性非常高。
推荐新手上路使用C SDK和Ubuntu系统,官方C SDK采用CMake构建体系,熟悉之后操作也较简单,可应用的demo也较多。
先确定Ubuntu系统下是否已经安装CMake、python 、git等常用工具,如果没有可使用如下命令安装。
sudo apt install git cmake python3
- git clone --recursive https://github.com/raspberrypi/pico-sdk
- git clone --recursive https://github.com/raspberrypi/pico-examples
https://datasheets.raspberrypi.org/pico/raspberry-pi-pico-c-sdk.pdf
可使用以下2种方法,推荐方式2,灵活性较高
1、自动安装
sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib
2、手工安装
交叉编译器下载:
下载完成后,在ubuntu命令行下解压/opt目录下:
sudo tar xvf gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2 -C /opt
解压成功后,编译/etc/environment文件,在文件末尾加上:
:/opt/gcc-arm-none-eabi-10-2020-q4-major/bin
并运行source命令使修改生效。
souce /etc/environment
(1)Pico采用sdk和应用分离思路,编译应用前需先配置Pico SDK路径,进入pico-example目录,配置输入如下命令设置PICO_SDK路径,路径请根据个人情况修改
export PICO_SDK_PATH=/home/share/samba/pico/pico-sdk
(2)生成makefile:按照cmake的习惯,在根目录下创建build目录,并在build目录下输入cmake ..命令,生成makefile。
mkdir build && cd build && cmake ..
如果按照上面的流程正常操作,会出现如下成功提示。
- PICO_SDK_PATH is /home/share/samba/pico/pico-sdk
- PICO platform is rp2040.
- -- The C compiler identification is GNU 10.2.1
- -- The CXX compiler identification is GNU 10.2.1
- -- The ASM compiler identification is GNU
- -- Found assembler: /opt/gcc-arm-none-eabi-10-2020-q4-major/bin/arm-none-eabi-gcc
- Build type is Release
- Defaulting PICO target board to pico since not specified.
- Using board configuration from /home/share/samba/pico/pico-sdk/src/boards/include/boards/pico.h
- -- Found Python3: /usr/bin/python3.8 (found version "3.8.10") found components: Interpreter
- TinyUSB available at /home/share/samba/pico/pico-sdk/lib/tinyusb/src/portable/raspberrypi/rp2040; enabling build support for USB.
- cyw43-driver available at /home/share/samba/pico/pico-sdk/lib/cyw43-driver
- lwIP available at /home/share/samba/pico/pico-sdk/lib/lwip
- -- Configuring done
- -- Generating done
- -- Build files have been written to: /home/share/samba/pico/pico-examples/build
(3)在build目录下输入make命令生成可执行文件。耐心等待几分钟,会在build目录下生成所有example的可执行文件
其中uf2后缀文件为Pico特有的USB存储器模式下可执行文件。
(4)错误分析
错误1:未配置PICO_SDK路径
- CMake Error at pico_sdk_import.cmake:55 (message):
- SDK location was not specified. Please set PICO_SDK_PATH or set
- PICO_SDK_FETCH_FROM_GIT to on to fetch from git.
- Call Stack (most recent call first):
- CMakeLists.txt:4 (include)
-
-
- -- Configuring incomplete, errors occurred!
错误2:未配置交叉编译器
- PICO_SDK_PATH is /home/share/samba/pico/pico-sdk
- PICO platform is rp2040.
- CMake Error at /home/share/samba/pico/pico-sdk/cmake/preload/toolchains/find_compiler.cmake:28 (message):
- Compiler 'arm-none-eabi-gcc' not found, you can specify search path with
- "PICO_TOOLCHAIN_PATH".
- Call Stack (most recent call first):
- /home/share/samba/pico/pico-sdk/cmake/preload/toolchains/pico_arm_gcc.cmake:20 (pico_find_compiler)
- /usr/share/cmake-3.16/Modules/CMakeDetermineSystem.cmake:93 (include)
- CMakeLists.txt:6 (project)
-
-
- CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
- CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
- CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
- CMake Error: CMAKE_ASM_COMPILER not set, after EnableLanguage
- -- Configuring incomplete, errors occurred!
Pico开发板提供了一个按钮和一个LED,该按钮可在引导时进入USB大容量存储模式(也可作为常规输入)。
在该模式下我们可以直接将可执行文件拖入该USB大容量存储器中,Pico即会自动重启进入运行模式。
(1)按住按钮,同时通过usb连接至PC;可在PC上发现一个“RPI-RP2”的磁盘。
每次进入USB大容量存储模式后,自动清空存储文件,进入默认状态。
(2)当前运行的example如blink,可执行文件位于pico-examples/build/blink目录下。
(3)拖动blink文件至RPI-RP2磁盘下,Pico自动重启。
(4)开发板上LED指示灯开始闪烁,example正常运行。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。