在线时间589 小时
UID3079326
ST金币0
蝴蝶豆4
注册时间2014-11-30
论坛元老
- 最后登录
- 2020-6-28
|
a0a.1 32b0c
本帖最后由 wambob 于 2017-4-10 21:35 编辑
【NUCLEO-L496ZG评测】+开箱+对比
【NUCLEO-L496ZG评测】+开发板上电
【NUCLEO-L496ZG评测】开发环境搭建及Coremark 跑分
【NUCLEO-L496ZG评测】+定时器+DAC播放音乐
STM32中文官网(www.stmcu.com.cn)
USB OTG是USB On-The-Go的缩写。
USB技术使得PC和周边设备能够通过简单方式 、适度的制造成本将各种设备连接在一起,但是离开电脑的控制,各设备无法利用USB接口进行数据交换。
On-The-Go,即OTG技术就是实现在没有Host的情况下,实现设备间的数据传送。
在OTG中,初始主机设备称为A设备,外设称为B设备。可用电缆的连接方式来决定初始角色。
OTG线和USB线相比,多了一根数据线ID,用来识别角色。
nucleo stm32l496ZG板上 USB OTG的原理图如下:
从原理图看出,USB通过90欧姆阻抗的差分对传输数据。ID用来判断主机设备还是外设。作为主机设备时通过PG6使能
STMPS2151STR给外设设备供电,并且通过PG5检测USB过流。
通过软件可以设置为:仅作USB主机、仅作USB设备、全角色OTG。
U盘是常用的USB设备。
新建STM32CubeMX工程,在管脚配置界面开启UBS_OTG_FS为:仅作USB主机
USB HOST选择大容量存储主机类,选择USB Disk开启FATFS文件系统。
开启串口
配置系统时钟频率为80MHZ,USB频率为48MHz。
配置串口
在FATFS配置中选择简体中文字GBK编码支持中文,使能长文件名,缓存存储在堆(STACK)。
USB_OTG_FS为默认配置不作修改。
USB_HOST配置中,USB主机调试等级(USBH_DEBUG_LEVEL)选择2,此时用户信息和错误信息会通过标准输出设备显示。
USB_HOST配置中,设置PG6使能STMPS2151STR给USB设备供电。
最后设置工程设置
导出的工程
fatfs.c为文件系统的应用层文件,包含文件系统的初始化函数MX_FATFS_Init()。
usbh_conf.c为USB配置文件,包含USB管脚的初始化,寄存器参数初始化,中断回调函数等。
usb_host.c为应用层文件,包含USB HOST的初始化函数MX_USB_HOST_Init(),以及HOST后台任务函数MX_USB_HOST_Process()。
写U盘的代码参考Paderboy的帖子https://www.stmcu.org.cn/module/forum/thread-611274-1-1.html
串口输出
U盘插到电脑上
开发板介绍
http://www.stmcu.com.cn/Product/pro_detail/cat_code/STM32L4x6/family/81/sub_family/131/sub_child_family/172/layout/product
设计文档
http://www.stmcu.com.cn/Product/pro_detail/cat_code/STM32L4x6/family/81/sub_family/131/sub_child_family/172/layout/design_resource
参考设计
http://www.stmcu.com.cn/Product/pro_detail/cat_code/STM32L4x6/family/81/sub_family/131/sub_child_family/172/layout/APPLICATIONCASE
|
|