피코 2(rp2350)가 출시되면서, pico_sdk C++ 개발환경 구축이 과거에 비해서 수월하게 바뀌었습니다.
1. VSCode 설치:
VSCode를 아직 설치하지 않았다면 공식 홈페이지에서 다운로드하여 설치합니다.
2. Raspberry Pi Pico 확장 설치:
VSCode 내에서 확장 탭을 열고 "Raspberry Pi Pico"를 검색하여 설치합니다.
3. C/C++ SDK 설정:
Raspberry Pi Pico C/C++ SDK 설치 및 빌드하기 위키독스에 따라 SDK를 설치하고 환경 변수를 설정합니다.
이 과정에서 필요한 툴체인 (ARM GCC, Windows Build Tools, MinGW GCC)을 설치하고, PATH 환경 변수에 추가해야 합니다.
# 새 프로젝트 샘플로 만들면 자동으로 다 설치됩니다. 이것은 스킵하시면 됩니다.
4. 새 프로젝트 생성:
VSCode에서 새로운 프로젝트를 생성하고, 프로젝트 폴더에 SDK 관련 파일들을 복사합니다.
Vs Code에서 환경 설정을 마친 후에는, 아직 pico2에 관한 sdk, 컴파일러 등이 설치되어 있지 않습니다.
뭔가 하나의 프로젝트를 새로 만들면 그때, 자동으로 업데이트됩니다.
그러니, 샘플 프로그램을 하나 짜보아야 합니다.
좌하단의 IC모양의 것을 눌러서 C++ project를 하나 추가해서 실행까지 해보도록 하겠습니다.
아래 그림에서 설정완료 후 Create 버튼을 누릅니다.
그러면 필요한 것들이 자동으로 설치되고 메시지들을 잘 보아서 눌러줄 것 눌러주시면 됩니다.
testuart.cpp의 내용처럼 코드가 자동생성되어 있을 것입니다.
1초마다 usb 시리얼포트로 메시지를 출력합니다.
#include <stdio.h>
#include "pico/stdlib.h"
#include "hardware/uart.h"
// UART defines
// By default the stdout UART is `uart0`, so we will use the second one
#define UART_ID uart1
#define BAUD_RATE 115200
// Use pins 4 and 5 for UART1
// Pins can be changed, see the GPIO function select table in the datasheet for information on GPIO assignments
#define UART_TX_PIN 4
#define UART_RX_PIN 5
int main()
{
stdio_init_all();
// Set up our UART
uart_init(UART_ID, BAUD_RATE);
// Set the TX and RX pins by using the function select on the GPIO
// Set datasheet for more information on function select
gpio_set_function(UART_TX_PIN, GPIO_FUNC_UART);
gpio_set_function(UART_RX_PIN, GPIO_FUNC_UART);
// Use some the various UART functions to send out data
// In a default system, printf will also output via the default UART
// Send out a string, with CR/LF conversions
uart_puts(UART_ID, " Hello, UART!\n");
// For more examples of UART use see https://github.com/raspberrypi/pico-examples/tree/master/uart
while (true) {
printf("Hello, world!\n");
sleep_ms(1000);
}
}
그러면 이것을 상단 실행에서 디버깅 없이 실행 선택해서 컴파일합니다.
그러면, 해당 경로에 보면
testuart.uf2를 피코 2에 복사하면 됩니다.
피코 펌웨어 다운로드 디스크 생성하기
피코는, 외부의 flash rom에 내용을 넣기 위해서 피코의 BOOT라는 버튼이 있습니다.
그것을 누르고 재부팅을 시키면 외부의 flash rom으로 동작을 안 하고 피코 칩내부의 기본으로 장착된 펌웨어가 실행됩니다. 기본으로 장착된 펌웨어의 기능은 외부 플래시롬을 하나의 디스크로 만들어 보여주고, 사용자가 작성한 펌웨어를 그 디스크에 던져 놓으면 자동으로 그것을 실행합니다.
이미, 피코보드에 이전에 사용자 프로그램이 실행 중이라면 BOOT 버튼을 눌러도 다운로드용 디스크가 생성되지 않습니다. 전원을 다시 빼고 다시 넣어야 하는 데 그것이 귀찮은 문제이므로 피코의 RST 버튼을 누르면 됩니다.
즉, BOOT을 누른 상태에서 RST 버튼을 누르면 새로운 펌웨어를 넣기 위한 디스크가 생기고,
여기에 새로운 펌웨어를 던져 놓으면, 바로 실행됩니다.
생성된 디스크에 testuart.uf2를 마우스로 집어서 던져 넣으면 바로 실행됩니다.
동작상황을 보기 위해선 testuart.uf2가 보내주는 메시지를 보도록 합시다.
다른 시리얼 터미널을 열어서 볼 필요 없습니다.
VScode의 하단부에 직렬 모니터 설정하고 해당 시리얼 포트를 선택하고, "모니터링 시작"을 눌러주면
방금 자동작성된 프로그램의 시리얼 메시지가 1초마다 나오고 있음을 확인할 수 있습니다.
여기까지 성공하셨다면, 피코 2의 개발자 첫 발자국을 내 디딘 것입니다..
이제 원하시는 기능 구현 작업을 하시면 됩니다.
아래 파일 찾아보기
rp2350-datasheet.pdf, hardware-design-with-rp2350.pdf, Pico-2-schematic.pdf
문서 참고 링크 - 카페 아두이노 연구회
여기의 설명을 참고하시고,
https://www.raspberrypi.com/documentation/pico-sdk/
https://github.com/raspberrypi/pico-examples
'라즈베리파이 5' 카테고리의 다른 글
Raspberry Pi 5 PCIe AI 모듈 Sipeed Maix4-HAT (3) | 2025.08.11 |
---|---|
Hailo 엣지 AI 프로세서 - 제품 모두 보여줄게. (6) | 2025.08.08 |
ADXL345 가속도계를 라즈베리 파이에 연결 (4) | 2025.08.05 |
Raspberry Pi Compute Module 5 초보자 가이드 소개 1 (7) | 2025.07.22 |
Raspberry Pi AI HAT+ Hailo 8L 설치 2 (4) | 2025.07.03 |
Raspberry Pi AI HAT+ Hailo 설치 1 (5) | 2025.07.03 |
Hailo NPU 학습 내용 정리 2 (0) | 2025.06.20 |
Hailo NPU 학습 내용 정리 1 (4) | 2025.06.20 |
더욱 좋은 정보를 제공하겠습니다.~ ^^