模块分类
在 STM32 众多系列的 MCU 中,USB 模块并不是相同的,官方称呼为 USB IP 不同。总的来说可以分文两大类:USB IP、OTG IP。这两种 IP 又可以进行更进一步的细分,如下图:
上图中罗列的芯片并不是很全面,某些新系列的芯片可能与上图有出入。各IP的主要区别如下:
- USB IP: F102/103中的 USB 和 CAN 共享 512 字节的专用 SRAM 来进行数据收发操作,因此两个 IP 不能同时使用
- 仅可作为全速或低速的USB设备;
- 符合USB2.0中的全速规范
- 可用资源:8个双向可配置端点
- 512字节 的专用数据包缓冲存储器SRAM
- CRC(循环冗余校验)生成/校验,反向不归零(NRZI)编码/解码和位填充
- 支持四种传输类型:对于bulk