之前项目用STM32F207,现在升级到用STM32F446处理器,用到USB的OTG_FS模式接法:

1、USB只连接了DP/DM

2、DP需上拉1.5K的电阻到3.3V

3、PA9(VBUS) 和ID都没接,悬空

给软件人员进行调试时,他倒腾快2周了,USB死活没法连上,就开始怀疑到我板子上,设计有问题,说是有可能PA9 (VBUS)没接5V的原因,

这给我气的,我最讨厌有人说我设计的板子有问题,后来亲自查资料,看网上有人提到这个问题,VBUS这个PIN可以进行设置的,可以关掉

VBUS检测功能。然后我在他的Keil工程里添加一个宏“VBUS_SENSING_ENABLE”(具体在哪个位置看下图),重新编译下载,搞定。

让我一个搞硬件的在半天内搞定这个事,真爽。

说到这,可以在工程里搜“VBUS_SENSING_ENABLE”这个宏,仔细看,可以看到有个地方是Disablesensing = 1,就是关掉VBUS进行检测。

关于VBUS的连接,最清晰的解释在参考手册内,如下:

The VBUS pin can be freed by disabling the VBUS sensing option. 

This is done by setting the NOVBUSSENS bit in the OTG_FS_GCCFG register. 

In this case the VBUS is considered internally to be always at VBUS valid level (5 V).

STM32F446 OTG_FS_DP/DM调试的更多相关文章

  1. 10分钟学会前端调试利器——FireBug

    概述 FireBug是一个用于网站前端开发的工具,它是FireFox浏览器的一个扩展插件.它可以用于调试JavaScript.查看DOM.分析CSS.监控网络流量以及进行Ajax交互等.它提供了几乎前 ...

  2. Windbg调试命令详解

    作者:张佩][原文:http://www.yiiyee.cn/Blog] 1. 概述 用户成功安装微软Windows调试工具集后,能够在安装目录下发现四个调试器程序,分别是:cdb.exe.ntsd. ...

  3. 珍惜每一滴水(kbmmw 中的内存调试)

    作为一个服务器端的应用,最基本的要求就是稳定,当然要做一个稳定的服务器端,需要涉及到很多方面, 内存泄露就是稳定的一个致命杀手,因为服务器的物理内存是有限的,即使一个功能有很小的内存泄露,经过 长时间 ...

  4. VC++ 6.0远程调试配置

    VC开发环境之所以提供远程调试的能力,是因为有些情况下单机调试会让你崩溃掉...比如,调试GUI程序的WM_PAINT消息,因为要单步调试,所以调试器会对界面的重绘产生副作用(Heisenberg不确 ...

  5. 010医疗项目-模块一:用户添加的实现(Dao,Service,Action,增加页面调试,提交页面调试)

    要实现的效果:

  6. 使用eclipse远程调试Tomcat的方法

    tomcat是一种非常常见的java web应用服务器,有时候服务器可能并不是部署在本地,而是部署在远程其他的机器上,我们用eclispe该如何进行debug调试呢? 1. 在eclispe中新建we ...

  7. Windbg调试命令详解(3)

    3 进程与线程 既可以显示进程和线程列表,又可以显示指定进程或线程的详细信息.调试命令可以提供比taskmgr更详尽的进程资料,在调试过程中不可或缺. 3.1 进程命令 进程命令包括这些内容:显示进程 ...

  8. ios 利用Reveal来调试界面2--真机调试(步骤详解)

    使用真机调试我们的App界面,如果你的真机是没有越狱的设备,那么使用Reveal来调试UI的步骤是最麻烦的.

  9. openStack云平台虚拟桌面galera mysql 3节点集群实例实战 调试完成

    被复制节点: /usr/local/mysql/bin/mysqld_safe --wsrep_cluster_address=gcomm:// >/dev/null &复制节点01: ...

随机推荐

  1. Zabbix 监控rabbitmq

    一 应用场景描述 测试环境业务 OpenStack中搭建了rabbitmq作为RPC消息队列,所以mq起到了很重要的角色,本案例是来如何使用zabbix监控 rabbitmq业务 二 Rabbitmq ...

  2. HDU 1847 Good Luck in CET-4 Everybody! 博弈

    题目思路: 写出SG函数(1表示先手胜,0表示先手负) 110110110110-- 发现n%3==0时,Cici胜 #include<stdio.h> #include<strin ...

  3. foreach 循环的应用传值

    $arr=array(1,5,8,8,9);foreach ($arr as $key => $value) { //这里可以一边改外面$arr的值一边下一步循环 $value=++$value ...

  4. mac版tomcat修改端口无法访问,80端口无法访问

    在mac上安装好了tomcat,修改了端口为80,没想到关闭tomcat时提示出错,而且无法访问,原来我犯了两个错误. 1.我用的是mac上的文本编辑.app打开然后修改的,重新修改为8080也不行, ...

  5. php app版本升级的思路

    用户端传递当前app的版本号,再根据机型和app_type ,查找数据库里的版本号 ,去比较 ... CREATE TABLE `common_versioninfo` ( `id` int(11) ...

  6. PHPMailer实现PHP邮件发送

    1.首先是下载PHPMailer http://code.google.com/a/apache-extras.org/p/phpmailer/ 2.解压 从中取出class.phpmailer.ph ...

  7. Ubuntu下Android apk反编译

    需要用到的工具 1.apktool_2.0.3.jar https://bbuseruploads.s3.amazonaws.com/0becf6a1-1706-4f2e-9ae6-891e00a8d ...

  8. IIS下访问网络驱动器(网络位置)

    System.Diagnostics.Process p = new System.Diagnostics.Process(); p.StartInfo.FileName = "cmd.ex ...

  9. XPath相关笔记

    <?xml version="1.0" encoding="utf-8" ?> <employees>   <employee o ...

  10. LINQ里的“equals”和“==”的区别

    对于值类型,如果对象的值相等,则相等运算符 (==) 返回 true,否则返回 false.对于string 以外的引用类型,如果两个对象引用同一个对象,则 == 返回 true.对于 string ...