usb_device.c klasöründe PreTreatment bölümüne aşağıdaki kısmı eklemelisiniz. Kart üzerindeki reset tuşuna basınca bilgisayarın VCP hatasını önlemeyi sağlar. Fakat terminalinizi aç kapat yapmalısınız.
/* USER CODE BEGIN USB_DEVICE_Init_PreTreatment */
GPIO_InitTypeDef GPIO_InitStruct = {0};
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_12, GPIO_PIN_RESET);
/*Configure GPIO pin : PA12 */
GPIO_InitStruct.Pin = GPIO_PIN_12;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_12, GPIO_PIN_RESET);
HAL_Delay(10); // Actually unnecessary (from my testing) and can be removed without consequence.
/* USER CODE END USB_DEVICE_Init_PreTreatment */
8 сен 2024