OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5937|回复: 2

STM32H750关于U盘实验的疑问

[复制链接]

108

主题

194

帖子

0

精华

高级会员

Rank: 4

积分
713
金钱
713
注册时间
2016-6-29
在线时间
165 小时
发表于 2021-6-15 19:04:16 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 小灰灰111 于 2021-6-15 19:07 编辑

在STM32H750关于U盘实验中,fafts系统里面没有关于U盘的操作,如下图:
1.png
但在实验中是如何将数据写入到U盘当中的呢
2.png
QQ截图20210615185927.png

最佳答案

查看完整内容[请看2#楼]

有的 你看错了源码吧。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2021-6-15 19:04:17 | 显示全部楼层
有的
你看错了源码吧。
  1. //写扇区
  2. //pdrv:磁盘编号0~9
  3. //*buff:发送数据首地址
  4. //sector:扇区地址
  5. //count:需要写入的扇区数
  6. DRESULT disk_write (
  7.         BYTE pdrv,                        /* Physical drive nmuber to identify the drive */
  8.         const BYTE *buff,        /* Data to be written */
  9.         DWORD sector,                /* Sector address in LBA */
  10.         UINT count                        /* Number of sectors to write */
  11. )
  12. {
  13.         u8 res=0;  
  14.     if (!count)return RES_PARERR;//count不能等于0,否则返回参数错误                          
  15.         switch(pdrv)
  16.         {
  17.                 case SD_CARD:        //SD卡
  18.                         res=SD_WriteDisk((u8*)buff,sector,count);
  19.                         while(res)//写出错
  20.                         {
  21.                                 SD_Init();        //重新初始化SD卡
  22.                                 res=SD_WriteDisk((u8*)buff,sector,count);       
  23.                                 //printf("sd wr error:%d\r\n",res);
  24.                         }
  25.                         break;
  26.                 case EX_FLASH:        //外部flash
  27.                         for(;count>0;count--)
  28.                         {                                                                                    
  29.                                 W25QXX_Write((u8*)buff,sector*FLASH_SECTOR_SIZE,FLASH_SECTOR_SIZE);
  30.                                 sector++;
  31.                                 buff+=FLASH_SECTOR_SIZE;
  32.                         }
  33.                         res=0;
  34.                         break;
  35.                 case EX_NAND:        //外部NAND
  36.                         res=FTL_WriteSectors((u8*)buff,sector,512,count);//写入数据
  37.                         break;
  38.                 case USB_DISK:        //U盘
  39.                         res=USBH_UDISK_Write((u8*)buff,sector,count);
  40.                         break;
  41.                 default:
  42.                         res=1;
  43.         }
  44.     //处理返回值,将SPI_SD_driver.c的返回值转成ff.c的返回值
  45.     if(res == 0x00)return RES_OK;         
  46.     else return RES_ERROR;       
  47. }
复制代码
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

108

主题

194

帖子

0

精华

高级会员

Rank: 4

积分
713
金钱
713
注册时间
2016-6-29
在线时间
165 小时
 楼主| 发表于 2021-6-17 10:58:38 | 显示全部楼层
正点原子 发表于 2021-6-15 19:04
有的
你看错了源码吧。

【正点原子】北极星STM32H750开发板\【正点原子】北极星STM32H750开发板资料 资料盘(A盘)\4,程序源码\2,标准例程-HAL库版本\实验60 USB U盘(Host)实验\USER     看了好几遍确实没有啊
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-27 14:13

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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