별건 아니고 bluepill 이라는 arduino stm32 보드가 있습니다.
가격도 저렴한데 usb c로 되어있어서 추후 장난질 치기 좋을것 같아서 기능 검증 중입니다.
https://itempage3.auction.co.kr/DetailView.aspx?ItemNo=F241860522&frm3=V2 2,970원 stm32 보드
https://itempage3.auction.co.kr/DetailView.aspx?ItemNo=C710425497&frm3=V2 1,800원 stlink v2 클론
설정
클럭 시스템

usb device

usb middleware 설정

디버거 포트 설정

디버거를 위한 핀 설정

코드
int main(void)
{
/* USER CODE BEGIN 1 */
#define BUF_SIZE 30
uint8_t usb_buf[BUF_SIZE];
uint32_t count = 0;
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_USB_DEVICE_Init();
/* USER CODE BEGIN 2 */
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
sprintf((char*)usb_buf, "USB CDC TEST %ld\r\n", count);
CDC_Transmit_FS(usb_buf, BUF_SIZE);
HAL_Delay(1000);
memset(usb_buf,0,BUF_SIZE);
count++;
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
}$ sudo demsg -w [25664.443438] usb 1-2: new full-speed USB device number 26 using xhci_hcd [25664.574720] usb 1-2: New USB device found, idVendor=0483, idProduct=5740, bcdDevice= 2.00 [25664.574741] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [25664.574748] usb 1-2: Product: STM32 Virtual ComPort [25664.574754] usb 1-2: Manufacturer: STMicroelectronics [25664.579419] cdc_acm 1-2:1.0: ttyACM0: USB ACM device
vcp 라서 minicom의 시리얼 포트 baudrate 상관없이 잘 나오니 먼가 이상하면서도 신기한 느낌이 듭니다.

추후 할일
ADC로 audio device class도 만들어 보고 싶고
Custom HID로 체리 키보드 처럼 사용자가 led 설정가능한 양방향 통신 가능한 HID도 만들어 보고 싶네요

참고
딸 넷 아들 하나 아빠 (큰 딸, 작은 딸, 왕큰 딸, 암 뭉뭉이, 수 뭉뭉이, 불명 앵무새) - minimonk.net


·Ò¶óÀÌÅʹ ǥÁØÈµÈ ¹æ¹ýÀÌ Àִ°ǰ¡¿ä? spi Åë½ÅÀ̱ä Çϴϱî.. ±×³É bypass ½ÃŰ´Â°Ô ¼ÓÆíÇϽŠÇÒ°Å °°Àºµ¥
¹«¾ð°¡ Ç¥ÁØÈµÈ ´Ù¸¥ ¹æ¹ýÀÌ ÀÖ´ÂÁö ±Ã±ÝÇÕ´Ï´Ù.