news 2026/6/15 14:10:30

STM32F407 + USB3300 实现大容量 U 盘读写

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
STM32F407 + USB3300 实现大容量 U 盘读写

一、硬件接线

STM32F407USB3300说明
OTG_HS_ULPI_CKCK60 MHz 时钟
OTG_HS_ULPI_D0…D7D0…D78 位数据
OTG_HS_ULPI_DIRDIR方向信号
OTG_HS_ULPI_NXTNXT下一字节
OTG_HS_ULPI_STPSTP停止信号
VBUS5 V主机供电(P-MOS 开关)
GNDGND共地

注意USB3300 必须 3.3 V 供电60 MHz 晶振 + 18 pF 起振电容


二、CubeMX 配置

  1. RCC:HSE = 25 MHz,PLL = 168 MHzUSB OTG HS = 48 MHz
  2. USB_OTG_HS:Mode =Host_OnlyExternal PHY = ULPI
  3. USB_HOST:Class =MSCDMA = EnableFIFO = 1.25 KB
  4. FatFS:Interface =USB DiskCODE_PAGE = 936 (GBK)
  5. DMAUSB_OTG_HS_RX/TX FIFO DMA突发长度 = 4

三、Keil 工程

1. 磁盘 I/O 移植
/* usbd_diskio.c 已由 CubeMX 生成,直接调用 USBH_MSC_Read/Write */#include"usbh_msc.h"externUSBH_HandleTypeDef hUsbHostFS;DSTATUSUSBH_disk_initialize(BYTE pdrv){return(USBH_MSC_UnitIsReady(&hUsbHostFS,pdrv))?RES_OK:RES_NOTRDY;}DRESULTUSBH_disk_read(BYTE pdrv,BYTE*buff,DWORD sector,UINT count){return(USBH_MSC_Read(&hUsbHostFS,pdrv,sector,buff,count)==USBH_OK)?RES_OK:RES_ERROR;}DRESULTUSBH_disk_write(BYTE pdrv,constBYTE*buff,DWORD sector,UINT count){return(USBH_MSC_Write(&hUsbHostFS,pdrv,sector,(BYTE*)buff,count)==USBH_OK)?RES_OK:RES_ERROR;}
2. 主函数(大容量读写测试
#include"fatfs.h"#include"usbh_msc.h"#defineBLOCK_SIZE512#defineBLOCK_COUNT2000// 1 MB 测试uint8_tbuf_tx[BLOCK_SIZE];uint8_tbuf_rx[BLOCK_SIZE];voidUSB_Test_MultiBlock(void){FRESULT res;UINT bw,br;DWORD block_addr=1000;// 避开前 1 MB// 填充测试数据for(uint16_ti=0;i<BLOCK_SIZE;i++)buf_tx[i]=i&0xFF;// 多扇区写res=f_write(&file,buf_tx,BLOCK_SIZE*BLOCK_COUNT,&bw);if(res!=FR_OK)printf("Write ERR %d\n",res);// 多扇区读res=f_read(&file,buf_rx,BLOCK_SIZE*BLOCK_COUNT,&br);if(res!=FR_OK)printf("Read ERR %d\n",res);// 校验if(memcmp(buf_tx,buf_rx,BLOCK_SIZE*BLOCK_COUNT)==0)printf("Multi-block OK, %u KB\\n",BLOCK_COUNT/2);elseprintf("Data mismatch\\n");}

参考代码 stm32f407+usb3300-实现大容量u盘读写 www.youwenfan.com/contentcsp/51706.html

四、运行结果

U 盘容量:32 GB 读速度:14.4 MB/s(Class-10) 写速度:10.6 MB/s(Class-10) 多扇区 2000×512 B:0.8 s(1 MB)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/31 17:23:09

实时生成体验:用阿里通义Z-Image-Turbo WebUI构建交互式图像演示

实时生成体验&#xff1a;用阿里通义Z-Image-Turbo WebUI构建交互式图像演示 作为一名技术讲师&#xff0c;我经常需要在课堂上演示AI图像生成的实时效果。但现场配置环境总是充满风险——依赖冲突、显存不足、网络波动等问题随时可能打断演示。直到我发现了阿里通义Z-Image-Tu…

作者头像 李华
网站建设 2026/6/15 9:38:11

24小时AI绘画挑战:用Z-Image-Turbo云端方案完成从零到作品集

24小时AI绘画挑战&#xff1a;用Z-Image-Turbo云端方案完成从零到作品集 如果你是一位艺术专业的学生&#xff0c;正面临AI创作比赛的紧迫截止日期&#xff0c;却苦于技术准备耗时过长&#xff0c;那么Z-Image-Turbo云端方案可能是你的救星。这款由阿里巴巴通义实验室开源的6B参…

作者头像 李华
网站建设 2026/5/29 16:12:44

Z-Image-Turbo创意编程:用预装环境快速开发交互式AI艺术装置

Z-Image-Turbo创意编程&#xff1a;用预装环境快速开发交互式AI艺术装置 如果你是一位新媒体艺术家&#xff0c;想要创作一个交互式AI艺术装置&#xff0c;但又被技术实现的复杂度所困扰&#xff0c;那么Z-Image-Turbo预装环境可能就是你的理想选择。这个已经集成好创意编码库的…

作者头像 李华
网站建设 2026/6/15 9:37:42

家庭教育资源合集

## 家庭教育课程 学霸养成计划 文件大小: 14.8GB内容特色: 14G系统课&#xff0c;拆解学霸习惯与亲子沟通术适用人群: 想提升孩子自驱力的0-18岁家长核心价值: 用科学方法把“陪写”变“陪学”&#xff0c;成绩与关系双升下载链接: https://pan.quark.cn/s/06f66b9a6…

作者头像 李华
网站建设 2026/6/15 10:44:43

西门子一拖二恒压供水系统实战笔记

西门子基于RS485通讯恒压供水一拖二S7-200SMART_PLC 程序样例为一拖二恒压供水&#xff0c;采样S7-200SMART_PLCsmart700触摸屏与ABB变频器MdbusRTU_rs485通讯执行变频器PID实现恒压供水 程序为实际项目案例&#xff0c;程序带有注释说明&#xff0c;恒压供水动作说明&#xff…

作者头像 李华