2021年3月27日

RaspberryPi Pico C++ IDE開發實做 (QtCreator)

前言:

RaspberryPi出Pico版本,開發比較接近Arduino,是non-OS的系統開發。
Pico提供C/C++和MicroPython開發方式。
因為我比較習慣用QtCreator開發C/C++程式,因此嘗試用QtCreator當IDE。

系統環境:

Ubuntu 18.04

套件安裝:

1. cmake安裝
先參考https://apt.kitware.com/透過下面步驟安裝最新版cmake。

1a. 新增kitware相關的key
# wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /etc/apt/trusted.gpg.d/kitware.gpg >/dev/null

1b. 新增kitware ppa
# apt-add-repository 'deb https://apt.kitware.com/ubuntu/ bionic main'
# apt-get update

1c. 安裝cmake
# apt install cmake

2. 安裝QrCreator和Pico需要的Cross-Compiler
# apt install git qtcreator gcc-arm-none-eabi libnewlib-arm-none-eabi

3. QtCreator新增專案

3a. 開啟QtCreator

3b. 建立Non-Qt C++ Application專案




3c. 

3d. 選擇CMake

3e. 選擇預設Kit

3f. 目前不使用版本控制





4. 在目錄內git下載pico-sdk

$ cd /tmp/my_pico_cpp_test
$ git clone https://github.com/raspberrypi/pico-sdk
$ cd pico-sdk
$ git submodule update --init

5. 複製pico_sdk_import.cmake (參考pico-sdk github)

$ cd /tmp/my_pico_cpp_test
$ cp pico-sdk/external/pico_sdk_import.cmake ./

6. 修改CMakeLists.txt (參考pico-sdk github)


PS1: 專案內所有cpp檔案都加在 add_executable() 內
PS2: 主程式和產出的uf2名稱加在 add_executable()、target_link_libraries()、pico_add_extra_outputs() 三處內

7. QtCreator新增C++ Class

7a. 檔案 -> 新增檔案或專案 -> C++ -> C++ Class


7b. 設定LedWriter Class













8. 參考blink.c實做LED GPIO Output



9. 實做main.cpp

10. 建置專案

執行
Rescan Project
Clear CMake Configure
全部清理
清理專案
全部建置

11. 產出檔案


12. 燒錄檔案到RaspberryPi Pico

參考Pico官方文件
12a. Pico USB拔除
12b. 按著白色按鈕
12c. 插入Pico USB到電腦
12d. 跳出RPI-RP2 USB資料夾
12e. 把piblink.uf2 檔案複製到上述資料夾內
12f. Pico會自動Reset,並執行piblink.uf2



沒有留言: