stm32f103c8t6 (bluepill) º¸µå¸¦ ÀÌ¿ëÇÑ usb vcp ±â´É ±¸ÇöÇϱâ

   Á¶È¸ 3842   Ãßõ 2    

별건 아니고 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도 만들어 보고 싶네요




 

참고

https://eteo.tistory.com/194 소스코드

https://blog.naver.com/crucian2k3/221533654464 굽는거 문제

딸 넷 아들 하나 아빠 (큰 딸, 작은 딸, 왕큰 딸, 암 뭉뭉이, 수 뭉뭉이) - minimonk.net
SiCMOS 01-05
¸®°×¿ë Űº¸µå¶û ·Ò¶óÀÌÅ͸¦ À̰ɷΠ¸¸µé¾ú½À´Ï´Ù...
     
hid ·Î ÇϽŰǰ¡¿ä? custom HID·Î ÇϽŰǰ¡¿ä? custom HID¿¡ °ü½ÉÀÌ °¡¼­¿ä ¤¾¤¾
·Ò¶óÀÌÅʹ ǥÁØÈ­µÈ ¹æ¹ýÀÌ Àִ°ǰ¡¿ä? spi Åë½ÅÀ̱ä Çϴϱî.. ±×³É bypass ½ÃŰ´Â°Ô ¼ÓÆíÇϽŠÇÒ°Å °°Àºµ¥
¹«¾ð°¡ Ç¥ÁØÈ­µÈ ´Ù¸¥ ¹æ¹ýÀÌ ÀÖ´ÂÁö ±Ã±ÝÇÕ´Ï´Ù.
¸®´ª½º¿¡¼­ Àνĵǰí ÀߵǴµ¥, À©µµ¿ì11¿¡¼­ µå¶óÀ̹ö ¾Èº¸ÀÌ°í ¸ÔÅëµÇ´Â ºÐµéÀº
usbd_desc.c +280
uint8_t * USBD_FS_SerialStrDescriptor(USBD_SpeedTypeDef speed, uint16_t *length)
{
..........
  return NULL;
  /* USER CODE END USBD_FS_SerialStrDescriptor */
  return (uint8_t *) USBD_StringSerial;
}
¸®Åϰª NULL·Î ³Ñ±â¼¼¿ä. ±×·³ ÀνÄÀߵɲ®´Ï´Ù.
Á÷¿ø±³À°¿ëÀ¸·Î ½á¸ÔÀ»·Á°í ÁÖ¹®ÇÏ°í ¿¬ÈÞ¶§ Å×½ºÆ® Çϴµ¥ ¹®Á¦°¡ ¹ß°ßµÇ¾ú½À´Ï´Ù.
     
Åð±ÙÇϰí Çѹø ¸®ºäÇØ ºÁ¾ß°Ú½À´Ï´Ù. ÁÁÀº ´ñ±Û °¨»çÇÕ´Ï´Ù! »õÇØº¹ ¸¹ÀÌ ¹ÞÀ¸¼¼¿ä~

Ȥ½Ã ¸ô¶ó ºñ½ÁÇÑ(?) °æÇè Çϳª °øÀ¯Çص帳´Ï´Ù.
https://minimonk.tistory.com/524458

¸®¼Â¹öư ´©¸£¸é usb°¡ ´Ù½Ã Àνľȵɰæ¿ì ¿ìȸ¹ýÀÔ´Ï´Ù.
D+ ¶óÀÎ Ç®´Ù¿î ÇØ¾ßÁö USB FS ·Î ÀνÄÇØ¼­ ´Ù½Ã Çù»ó¿¡ µé¾î°¡´Âµ¥ ±×³É ¸®ºÎÆÃ ÇØ¹ö¸®¸é ±×°Ô ¾ÈµÇ¼­ ²À »°´Ù ²È¾Æ¾ß µÇ´øµ¥
±×°Í¿¡ ´ëÇÑ ÇØ°áÃ¥ÀÔ´Ï´Ù.
          
°¨»çÇÕ´Ï´Ù. »õÇØ º¹ ¸¹ÀÌ ¹ÞÀ¸¼¼¿ä.
¸®¼Â½Ã ÃʱâÈ­´Â Á¤º¸°¡ À־ Àû¿ëÇØ ³ù½À´Ï´Ù.
¸®ºäÇØ º¸½Å´Ù¸é Àû¿ë ÀüÈÄ USB Tree Viewer·Î º¸½Ã¸é ¹®Á¦Á¡ÀÌ º¸ÀÔ´Ï´Ù.
Àü NULL (Serial Description Erroró¸®) Àû¿ë ÈÄ À©µµ¿ì µå¶óÀ̹ö Á¤»ó ·ÎµùÀÌ µÇ±æ·¡ ±í°Ô ÆÄ°íµéÁö ¾Ê¾Ò½À´Ï´Ù.
(¼öÁ¤Çصµ ¸®´ª½º¿¡¼­ ¹®Á¦¾øÀ½)
               
ÁÁÀº ÇÁ·Î±×·¥À» ¾Ë·ÁÁÖ¼ÌÀ¸´Ï ²À ½áº¸°Ú½À´Ï´Ù ¤¾¤¾


Á¦¸ñPage 1/66
2019-02   8611   À̰ÇÈñ
2025-06   4840   motu
2020-11   10797   ÀÌõdz
2018-10   12333   Dishy
2019-05   8756   ±è¹Î¼®salsal
2020-08   7018   ÆØÂ¯Á¤¼®
2019-02   8466   ÇູÇϼ¼
2019-04   8177   »ç¶ûÇ϶ó
2023-06   49719   ±èÀå¿ì
2024-10   12026   makeyz
2025-06   5784   ¹Ú¹®Çü
2018-05   20152   Áø½ÅµÎ
2018-10   9935   ¾Æ½º¶õ
2019-07   9592   µÞºÏ¼Ò³â
2024-04   9937   sinabro
2025-06   5716   TubeAmp
2019-04   11178   ¾çö±ªÀÌ
2018-10   10189   sinabro
2020-08   9126   »õÃÑ
2021-07   8785   »õÃÑ