RP2040 의 하드웨어 UART는 2채널이 제공된다.
Arduino 환경에서 디포트 핀맵 정의는 아래와 같다.
USB CDC는 Serial 에 하드웨어 시리얼은 Serial1, Serial2 로 선언되어 있다.
SerialUSB Serial;
SerialUART Serial1; // HW UART 0
SerialUART Serial2; // HW UART 1
// Serial
#define PIN_SERIAL1_TX (0u)
#define PIN_SERIAL1_RX (1u)
#define PIN_SERIAL2_TX (8u)
#define PIN_SERIAL2_RX (9u)
RP2040 SSM EVM 에서 핀맵은 아래와 같이 정의 되어 있다.
RP2040의 USB CDC는 기본 Serial로 할당되어 있고 초기화시에 실행 된다. 컴파일 옵션에서 USB CDC 라이브러리도 설정 할 수 있다.
#ifdef USE_TINYUSB
TinyUSB_Device_Init(0);
#else
__USBStart();
#ifndef DISABLE_USB_SERIAL
// Enable serial port for reset/upload always
Serial.begin(115200);
#endif
Arduino에서 시리얼 포트 이벤트 처리는 아래와 같이 정의 되어 수행되고 있다.
if (arduino::serialEventRun) {
arduino::serialEventRun();
}
if (arduino::serialEvent1Run) {
arduino::serialEvent1Run();
}
if (arduino::serialEvent2Run) {
arduino::serialEvent2Run();
}
반응형