野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4055|回复: 4

stm32f103霸道v2的USB—外部FLASH模拟U盘问题

[复制链接]
发表于 2023-2-13 18:10:49 | 显示全部楼层 |阅读模式
开发板烧录USB—外部FLASH模拟U盘(历程)之后无法正常运行,试过用spi读取外部flash是正常的,烧录USB—外部FLASH模拟U盘之后发现卡死在 主函数的        while (bDeviceState != CONFIGURED);         //等待配置完成(所用程序为f103霸道V2例程),大佬们如何解决啊
回复

使用道具 举报

发表于 2023-2-14 17:32:24 | 显示全部楼层
重新刷外部flash试试
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-16 17:36:40 | 显示全部楼层
lrz 发表于 2023-2-14 17:32
重新刷外部flash试试

整片擦除外部flash之后还不行,我改了一下原来的主函数
  1. static void USB_Delay(__IO uint32_t nCount)
  2. {
  3.         for(; nCount != 0; nCount--);
  4. }
  5. __IO uint32_t DeviceID = 0;
  6. __IO uint32_t FlashID = 0;
  7. int main(void)
  8. {
  9.          /* USART config */
  10.         USART_Config();
  11.        
  12.   LED_GPIO_Config();
  13.   
  14.         /*初始化*/
  15.         Set_System();
  16.          
  17.         /*设置USB时钟为48M*/
  18.         Set_USBClock();
  19.         FLASH_SPI_disk_initialize();
  20.         /*唤醒flash*/
  21.         SPI_Flash_WAKEUP();
  22.        
  23.         /* 获取 Flash Device ID */
  24.         DeviceID = SPI_FLASH_ReadDeviceID();       
  25.         USB_Delay(500);
  26.        
  27.         /* 获取 SPI Flash ID */
  28.         FlashID = SPI_FLASH_ReadID();       
  29.         printf("\r\n FlashID is 0x%X,\
  30.         Manufacturer Device ID is 0x%X\r\n", FlashID, DeviceID);
  31.        
  32.         /*配置USB中断(包括SDIO中断)*/
  33.         USB_Interrupts_Config();
  34.         SPI_FLASH_BulkErase();
  35.         SPI_Flash_WAKEUP();       
  36.         /*USB初始化*/
  37.         USB_Init();

  38.         printf("\r\n 野火 F103-霸道 STM32 USB MASS STORAGE 实验\r\n");

  39.         while (bDeviceState != CONFIGURED);         //等待配置完成
  40.           
  41.         printf("\r\n 野火 F103-霸道 STM32 USB MASS STORAGE 实验\r\n");
  42.          
  43.   while (1)
  44.   {
  45.     LED2_TOGGLE;
  46.     USB_Delay(0x0FFFFF);
  47.   }
  48. }
复制代码
回复 支持 反对

使用道具 举报

发表于 2023-2-17 11:03:43 | 显示全部楼层
改完正常了吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-2-17 12:15:52 | 显示全部楼层
dyygxmy 发表于 2023-2-17 11:03
改完正常了吗?

不正常啊,就是模拟优盘那个 while (bDeviceState != CONFIGURED);  一直过不去
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-7 08:48 , Processed in 0.043794 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表