我正在使用 STM32G0B1RCT6
USB_CLK = 48MHZ
USB_DRD_FS---Host_Only_FS、
USB_HOST---海量存储主机类、
FATFS---USB 磁盘
USB中断---使能
如果将其设置为上述模式并进行操作,USB 会被识别,并且我 将 PB4 配置为输出,连接到绿色 LED。每当我将 USB 插入控制器时,绿灯就会出现,而每当我从控制器中拔出 USB 时,绿灯就会熄灭。所以USB检测成功,但 USB挂载/卸载功能不起作用。
与具有相同配置的 stm32f429zit6 配合使用效果良好。是什么原因造成的?如何解决这个问题?
static void USBH_UserProcess (USBH_HandleTypeDef *phost, uint8_t id)
{
/* USER CODE BEGIN CALL_BACK_1 */
switch(id)
{
case HOST_USER_SELECT_CONFIGURATION:
break;
case HOST_USER_DISCONNECTION:
Appli_state = APPLICATION_DISCONNECT;
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_4, RESET);
Unmount_USB();
break;
case HOST_USER_CLASS_ACTIVE:
Appli_state = APPLICATION_READY;
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_4, SET);
Mount_USB();
Check_USB_Details();//check Space Details
Scan_USB("/");//Scan for files and Directories
Create_File("/ROOTFILE.csv");
char csv_data[] = "Name, Age, Salary\n\nBerlin, 27, 60000\nAlice, 28, 55000\nAlbert, 32, 55000\n";
Write_CSV_File("ROOTFILE.csv", csv_data);
break;
case HOST_USER_CONNECTION:
Appli_state = APPLICATION_START;
break; |