int main(void){char ch;/* 初始化LED */LED_GPIO_Config();
/* 初始化调试串口,一般为串口1 */Debug_USART_Config();
printf("
这是一个USB OTG例程,STM32作USB主机读取U盘
");
/* Init Host Library */USBH_Init(&USB_OTG_Core,USB_OTG_FS_CORE_ID, &USB_Host, &USBH_MSC_cb, &USR_cb); printf("
USBH_Init成功
");
while(1){ //USB处理过程USBH_Process(&USB_OTG_Core, &USB_Host);
ch = getchar();printf("输入字符是:%c
",ch);
switch(ch){case '1':{LED2_TOGGLE;printf("case1操作");result = f_mount(&fs,"0:",1); /* Mount a logical drive */printf("挂载文件系统");if(result != FR_OK){printf("
文件系统挂载失败!
");}else {ch = '0';printf("
扫描到的U盘文件:
");scan_files(scan_path);}break;}case '2':{LED3_TOGGLE;result = f_mount(&fs,"0:",1); /* Mount a logical drive */if(result != FR_OK){printf("
文件系统挂载失败!
");}else {ch = '0';read_write_flie(); /* 读取根目录下test.txt的内容 */}break;
default:/* 如果不是指定指令字符,打印提示信息 */printf("
输入有误
");break;}}}}之前用按键刷新做条件能成功运行,换成串口字符做条件就卡住了,没遇到过这种情况,求助大佬
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>