新闻中心

EEPW首页>嵌入式系统>设计应用> STM32 USB固件库结构

STM32 USB固件库结构

作者: 时间:2016-11-24 来源:网络 收藏
STM32USB固件库结构如下图所示:



可见,STM32 USB固件库分为3层:Low Layer、Medium Layer和High Layer,下面分析下这三层分别的角色:

本文引用地址://m.amcfsurvey.com/article/201611/320887.htm

(1)Low Layer

usb_regs(.h,.c):实现了硬件抽象层,提供了一个函数集合来操作USB外设寄存器,这个集合包括Commmom resister functions、Endpoint register functions、Buffer description table functions和Double-buffered endpoints functions四个函数集;

usb_int(.h,.c):模块处理正确中断服务程序;它提供了USB协议事件与这个库的连接,低优先级中断被CTR_LP()函数管理,用于控制模式、中断模式和批量模式(单缓冲区);高优先级中断被CTR_HP()函数管理,用于快速传输模式,像同步传输模式和批量模式(双缓冲区);

usb_mem.c(.h,.c):负责拷贝数据,从用户内存区到USB模块内存区(PMA)或者从USB模块内存区(PMA)到用户内存区;

(2)Medium Layer

usb_init(.h,.c):设置在整个库中用的到的USB初始化函数和全局变量

usb_core(.h,.c):整个库的核,它实现了USB2.0规范;

usb_sil(.h,.c):实现外围接口的抽象层,它提供的过程实现端点的读写;

(3)High Layer:提供给开发人员应用接口



关键词:STM32USB固件库结

评论


技术专区

关闭