任务介绍
题目要求:设计一款USB转SPI的适配器
采用USB Type-C连接器,支持USB2.0数据传输
板卡尺寸:小于35mmx18mm
包含信号:SPI信号线、+5V、+3.3V、GND
主要器件:需在DigiKey官网上有货且正常售卖
模块介绍
根据任务要求,本次选用STM32F072CBT6芯片设计了一款USB转SPI适配器,此板卡可将计算机的USB协议指令转换为SPI总线信号,适用于高速数据采集、嵌入式设备编程、传感器调试等场景。
(1)STM32F072CBT6 芯片DigiKey链接:
(2)ESD0302TL 芯片DigiKey链接:
(3)PPTC042LFBN-RC 芯片DigiKey链接:
(4)AMS1117-3.3 芯片DigiKey链接:
一、ESD0302TL
核心作用:静电与浪涌保护
1、ESD防护
当用户热插拔USB线缆时,接口可能因人体静电(可达数千伏)产生瞬时高压。ESD0302TL通过 钳位电压(Clamping Voltage) 将高压限制在安全范围(如±15kV),并将电流导向电源地(GND),避免高压击穿后端的USB控制器或SPI转换芯片1。
2、电气过载保护
对USB的电源线(VBUS)和数据线(D+/D-)进行过压保护。例如,VBUS若因充电器故障引入高压(如12V),ESD0302TL会触发钳位机制,防止电压传入敏感电路
3、在这个单板主要涉及具体应用
保护对象
USB差分信号线(D+/D-):防止数据传输因静电干扰而丢包或错误。
VBUS电源线:避免电源波动损坏SPI转换芯片。
SPI信号线:若SPI接口暴露于外部,可扩展ESD芯片保护SCK、MISO等引脚。
单信号线保护:每个需保护的信号线独立连接ESD0302TL的一个通道,另一引脚接地。
二、PPTC042LFBN-RC
核心功能:提供标准化物理连接
1、SPI信号与电源传输
PPTC042LFBN-RC是一款8针脚、2.54mm间距的双排直插式插座连接器(通孔安装)。用于将SPI信号(SCK、MISO、MOSI、片选CS0/CS1等)、电源(3.3V/5V)及GPIO信号引出至外部设备,实现传输:
2、SPI通信信号:连接SPI从机设备。
3、电源输出:提供3.3V或5V电源,直接为从机供电。
4、扩展GPIO:支持2路通用I/O接口,用于中断控制或自定义信号传输。
5、在这个单板主要涉及具体应用
扩展多从机支持
通过CS0/CS1两路片选信号,可连接两个SPI从机设备,无需额外扩展电路。
简化用户连接
将分散的SPI信号、电源、GPIO集成于单一连接器,避免用户手动飞线,降低接线错误风险。
三、AMS1117
核心作用:电压转换与稳压
1、5V转3.3V
USB接口的VBUS引脚提供5V电源,但SPI控制器和多数SPI外设需3.3V供电。AMS1117-3.3将5V降压至3.3V,确保逻辑电平兼容性,避免高压损坏芯片
2、低压差特性
在1A输出电流下压差仅1.2V(最大1.3V),输入电压≥4.3V即可稳定输出3.3V,即使USB电压波动
3、为SPI接口供电
部分USB转SPI板通过AMS1117输出的3.3V直接为SPI从设备供电,省去外部电源,提升集成度。
4、在这个单板主要涉及具体应用
电源拓扑示例
输入/输出电容:抑制电压纹波,确保稳定性。
电源分配:AMS1117的3.3V输出同时连接SPI主控芯片的VDD引脚、SPI信号电平转换电路及对外供电接口。
原理图和PCB模块介绍
原理图
PCB
一、USB接口与保护电路
1、ESD0302T(TVS二极管):
用于保护USB数据线(D+/D-)免受静电放电(ESD)损坏。其超低电容(0.2pF)确保高速USB信号完整性,符合IEC 61000-4-2标准(±15kV空气放电/±8kV接触放电)。
2、LSR05(信号线路保护器):
通常并联在USB数据线上,提供次级ESD和浪涌保护,与ESD0302T形成双重防护。
3、PPTC042LFBN-RC(自恢复保险丝):
串联在USB的5V电源线上,当电流超过阈值(如042表示0.42A)时阻值剧增,切断供电;故障解除后自动恢复,防止短路损坏后端电路
二、电源管理模块
AMS1117(3.3V LDO稳压器):
将USB输入的5V降压为3.3V,为STM32F072及其他逻辑芯片供电。其低 dropout 特性确保电压稳定,输出端需搭配10–22μF电容滤波
三、主控制器:STM32F072CBT6
核心功能:
内置USB 2.0全速控制器和SPI外设,直接实现USB协议与SPI协议的转换。
USB端:作为USB设备枚举为虚拟串口(CDC类)或HID设备,通过USB中间层驱动与PC通信。
SPI端:配置为主机模式,提供SCK、MOSI、MISO、CS引脚,支持四种时序模式及最高18MHz时钟。
时钟源:
FC4STCBMF(8MHz晶振)为STM32提供主时钟,经内部PLL倍频至48MHz(USB必需频率)。
四、工作流程
1、USB接入:
PC通过USB发送数据 → 经ESD/LSR05防护 → STM32的USB接口接收。
2、协议转换:
STM32解析USB数据包,提取指令后通过SPI外设转发(如设置SCK频率、CPHA模式)。
3、SPI通信:
STM32拉低目标设备的CS引脚 → 按时序发送数据至MOSI,同时读取MISO响应(全双工)。
4、返回数据:
SPI从设备响应数据 → STM32打包为USB数据包 → 传回PC。
模块主要性能指标和管脚定义
模块主要性能指标
STM32F072CBT6
核心处理器 | Arm Cortex-M0 |
内核规格 | 32-位 |
速度 | 48MHz |
连接能力 | CANbus,HDMI-CEC,I2C,IrDA,LINbus,SPI,UART/USART,USB |
外设 | DMA,I2S,POR,PWM,WDT |
I/0数 | 37 |
程序存储容量 | 128KB |
程序存储器类型 | 闪存 |
EEPROM容量 | - |
RAM大小 | 16Kx8 |
电压 -供电(Vcc/Vdd) | 1.65V~3.6V |
数据转换器 | A/D 10×12b; D/A 2x12b |
振荡器类型 | 内部 |
工作温度 | -40℃~85℃(TA) |
安装类型 | 表面贴装型 |
供应商器件封装 | 48-LQFP(7x7) |
封装/外壳 | 48-LQFP |
管脚定义
一、电源与地线引脚
1 | VBAT | 备用电池供电(3V),用于断电时维持RTC和备份寄存器
8 | VSSA | 模拟地(ADC/DAC参考地)
9 | VDDA | 模拟电源(2.0-3.6V),为ADC/DAC供电
23, 35, 47 | VSS_1/2/3 | 数字地(需全部接地)
24, 36, 48 | VDD_1/2/3 | 数字电源(2.0-3.6V),需全部接3.3V
二、系统核心引脚
7 | NRST | 低电平复位(外部复位信号输入)
5 | OSC_IN | 外部主晶振输入(4-32MHz)
6 | OSC_OUT | 外部主晶振输出
3 | PC14 | 低速晶振输入(32.768kHz RTC)或GPIO
4 | PC15 | 低速晶振输出(32.768kHz RTC)或GPIO
44 | BOOT0 | 启动模式选择0(高电平:系统存储器启动;低电平:主闪存启动)
20 | PB2/BOOT1 | 启动模式选择1(上电后复用为GPIO)
三、调试下载接口
34 | PA13 | SWDIO(默认调试接口)或GPIO(带FT,5V容忍)
37 | PA14 | SWCLK(默认调试接口)或GPIO(带FT,5V容忍)
39 | PA15 | JTAG_TDI(可重映射为GPIO)
40 | PB3 | JTAG_TDO(可重映射为GPIO)
38 | PB4 | JTAG_TRST(可重映射为GPIO)
四、GPIO与复用功能引脚
带FT标记:支持5V电压容忍(如PA0-PA7、PB0-PB1等)。
复用功能:每个GPIO可配置为外设接口(如USART、I2C、ADC等)。
PA0-PA15 | GPIO | TIM2(PWM)、ADC_IN0-7、USART2、I2C1
PB0-PB15 | GPIO | SPI1/I2S、CAN、USB、DAC_OUT
PC6-PC15 | GPIO | I2S2、HDMI-CEC、电容触摸感应
部分高复用引脚示例:
PA9 | USART1_TX / TIM1_CH2
PA10 | USART1_RX / USB_ID
PA11 | USB_DM / CAN_RX
PA12 | USB_DP / CAN_TX
PB6 | I2C1_SCL / USART1_TX
PB7 | I2C1_SDA / USART1_RX
五、其他功能引脚
PC13 | GPIO/侵入检测/RTC输出(防拆机触发清零)
PA0 | GPIO/WKUP(待机模式唤醒)
PA5-PA6 | GPIO/SPI1_SCK/MOSI/DAC_OUT
PB8-PB15 | GPIO/CAN/I2S
eZ-PLM上新建物料和项目的截图
使用了eZ-PLM系统上传了自工程文件,方便保存记录各个版本,也可随时查阅,系统里查阅不到的物料支持手动添加。
物料添加展示图
项目详情图
心得体会
初步学习了原理图和pcb的绘制,还非常生疏,非常感谢硬禾科技提供这次学习机会