본문 바로가기

ESPRESSIF/ESP32-C3

ESP32-C3 SSM EVM - USB (USB CDC)

ESP32-C3의 또다른 특징중 하나로 USB지원 한다.

처음에는 USB 풀스펙을 지원하는줄 알았는데 자세히 보면 USB Serial/JTAG 만 지원 한다고 한다. 약간 아쉬움이 있긴 한데 아무튼 ESP32-C3의 USB Seral(USB CDC) 테스트를 해 보자.

 

ESP32-C3 메뉴에서 USB CDC On Boot 를 Enabled로 설정해야 한다.

 

이후 Serial 은 USB CDC로 출력 하게 된다.

 

 

Arduino main 코드를 보면 USB 옵션에 따라 USB CDC가  Serial 으로 설정이 되는것을 확인 할 수 있다.

extern "C" void app_main()
{
#if ARDUINO_USB_CDC_ON_BOOT
    Serial.begin();
#endif
#if ARDUINO_USB_MSC_ON_BOOT
    MSC_Update.begin();
#endif
#if ARDUINO_USB_DFU_ON_BOOT
    USB.enableDFU();
#endif
#if ARDUINO_USB_ON_BOOT
    USB.begin();
#endif
    loopTaskWDTEnabled = false;
    initArduino();
    xTaskCreateUniversal(loopTask, "loopTask", getArduinoLoopTaskStackSize(), NULL, 1, &loopTaskHandle, ARDUINO_RUNNING_CORE);
}

 


ESP32-C3 펌웨어 업로드 방법도 USB CDC로 할수 있다. 이경우 USB UART없이 펌웨어 업로드를 할수 있어 편리한 기능인것 같다.

 

반응형