这里会显示出您选择的修订版和当前版本之间的差别。
后一修订版 | 前一修订版 | ||
icore4t_36 [2020/03/20 15:28] zgf 创建 |
icore4t_36 [2022/04/01 10:52] (当前版本) sean |
||
---|---|---|---|
行 2: | 行 2: | ||
|技术支持电话|**0379-69926675-801**||| | |技术支持电话|**0379-69926675-801**||| | ||
|技术支持邮件|Gingko@vip.163.com||| | |技术支持邮件|Gingko@vip.163.com||| | ||
- | |技术论坛|http://www.eeschool.org||| | ||
^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | ^ 版本 ^ 日期 ^ 作者 ^ 修改内容 ^ | ||
| V1.0 | 2020-03-20 | gingko | 初次建立 | | | V1.0 | 2020-03-20 | gingko | 初次建立 | | ||
- | + | \\ | |
- | + | \\ | |
+ | \\ | ||
+ | \\ | ||
===== STM32CubeMX教程三十六——USB_VCP实验(FS) ===== | ===== STM32CubeMX教程三十六——USB_VCP实验(FS) ===== | ||
+ | \\ | ||
1.在主界面选择File-->New Project 或者直接点击ACCEE TO MCU SELECTOR | 1.在主界面选择File-->New Project 或者直接点击ACCEE TO MCU SELECTOR | ||
{{ :icore4t:icore4t_cube_36_1.png?direct |}} | {{ :icore4t:icore4t_cube_36_1.png?direct |}} | ||
行 91: | 行 91: | ||
* I/O request为底层针对USB通信接口的封装。 | * I/O request为底层针对USB通信接口的封装。 | ||
* 黄色USB Device Class部分为USB类文件,也属于中间件,USB设备库,目前ST DEMO中支持的类有HID, Customer HID, CDC, MSC, DFU, Audio, ST提供了这些类的源码框架,其他的Class或者是复合设备需要自己根据实际需求情况进行扩展或定制。如果用户需求只是需要一个标准类,比如CDC通信,那么最好就使用现成的代码,不需要做任何修改就可以实现这个CDC类通信的功能。 | * 黄色USB Device Class部分为USB类文件,也属于中间件,USB设备库,目前ST DEMO中支持的类有HID, Customer HID, CDC, MSC, DFU, Audio, ST提供了这些类的源码框架,其他的Class或者是复合设备需要自己根据实际需求情况进行扩展或定制。如果用户需求只是需要一个标准类,比如CDC通信,那么最好就使用现成的代码,不需要做任何修改就可以实现这个CDC类通信的功能。 | ||
+ | |||
* 蓝色USB Device HAL Driver为HAL库部分,是对USB外设接口的封装,属于底层驱动,不需要修改,它分为PCD和LL Driver,PCD处于LL Driver之上。 | * 蓝色USB Device HAL Driver为HAL库部分,是对USB外设接口的封装,属于底层驱动,不需要修改,它分为PCD和LL Driver,PCD处于LL Driver之上。 | ||
* 洋红色USB Device Configuration为USB配置封装,位于USB底层HAL层驱动与中间件USB协议栈之间,一方面向上层(USB设备库)提供各种操作调用接口,另一方面,向底层USB驱动提供各种回调接口。正是由于它的存在,使得USB协议栈(USB设备库)与底层硬件完全分离,从而使USB设备库具有更加兼容所有STM32的通用性。USB Device Configuration为开放给用户的源文件,用户可以根据自己的某些特殊需要进行修改,也可以使用默认的源文件,假如没有任何特殊要求的话,我们使用默认即可。 | * 洋红色USB Device Configuration为USB配置封装,位于USB底层HAL层驱动与中间件USB协议栈之间,一方面向上层(USB设备库)提供各种操作调用接口,另一方面,向底层USB驱动提供各种回调接口。正是由于它的存在,使得USB协议栈(USB设备库)与底层硬件完全分离,从而使USB设备库具有更加兼容所有STM32的通用性。USB Device Configuration为开放给用户的源文件,用户可以根据自己的某些特殊需要进行修改,也可以使用默认的源文件,假如没有任何特殊要求的话,我们使用默认即可。 | ||
行 96: | 行 97: | ||
=== 5.原理图 === | === 5.原理图 === | ||
{{ :icore4t:icore4t_arm_hal_36_3.png?direct |}} | {{ :icore4t:icore4t_arm_hal_36_3.png?direct |}} | ||
- | 本实验使用STM32H750的USB FS实现虚拟串口功能,然后就可以像操作串口一样操作USB,本实验实现终端发送数据,STM32将接收到的数据直接返回给终端,验证发送和接收。 | + | * 本实验使用STM32H750的USB FS实现虚拟串口功能,然后就可以像操作串口一样操作USB,本实验实现终端发送数据,STM32将接收到的数据直接返回给终端,验证发送和接收。 |
==== 四、 实验程序 ==== | ==== 四、 实验程序 ==== | ||
=== 1.主函数 === | === 1.主函数 === |