STM32와 RP2040 차이
키보드 MCU의 성능·구조·펌웨어 환경은 무엇이 다를까?
- STM32는 하나의 칩이 아니라 성능과 기능이 다른 여러 MCU 제품군을 통칭하는 이름입니다.
- RP2040은 Raspberry Pi가 설계한 듀얼 코어 Cortex-M0+ 기반의 단일 MCU 모델입니다.
- STM32는 저전력·USB·무선·고성능 등 선택지가 넓고, RP2040은 단순한 제품 구성과 높은 접근성이 장점입니다.
- RP2040은 프로그램을 외부 플래시 메모리에 저장하지만, 대부분의 STM32는 칩 내부 플래시를 사용합니다.
- 키보드에서는 단순한 클럭 수보다 USB 지원, GPIO 수, 펌웨어 호환성, 소비전력과 회로 구성이 더 중요합니다.
기계식 키보드의 기판이나 QMK 펌웨어 정보를 살펴보면 STM32와 RP2040이라는 이름을 자주 볼 수 있습니다. 두 칩 모두 키 입력을 읽고, 레이어와 매크로를 처리하며, USB를 통해 PC에 입력 정보를 전달하는 MCU로 사용할 수 있습니다.
겉으로 보면 RP2040은 듀얼 코어와 높은 클럭을 갖추고 있어 무조건 더 좋은 칩처럼 보일 수 있습니다. 반대로 STM32는 오랫동안 다양한 키보드에 사용된 만큼 안정성과 호환성이 더 뛰어난 것처럼 느껴질 수 있습니다.
하지만 두 이름을 숫자만으로 비교해서는 정확한 차이를 알기 어렵습니다. RP2040은 하나의 구체적인 MCU지만, STM32는 수많은 제품군을 포함하는 매우 넓은 플랫폼이기 때문입니다. 어떤 STM32를 비교 대상으로 선택하느냐에 따라 성능과 메모리, USB 기능, 소비전력이 크게 달라집니다.
이번 글에서는 단순히 어느 쪽이 더 빠른지를 판단하는 것이 아니라, 두 MCU의 구조와 메모리 방식, 주변장치, 개발 환경 그리고 실제 키보드에서의 차이를 중심으로 살펴보겠습니다.
1. STM32와 RP2040은 모두 MCU다
STM32와 RP2040은 모두 MCU, 즉 Microcontroller Unit에 해당합니다. MCU는 CPU 코어뿐만 아니라 메모리, GPIO, 타이머, 통신 장치와 같은 주변 기능을 하나의 칩 안에 모아 놓은 소형 컴퓨터입니다.
일반적인 PC의 CPU는 운영체제와 여러 프로그램을 동시에 실행하는 데 초점을 맞춥니다. 반면 MCU는 키 입력 감지, 센서 측정, 모터 제어처럼 정해진 작업을 빠르고 반복적으로 처리하는 데 적합합니다.
키보드에서 MCU는 매트릭스의 행과 열을 계속 확인하고, 눌린 스위치를 찾아낸 뒤 디바운스 처리를 수행합니다. 이후 현재 레이어와 키맵을 확인하여 Keycode를 결정하고, 그 결과를 USB HID 리포트 형태로 PC에 전달합니다.
- 키보드 매트릭스의 행과 열 스캔
- 스위치 접점의 디바운스 처리
- 레이어와 Keycode 확인
- 매크로와 조합키 처리
- RGB LED 및 상태 표시등 제어
- USB 또는 무선 연결을 통한 입력 전송
따라서 STM32와 RP2040을 비교할 때는 단순히 CPU 속도만 보는 것보다, 키보드가 요구하는 기능을 얼마나 안정적으로 지원하는지를 함께 살펴봐야 합니다.
2. STM32는 특정 칩이 아니라 제품군이다
가장 먼저 알아야 할 점은 STM32가 하나의 MCU 모델명이 아니라는 것입니다. STM32는 STMicroelectronics가 제공하는 32비트 Arm Cortex-M 기반 MCU 제품군 전체를 가리킵니다.
STM32 안에는 비교적 단순하고 저렴한 제품부터 높은 연산 성능과 대용량 메모리를 갖춘 제품까지 다양한 시리즈가 포함됩니다. Cortex-M0 또는 M0+ 기반의 보급형 제품도 있고, Cortex-M3·M4·M7·M33처럼 더 높은 성능과 추가 기능을 제공하는 제품도 있습니다.
예를 들어 키보드에서 많이 볼 수 있는 STM32F103은 Cortex-M3 코어를 사용하는 MCU입니다. 반면 일부 저가형 기판에는 더 단순한 STM32F0 계열이 사용될 수 있고, 고성능 임베디드 장치에는 STM32F4나 STM32H7처럼 훨씬 강력한 제품이 사용됩니다.
“STM32와 RP2040 중 무엇이 더 빠른가?”라는 질문만으로는 정확한 답을 내리기 어렵습니다. STM32F0, STM32F1, STM32F4처럼 비교 대상에 따라 CPU 코어와 클럭, 메모리 구성이 달라지기 때문입니다.
즉 STM32의 가장 큰 특징은 선택지가 매우 넓다는 것입니다. 제조사는 필요한 GPIO 수, USB 기능, 소비전력, 메모리 용량과 가격에 맞춰 적절한 STM32 모델을 선택할 수 있습니다.
물론 모든 STM32가 키보드에 적합한 것은 아닙니다. 필요한 핀 수가 부족할 수도 있고, USB 장치 기능을 지원하지 않을 수도 있으며, 성능에 비해 가격과 회로 복잡도가 지나치게 높을 수도 있습니다.
그래서 실제 키보드 기판에서는 무조건 가장 강력한 STM32를 선택하지 않습니다. 매트릭스 크기, RGB LED 수, USB 연결 방식, 무선 기능과 펌웨어 용량을 고려해 필요한 수준의 MCU를 선택합니다.
3. RP2040은 하나의 구체적인 MCU다
RP2040은 Raspberry Pi가 직접 설계한 범용 MCU입니다. STM32처럼 수많은 세부 모델이 묶인 이름이 아니라, 비교적 명확한 하나의 칩 구성을 가리킵니다.
RP2040에는 Arm Cortex-M0+ 코어가 두 개 들어 있으며, 최대 133MHz로 동작하도록 설계되었습니다. SRAM은 총 264KB이며, GPIO와 타이머, ADC, USB 장치 및 호스트 기능 등을 제공합니다.
RP2040에서 특히 눈에 띄는 부분은 듀얼 코어와 PIO입니다. 듀얼 코어는 작업을 두 코어에 나눌 수 있게 해주며, PIO는 일반적인 주변장치만으로 처리하기 어려운 디지털 통신 동작을 직접 구성할 수 있게 해주는 기능입니다.
- 듀얼 코어 Arm Cortex-M0+ 구조
- 최대 133MHz 동작 클럭
- 264KB 온칩 SRAM
- 외부 QSPI 플래시 메모리 사용
- USB 1.1 장치 및 호스트 지원
- 사용자가 동작을 구성할 수 있는 PIO 블록 제공
RP2040은 Raspberry Pi Pico를 통해 널리 알려졌습니다. 비교적 저렴한 개발 보드와 잘 정리된 공식 문서, C/C++ SDK, MicroPython 환경 덕분에 입문자도 쉽게 접근할 수 있었습니다.
이후 RP2040은 개발 보드뿐만 아니라 커스텀 키보드, 매크로 패드, 컨트롤러와 각종 소형 전자기기에 사용되기 시작했습니다. QMK와 KMK 같은 키보드 펌웨어에서도 활용할 수 있어 키보드 제작자에게도 익숙한 MCU가 되었습니다.
RP2040이 듀얼 코어라고 해서 키보드의 모든 동작이 자동으로 두 배 빨라지는 것은 아닙니다. 펌웨어가 두 번째 코어를 실제로 활용하도록 설계되어야 하며, 일반적인 키 매트릭스 스캔과 USB 입력 처리는 한 개의 코어만으로도 충분한 경우가 많습니다.
4. CPU 코어와 클럭은 어떻게 다를까?
RP2040은 Cortex-M0+ 코어 두 개를 최대 133MHz로 구동합니다. 반면 STM32는 선택한 모델에 따라 코어의 종류와 개수, 최대 클럭이 모두 달라집니다.
보급형 STM32F0는 Cortex-M0 기반으로 RP2040보다 낮은 클럭을 사용하는 경우가 많습니다. STM32F103처럼 Cortex-M3를 사용하는 제품은 명령 처리 구조와 인터럽트 기능이 다르며, STM32F4 이상에서는 Cortex-M4나 더 강력한 코어를 사용할 수 있습니다.
클럭 수치만 보면 RP2040이 일부 보급형 STM32보다 빠른 것은 사실입니다. 그러나 서로 다른 Cortex-M 코어는 같은 클럭에서도 명령 처리 능력과 지원 기능이 다를 수 있습니다.
또한 키보드는 고성능 연산을 계속 수행하는 장치가 아닙니다. 대부분의 시간에는 매트릭스를 스캔하고, 짧은 입력 이벤트를 처리하며, USB 리포트를 일정한 주기로 전송합니다. 따라서 일반 키보드에서는 MCU 클럭이 높다고 해서 사용자가 체감하는 입력 지연이 같은 비율로 줄어들지는 않습니다.
키보드의 실제 반응 속도는 MCU의 최대 클럭 하나로 결정되지 않습니다. 매트릭스 스캔 주기, 디바운스 알고리즘, USB Polling Rate, 펌웨어 구조와 무선 연결 지연이 함께 영향을 줍니다.
5. 메모리 구조에서 큰 차이가 난다
STM32와 RP2040의 차이를 이해할 때 중요한 부분이 프로그램 저장 방식입니다. 대부분의 STM32 MCU는 펌웨어를 저장할 수 있는 플래시 메모리를 칩 내부에 포함합니다.
개발자가 QMK와 같은 펌웨어를 빌드하여 기록하면, 생성된 프로그램은 STM32 내부 플래시에 저장됩니다. 전원이 꺼졌다가 다시 켜져도 내부 플래시에 기록된 프로그램이 실행됩니다.
반면 RP2040에는 일반적인 프로그램 저장용 플래시 메모리가 칩 내부에 포함되어 있지 않습니다. 대신 기판에 별도의 QSPI 플래시 메모리를 연결하고, 여기에 펌웨어를 저장합니다.
- STM32: 대부분의 모델이 내부 플래시에 펌웨어 저장
- RP2040: 기판에 연결된 외부 QSPI 플래시에 펌웨어 저장
- 공통점: 실행 중 필요한 데이터는 SRAM에 올려 처리
- 실제 차이: 회로 구성과 펌웨어 기록 방식에서 차이가 발생
RP2040의 외부 플래시 구조는 기판에 별도의 메모리 칩이 필요하다는 단점이 있지만, 설계자가 필요한 저장 용량을 비교적 유연하게 선택할 수 있다는 장점도 있습니다.
예를 들어 복잡한 RGB 효과, 다양한 레이어, 대용량 기능을 넣어 펌웨어 크기가 커졌다면 더 큰 외부 플래시를 선택할 수 있습니다. 다만 펌웨어와 부트로더, 기판 설계가 해당 용량을 정상적으로 지원해야 합니다.
STM32는 모델마다 내부 플래시와 SRAM 용량이 정해져 있습니다. 따라서 키보드 제조사는 펌웨어 크기와 필요한 기능을 예상하고 충분한 메모리를 가진 모델을 선택해야 합니다.
STM32는 성능과 기능이 다른 여러 MCU를 포함하는 넓은 제품군이고, RP2040은 듀얼 Cortex-M0+ 코어와 외부 플래시 구조를 사용하는 하나의 구체적인 MCU입니다. 따라서 두 이름을 단순한 클럭 수치만으로 비교해서는 안 됩니다. 다음에서는 GPIO와 PIO, USB 기능, QMK 펌웨어 환경, 소비전력과 실제 키보드에서의 체감 차이를 이어서 살펴보겠습니다.
6. GPIO와 PIO는 무엇이 다를까?
키보드 MCU에서 매우 중요한 기능 중 하나가 GPIO입니다. GPIO는 General Purpose Input/Output의 약자로, MCU가 외부 부품과 신호를 주고받을 때 사용하는 범용 입출력 핀입니다.
키보드 매트릭스에서는 여러 GPIO 핀을 행과 열에 연결합니다. MCU는 한쪽 핀에 신호를 출력하고 다른 쪽 핀의 상태를 읽으면서 어떤 스위치가 눌렸는지 확인합니다. 상태 LED, 로터리 인코더, OLED 화면, RGB LED 제어에도 GPIO가 사용됩니다.
STM32와 RP2040 모두 충분한 GPIO를 제공하지만, 실제 사용 가능한 핀 수는 칩 패키지와 기판 설계에 따라 달라집니다. 같은 STM32 시리즈라도 핀 수가 적은 패키지와 많은 패키지가 존재하며, 일부 핀은 USB·클럭·디버깅 기능과 함께 사용되기도 합니다.
- 기판에서 실제로 사용할 수 있는 핀의 개수
- 핀마다 지원하는 입력·출력 및 대체 기능
- ADC, PWM, UART, SPI, I²C와 공유되는지 여부
- 부팅이나 디버깅에 예약된 핀이 있는지 여부
- 핀의 허용 전압과 출력 전류 조건
RP2040의 독특한 기능은 PIO, Programmable I/O입니다. PIO는 CPU가 모든 타이밍을 직접 계산하지 않아도, 작은 상태 머신이 정해진 입출력 동작을 반복하도록 구성할 수 있는 기능입니다.
일반 MCU는 UART, SPI, I²C처럼 미리 설계된 주변장치를 사용합니다. 그러나 특별한 통신 규격이나 매우 정확한 신호 타이밍이 필요하다면 기본 주변장치만으로 구현하기 어려울 수 있습니다. RP2040의 PIO는 이런 상황에서 사용자가 직접 간단한 입출력 동작을 정의할 수 있게 합니다.
키보드에서는 PIO를 반드시 사용해야 하는 것은 아닙니다. 일반적인 매트릭스 스캔과 USB HID 처리에는 기본 GPIO와 타이머만으로도 충분합니다. 다만 주소 지정형 LED, 특수 통신 장치, 독특한 입력 확장 회로를 제어할 때 PIO가 유용하게 활용될 수 있습니다.
PIO는 일반적인 GPIO를 대체하는 기능이 아니라, 정밀한 신호 생성과 특수 통신을 보조하는 장치입니다. 평범한 키보드에서는 PIO보다 펌웨어 완성도와 핀 배치가 더 중요할 수 있습니다.
7. USB 기능은 키보드에서 왜 중요할까?
유선 키보드는 MCU가 USB 장치로 동작해야 합니다. 사용자가 케이블을 연결하면 MCU는 PC와 USB 통신을 시작하고, 자신이 어떤 장치인지 알리는 디스크립터를 전달합니다.
PC는 이 정보를 바탕으로 해당 장치를 키보드, 마우스, 미디어 컨트롤러 등으로 인식합니다. 이후 MCU는 눌린 키 정보를 HID 리포트로 만들어 USB를 통해 전송합니다.
RP2040은 USB 1.1 컨트롤러와 PHY를 포함하고 있어 별도의 USB 통신 칩 없이 장치 또는 호스트 기능을 구현할 수 있습니다. 키보드에서는 대부분 USB 장치 모드로 사용됩니다.
STM32는 모델마다 USB 지원 범위가 다릅니다. 어떤 제품은 USB Full-Speed 장치 기능을 제공하지만, 일부 저가형 모델은 USB 주변장치가 없을 수 있습니다. 고급 제품군에서는 USB High-Speed 또는 추가적인 USB 기능을 지원하는 모델도 존재합니다.
키보드의 Polling Rate는 USB 컨트롤러의 최고 성능만으로 결정되지 않습니다. 펌웨어가 얼마나 자주 HID 리포트를 준비하는지, 엔드포인트 설정이 어떻게 되어 있는지, 매트릭스 스캔과 디바운스가 얼마나 빠르게 끝나는지가 함께 영향을 줍니다.
따라서 1,000Hz Polling Rate를 지원한다고 해도 모든 키 입력이 정확히 1ms 안에 PC로 전달된다는 뜻은 아닙니다. 사용자가 키를 누른 순간과 다음 매트릭스 스캔 시점 사이의 대기, 디바운스 시간, USB 전송 대기가 더해질 수 있습니다.
8. QMK 펌웨어에서는 어떤 차이가 있을까?
QMK Firmware는 다양한 키보드 MCU와 기판을 지원합니다. STM32 기반 기판과 RP2040 기반 기판 모두 QMK를 사용할 수 있지만, 내부에서 사용되는 하드웨어 추상화 계층과 빌드 설정에는 차이가 있습니다.
STM32 기반 QMK 키보드는 주로 ChibiOS 환경을 활용합니다. 기판 정의에는 사용 중인 STM32 모델, 클럭, USB 설정, GPIO 핀과 부트로더 방식 등이 포함됩니다.
RP2040 기반 기판 역시 QMK에서 사용할 수 있으며, 해당 MCU에 맞는 드라이버와 설정이 필요합니다. 개발자는 단순히 MCU 이름만 변경하는 것이 아니라, 핀 번호와 플래시 구성, 부트로더, USB 설정까지 기판에 맞춰 지정해야 합니다.
- MCU와 보드 플랫폼 설정
- 행·열 GPIO 핀 번호
- 부트로더 종류와 진입 방식
- 플래시 메모리와 EEPROM 에뮬레이션 방식
- USB 드라이버와 클럭 설정
- RGB, OLED, 인코더 등 주변장치 드라이버
사용자 입장에서는 정상적으로 완성된 펌웨어가 들어간 키보드라면 MCU 차이를 크게 느끼지 못할 수 있습니다. 키맵 변경, 레이어 전환, 매크로, 미디어 키 같은 일반적인 QMK 기능은 두 플랫폼 모두에서 구현할 수 있기 때문입니다.
차이는 주로 개발자와 기판 설계자에게 더 크게 나타납니다. 기존 오픈소스 기판을 참고하기 쉬운지, 필요한 드라이버가 이미 지원되는지, 디버깅 환경이 익숙한지에 따라 개발 난이도가 달라집니다.
MCU의 성능이 충분하더라도 사용하려는 LED 드라이버, 무선 모듈, 디스플레이 또는 부트로더가 펌웨어에서 제대로 지원되지 않으면 개발 시간이 크게 늘어날 수 있습니다.
9. 부트로더와 펌웨어 기록 방식
부트로더는 MCU가 시작될 때 펌웨어를 실행하거나 새로운 펌웨어를 기록할 수 있도록 도와주는 작은 프로그램입니다. 키보드 사용자는 부트로더 모드에 진입한 뒤 QMK Toolbox 같은 프로그램이나 명령어를 사용해 펌웨어를 업데이트할 수 있습니다.
STM32는 모델과 기판 설계에 따라 DFU, STM32duino 계열 부트로더 또는 별도의 커스텀 부트로더를 사용할 수 있습니다. 일부 STM32에는 제조사가 제공하는 시스템 부트로더가 ROM에 포함되어 있어 특정 핀 상태나 명령을 통해 진입할 수 있습니다.
RP2040은 BOOTSEL 방식을 통해 USB 대용량 저장장치처럼 표시되는 부트 모드를 사용할 수 있습니다. BOOTSEL 버튼을 누른 상태에서 연결하면 PC에 저장장치가 나타나고, UF2 형식의 펌웨어 파일을 복사해 기록할 수 있습니다.
RP2040의 UF2 방식은 초보자에게 특히 편리합니다. 별도의 드라이버나 복잡한 프로그램 없이 파일 복사 방식으로 펌웨어를 기록할 수 있기 때문입니다.
하지만 완제품 키보드에서는 제조사가 부트 버튼을 외부에 노출하지 않을 수도 있습니다. 이 경우 특정 키 조합, QMK의 Reset Keycode 또는 기판의 리셋 패드를 사용해 부트로더로 진입해야 합니다.
10. EEPROM은 어떻게 처리할까?
키보드에서 EEPROM은 사용자가 변경한 설정을 전원이 꺼진 뒤에도 유지하는 데 사용됩니다. VIA에서 변경한 키맵, 기본 레이어, RGB 밝기와 같은 설정이 대표적입니다.
그러나 모든 MCU가 별도의 물리적 EEPROM을 내부에 포함하는 것은 아닙니다. 이 경우 펌웨어는 플래시 메모리의 일부를 EEPROM처럼 사용하는 에뮬레이션 방식을 사용할 수 있습니다.
STM32 역시 모델에 따라 실제 EEPROM 제공 여부가 다르며, 많은 QMK 기판은 내부 플래시의 일부 또는 외부 EEPROM을 활용합니다. RP2040은 외부 QSPI 플래시의 일부 영역을 설정 저장 용도로 사용할 수 있습니다.
QMK 설정에서 EEPROM이라고 표현하더라도 실제 하드웨어가 반드시 독립된 EEPROM 칩이라는 뜻은 아닙니다. 내부 플래시 또는 외부 플래시의 일부를 소프트웨어적으로 EEPROM처럼 사용할 수 있습니다.
플래시는 데이터를 기록할 때 일정 크기의 영역을 지우고 다시 써야 하므로, 일반 RAM처럼 무제한으로 빠르게 변경하는 용도에는 적합하지 않습니다. 펌웨어는 불필요한 쓰기 횟수를 줄이고 저장 영역을 안정적으로 관리해야 합니다.
사용자가 키맵을 한 번 변경하는 정도로 수명이 문제가 되는 경우는 드뭅니다. 다만 펌웨어 오류로 매 스캔마다 설정을 기록하도록 만들면 플래시 마모가 빨라질 수 있으므로 개발 단계에서 주의해야 합니다.
11. 소비전력과 무선 키보드 적합성
유선 키보드는 USB에서 지속적으로 전원을 공급받기 때문에 MCU 소비전력이 큰 문제가 되지 않는 경우가 많습니다. 하지만 배터리를 사용하는 무선 키보드에서는 소비전력이 사용 시간을 결정하는 핵심 요소가 됩니다.
STM32 제품군에는 저전력 동작을 중심으로 설계된 시리즈가 존재합니다. 깊은 절전 모드, 빠른 복귀, 다양한 클럭 제어 기능을 활용하면 배터리 장치에 적합한 설계를 만들 수 있습니다.
RP2040도 클럭을 조절하고 일부 기능을 정지해 소비전력을 줄일 수 있지만, 저전력 무선 장치를 목적으로 할 때는 전용 저전력 MCU와 비교해야 합니다. 특히 RP2040 자체에는 Bluetooth 또는 2.4GHz 무선 기능이 내장되어 있지 않습니다.
STM32 역시 대부분의 일반 모델에는 무선 기능이 없지만, STM32WB처럼 Bluetooth와 무선 기능을 통합한 별도 제품군이 존재합니다. 반면 RP2040 기반 무선 키보드는 일반적으로 외부 무선 칩이나 모듈을 추가해야 합니다.
무선 키보드의 사용 시간은 MCU 하나만으로 결정되지 않습니다. 무선 칩, RGB LED, 배터리 용량, 스캔 주기, 절전 진입 시간, 대기 중 전류와 펌웨어 최적화가 모두 영향을 줍니다.
12. 실제 키보드 성능은 어느 쪽이 더 좋을까?
일반적인 유선 키보드라면 STM32와 RP2040 모두 충분한 성능을 제공합니다. 매트릭스 스캔, 디바운스, 레이어, 매크로, USB HID 전송은 비교적 가벼운 작업이기 때문입니다.
RP2040은 높은 클럭, 넉넉한 SRAM, 듀얼 코어 덕분에 복잡한 기능을 추가할 여유가 큽니다. 많은 RGB LED, 디스플레이 애니메이션, 추가 입력 장치 또는 실험적인 기능을 넣을 때 장점이 될 수 있습니다.
STM32는 필요한 성능과 기능에 맞춰 정확한 모델을 선택할 수 있다는 장점이 있습니다. 단순한 키보드에는 저렴한 제품을, 저전력 무선 기기에는 저전력 제품을, 복잡한 장치에는 고성능 제품을 선택할 수 있습니다.
- 목적에 맞는 MCU를 세밀하게 선택할 때
- 저전력 설계가 중요한 경우
- 산업용 주변장치와 다양한 통신 기능이 필요할 때
- 기존 STM32 개발 환경을 활용할 때
- 높은 접근성과 단순한 제품 구성을 원할 때
- UF2 방식의 편리한 펌웨어 기록이 필요할 때
- 넉넉한 SRAM과 높은 클럭이 필요할 때
- PIO를 이용한 특수 입출력을 구현할 때
사용자가 느끼는 키보드 품질은 MCU 이름보다 전체 설계에 더 큰 영향을 받습니다. 같은 RP2040을 사용해도 펌웨어가 비효율적이면 입력 지연이 늘어날 수 있고, 낮은 클럭의 STM32라도 최적화가 잘되어 있으면 안정적인 성능을 낼 수 있습니다.
스위치 입력이 PC에 전달되기까지는 매트릭스 스캔, 디바운스, Keycode 처리, HID 리포트 생성, USB 전송 과정이 이어집니다. 이 중 어느 한 단계가 느리면 고성능 MCU의 장점이 제대로 나타나지 않을 수 있습니다.
MCU는 중요한 부품이지만 스캔 주기, 펌웨어, USB 설정, 회로 품질과 무선 최적화가 함께 완성되어야 좋은 키보드가 됩니다.
13. STM32와 RP2040 차이 한눈에 보기
14. 자주 묻는 질문
아닙니다. STM32는 매우 다양한 제품군이므로 어떤 모델과 비교하는지에 따라 결과가 달라집니다. 일부 보급형 STM32보다 RP2040의 클럭과 SRAM이 클 수 있지만, 고성능 STM32는 훨씬 강력한 CPU와 주변장치를 제공할 수 있습니다.
그렇지 않습니다. 펌웨어가 두 코어를 활용하도록 작성되어야 하며, 일반적인 매트릭스 스캔과 USB HID 처리에는 한 코어만으로도 충분합니다. 입력 속도는 디바운스와 스캔 주기, USB 설정에도 영향을 받습니다.
두 플랫폼 모두 사용할 수 있습니다. 필요한 GPIO 수, USB 지원, 메모리 용량, QMK 드라이버 지원과 기판 설계 경험을 기준으로 선택하는 것이 좋습니다.
독립된 프로그램 저장용 내부 플래시나 일반적인 물리 EEPROM은 없습니다. 기판에 연결된 외부 QSPI 플래시의 일부를 설정 저장 영역으로 활용할 수 있습니다.
특정 이름만으로 판단하기 어렵습니다. 저전력 STM32 제품군은 배터리 장치에 유리할 수 있지만, 무선 통합 여부와 외부 무선 칩, 펌웨어 절전 최적화를 함께 확인해야 합니다.
참고할 수는 있지만 MCU 이름만으로 품질을 판단하기는 어렵습니다. 실제 Polling Rate, 입력 안정성, 펌웨어 지원, VIA·VIAL 호환성과 제조사의 업데이트 정책을 함께 확인하는 것이 좋습니다.
15. 함께 보면 좋은 글
16. 공식 자료
17. 결론
STM32와 RP2040은 모두 키보드 MCU로 사용할 수 있지만 출발점이 다릅니다. STM32는 다양한 성능과 기능을 가진 거대한 MCU 제품군이며, RP2040은 듀얼 Cortex-M0+ 코어와 PIO, 외부 플래시 구조를 갖춘 하나의 구체적인 칩입니다.
STM32의 장점은 선택의 폭입니다. 가격, 성능, 소비전력, USB와 무선 기능에 맞춰 적절한 모델을 선택할 수 있습니다. 반면 RP2040은 비교적 단순한 제품 구성, 넉넉한 SRAM, 편리한 UF2 부트 방식과 PIO 기능이 강점입니다.
일반적인 키보드에서는 두 플랫폼 모두 충분한 성능을 낼 수 있습니다. 따라서 어느 MCU가 더 우수한지를 단정하기보다는 해당 기판의 펌웨어 지원, 매트릭스 스캔 구조, USB 설정, 메모리 용량과 전력 설계를 함께 확인하는 것이 정확합니다.
결국 좋은 키보드를 만드는 핵심은 가장 높은 클럭의 MCU를 선택하는 것이 아닙니다. 필요한 기능에 맞는 MCU를 고르고, 회로와 펌웨어를 안정적으로 설계하는 것이 더 중요합니다.
STM32는 목적에 맞춰 선택하는 MCU 제품군이고, RP2040은 듀얼 코어와 PIO, 편리한 부트 방식을 하나의 칩에 담은 범용 MCU입니다.
- STMicroelectronics, STM32 32-bit Arm Cortex MCU 공식 제품 정보
- Raspberry Pi, RP2040 공식 제품 페이지 및 데이터시트
- Raspberry Pi, RP2040 Hardware Design 및 Microcontroller Documentation
- QMK Firmware 공식 문서

