STM32F401 USB VBUS 设置引起的一些问题

发布者:tony520最新更新时间:2018-12-20 来源: eefocus关键字:STM32F401  USB  VBUS 手机看文章 扫描二维码
随时随地手机看文章

在开发板上调试代码,开发板上的PA9是floating input 。 然后贴片的时候我们的板子应用了这个引脚并且设置为GPIO_MODE_OUTPUT_PP。


最后引起的问题是USB不能正常通信。


最后查看手册看到如下描述:


Note: When VBUS sensing feature is enabled, PA9 should be left at their default state (floating

input), not as alternate function. A typical 200 μA current consumption of the embedded

sensing block (current to voltage conversion to determine the different sessions) can be

observed on PA9 when the feature is enabled.




最后不得不修改代码如下:


USBD_StatusTypeDef  USBD_LL_Init (USBD_HandleTypeDef *pdev)

  /* Init USB_IP */

  if (pdev->id == DEVICE_FS) {

  /* Link The driver to the stack */    

  hpcd_USB_OTG_FS.pData = pdev;

  pdev->pData = &hpcd_USB_OTG_FS; 

  

  hpcd_USB_OTG_FS.Instance = USB_OTG_FS;

  hpcd_USB_OTG_FS.Init.dev_endpoints = 4;

  hpcd_USB_OTG_FS.Init.speed = PCD_SPEED_FULL;

  hpcd_USB_OTG_FS.Init.dma_enable = DISABLE;

  hpcd_USB_OTG_FS.Init.ep0_mps = DEP0CTL_MPS_64;

  hpcd_USB_OTG_FS.Init.phy_itface = PCD_PHY_EMBEDDED;

  hpcd_USB_OTG_FS.Init.Sof_enable = DISABLE;

  hpcd_USB_OTG_FS.Init.low_power_enable = DISABLE;

  hpcd_USB_OTG_FS.Init.lpm_enable = DISABLE;

  //hpcd_USB_OTG_FS.Init.vbus_sensing_enable = ENABLE;

  hpcd_USB_OTG_FS.Init.use_dedicated_ep1 = DISABLE;

  if (HAL_PCD_Init(&hpcd_USB_OTG_FS) != HAL_OK)

  {

    Error_Handler();

  }


  HAL_PCDEx_SetRxFiFo(&hpcd_USB_OTG_FS, 0x80);

  HAL_PCDEx_SetTxFiFo(&hpcd_USB_OTG_FS, 0, 0x40);

  HAL_PCDEx_SetTxFiFo(&hpcd_USB_OTG_FS, 1, 0x80);

  }

  return USBD_OK;

}



屏蔽标红部分,USB就能够正常通信。


关键字:STM32F401  USB  VBUS 引用地址:STM32F401 USB VBUS 设置引起的一些问题

上一篇:STM32L1xx的库函数有个Bug(stm32l1xx_gpio.c)
下一篇:STM32F4xx固件库搭建后编译出错的一种解决办法

推荐阅读最新更新时间:2024-03-16 16:20

NEC宣布推出新款无线USB PCI控制芯片
  据NEC官方新闻稿提供的资料,NEC的新uPD720171无线USB PCI控制器已经完成,新款芯片在3米范围内传输速度可达480Mbps,可安装在MiniCard或半高MiniCard式扩展卡中,并兼容ExpressCard标准。   该uPD720171无线USB控制器是NEC开发的第二款无线USB控制器,相对之前的型号改善了数据吞吐量和性能,在短距离范围上速度可与有线USB 2.0相媲美。   NEC的样品已经发送给主要的行业合作伙伴,芯片的售价为10美元,但是大批量采购的客户可能会低于这个价格,预计装备这款芯片的笔记本电脑将很快出现。
[焦点新闻]
新款iPhone曝光:苹果无爱USB-C 设计超前
不知不觉,Lightning已经出来10年了,你对这个接口最大感觉是什么? 自iPhone 5以来,每部iPhone都有一个Lightning端口,苹果在2012年将其宣传为比以前的30针接口更 小、更智能、更耐用 的端口。即使该公司的大部分iPad产品线和整个Mac产品线现在都采用了USB-C接口,iPhone也因为采用了Lightning接口而成为异类。 智能手机行业已经普遍而迅速地过渡到USB-C,市场上的绝大多数手机都采用了更通用的接口。苹果不愿意跟随行业采用USB-C这让许多客户感到恼火。 欧盟委员会提出了一项指令,要求所有消费类电子设备,包括智能手机、平板电脑、相机、耳机、便携式扬声器和掌上电视游戏机,都要
[手机便携]
USB与1394谁能把握先机
    要是能在便携式与台式系统之间传输视频数据的话,串行接口的最新进展无颖是到达美好前途的必要条件。串行接口两种最有前景的成员是USB(通用串行总线)和IEEE1394,后者也称为Fire Wire或i.Link。1394规范创始者之一Apple Computer已标准化称为FireWire,而Sony称该接口为i.Link。Sony版本稍有差异,它不允许使用总线供电的设备。     USB阵营正忙于制定下一个版本规范,即2.0版。它是继1.1版澄清1.0版中的某些问题后又一新的举措。USB1.1版已配备在目前的PC与笔记本电脑上。在某些手持式设备,如MP3便携式播放机中也十分流行。在某些场合,手持式设备的连接器作
[应用]
基于USB接口的虚拟示波器的开发实现
基于USB接口的虚拟示波器的开发实现 为了克服虚拟示波器应用中的一些缺点,在虚拟示波器中采用了一种新的总线接口标准——USB接口。主要介绍了基于USB的虚拟示波器的独特优点,着重说明了系统整体设计、外插硬件设计、USB驱动软件设计和客户应用软件设计。 关键词:虚拟示波器,USB,Windows驱动模型,快速傅里叶变换 1 系统总体设计   USB规范中将USB分为5个部分:控制器、控制器驱动程序、USB芯片驱动程序、USB设备以及针对不同USB设备的客户驱动程序。根据设备对系统资源需求的不同,在USB规范中规定了四种不同的数据传输方式:等时传输方式(isochronous)、中断传输方式(interrupt)、控制传输
[模拟电子]
USB2.0接口IP核的开发与设计
随着PC机和外围设备的发展,传统的并行接口和串行接口RS-232在易用性(即插即用) 和端口扩展等方面存在着一定的缺陷,这就使之越来越成为通信的瓶颈,因此通用串行总线(universal serial bus,USB)接口也就应运而生。1994年Compaq,IBM,Intel,Microsoft ,NEC 等公司共同提出了USB 协议规范,1996 年制定出了比较成熟的USB 1.1协议标准,最高传输速度为12Mbps。随着通信的发展,其速度明显不能满足需求,因此2000年提出了USB 2.0标准,增加了高速模式,使传输速度提高了40倍,达到了480 Mbps.凭借价格低廉、使用简单、协议灵活,接口标准化和易于端口扩展等优点,US
[应用]
小电流充电器为USB-单节电池系统提供电池备份
作者:Budge Ing,应用工程师,Maxim Integrated 引言 本方案为低功耗应用解决了一个非常特殊的电池备份问题。当12VDC电源中断时,用户需要一个集成方案,为备份电池提供充电和电源切换。当电压下降至3.0V时,您尤其需要一个断开电池的途径,这里不考虑电量计管理问题。 应该说市场上有大量方案可以解决负载供电和充电问题。然而,这里讨论的设计非常容易实现,而且可以独立工作,无需微控制器,设计灵活、成本低。该方案采用模拟电路实现,无需编程。占用非常小的PCB面积,可满足空间受限应用的要求。 该设计的灵感来源于射频(RF)系统。实际上,该电路对于任何低功耗移动装置(例如,定期发射无线信号的装置)非常有用。大多数U
[电源管理]
小电流充电器为<font color='red'>USB</font>-单节电池系统提供电池备份
USB连接器是什么?为什么现在它会得到大家的喜爱?
目前,几乎所有的电子设备都配备了USB连接线用于充电,占位置的转接电源往往被遗忘在角落,这就产生了一个问题:当没有USB连接器的时候,设备的电量无法得到补充。USB连接器是什么?仅仅是让电子设备的电量得到保证而已吗?USB到底给大家带来了什么改变?为什么现在它会得到大家的钟爱?如果你想解开这些疑惑的话,就跟着泰辰连接器厂家小编一起往下看看吧。 USB是英文UniversalSerialBus的缩写,翻译中文是“通用串行总线”计算机硬件的迅速发展,外设越来越多,电脑键盘、电脑鼠标、调制调解器、打印机、扫描机、数码照相机、MP3mp3播放器等都早已耳熟能详。要真真正正拥有这些设备,又要与计算机连接到哪里?USB连接器在这个基础上诞
[嵌入式]
<font color='red'>USB</font>连接器是什么?为什么现在它会得到大家的喜爱?
STM32F205双USB开发做device
STM32F205双USB开发做device。 记得使用STM32CubeMx联合开发,会让你有意想不到效率! STM32F205有两个USB接口,一个是FSUSB,另外一个是HSUSB。 FSUSB——full speed USB ,HSUSB——high speed USB FSUSB最高支持全速的USB,HSUSB不仅支持全速的USB还支持高速的USB,当然HSUSB要支持高速的USB必须要接外部PHY,才可以支持高速的USB,如果使用内部的PHY只支持全速的USB。 STM32CubeMx生成框架不太好用,对于USB倒是很方便,至于一些简单还是不要用这个东西来配置了,用来很麻烦。
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved