STM32之VCP1/VCAP2引脚的处理
需要根据仔细根据手册来决定这两个引脚是直接接地还是电容下拉到地
转载:STM32的Vcap的问题及解决---原来经验也害人
http://bbs.eeworld.com.cn/thread-499497-1-1.html
(出处: 电子工程世界-论坛)
前言
我有个同事,经常也是设计电路这些的,像stm32f1,stm32f4这些的电路经常在设计,算是经验丰富吧。但是这次有个案子(平台:MDK+STM32F405RGT6(LQFP64封装)),他也参与了改版V2版(之前那个版本是别人设计的,称之为V1版,其实主要就是改原理图后lay板)。当时,改版完成后,审图的时候并没有仔细看CPU电路,以为和之前的电路一样(之前的CPU电路是完全OK的)。所以,板子就去打板了。。。。因为板子上还有其他模块被改,所以板子打回来我们就焊接了几pcs,在确定板子焊接没问题之后,插上仿真器结果发现板子根本识别不到仿真器(Jlink仿真和STLINK仿真都识别不到)。而且数显的Power supply的电流显示100度mA,CPU表面微微发烫。
![]()
![]()
对比V1版电路图和V2版电路图,就CPU电路部分而言:V2版的VCAP_1和VCAP_2都接地了。
查看相关手册,觉得这个问题(仿真器不识别),是由VCAP_1和VCAP_2接地引起的。
所以用解焊CPU的31引脚(VCAP_1)和47引脚(VCAP_2),用镊子轻轻挑起,这两个引脚,使之浮空。
然后重新插上仿真器,发现可以识别仿真器,并且下载程序能够正常运行。
量测31引脚(VCAP_1)和47引脚(VCAP_2)电压如下:
![]()
最后的解决办法,在31引脚(VCAP_1)和47引脚(VCAP_2)挑起的情况下,通过飞线焊接2.2UF电容,另外一端接地。
![]()
![]()
一、原因分析
为什么对于LQFP64封装的STM32F4的VCAP_1和VCAP_2都接地就有问题,而对于LQFP64封装的STM32F10XX的31pin和47pin接地就没有问题呢?
1、查看STM32F4 datasheet,我这里以STM32F405xx/STM32F407xx 的datasheet为具体实例做以说明。在F4的datasheet的page15 对兼容性的板子的STM32F10X 和STM32F4XX做了详细的说明。
![]()
注: Ω RESISTOR OR SOLDERING BRIDGE PRESENT FOR THE STM32F10X CONFIGURATION NOT PRESENT IN THE STM32F4XX CONFIGURATION (0欧姆电阻或者桥焊在STM32F10X的板子中出现,而不STM32F4XX的板子中出现)
同样的,查看STM32F10XX的datasheet,我这里以STM32F103xC, STM32F103xD,STM32F103xE 的PDF版的datasheet为实例说明。在datasheet前面一部分的描述中,并未对VCAP或VSS做详细描述。
2、查看STM32F4 datasheet对引脚功能的描述表。发现LQFP64的31pin为VCAP_1,47pin为VCAP_2。
![]()
![]()
同样的,查看STM32F1 datasheet ,对引脚功能的描述表:发现F1的31pin是VSS_1,47pin是VSS_2(这个是接地的)。
![]()
![]()
3、查看STM32F4 datasheet中Power supply schemes 章节的电源的内部Block,可以看到VCAP_1和VCAP_2是VOLTAGE REGULATOR(调压器)相关的两个引脚,并且外接一个2.2UF的电容再接地。
![]()
再看,该部分章节对调压器的描述:
![]()
datasheet 关于这部分,对VCAP_1和VCAP_2的外接电容及串联等效电阻做了明确的规定:
这也就是为什么,F405RGT6的板子上VCAP_1和VCAP_2外接的电容必须是2.2UF而不是其他容值的电容。
![]()
同样的,查看STM32F1 datasheet中Power supply schemes 章节的电源的内部Block。发现F1的电源的Block中没有VCAP,而多了VSS(接地)。
![]()
4、查看F4 中文参考手册。page89对调压器的描述。
嵌入式线性调压器为备份域和待机电路以外的所有数字电路供电。调压器输出电压约为 1.2 V 。
此调压器需要将两个外部电容连接到专用引脚 VCAP_1 和 VCAP_2,所有封装都配有这两个引脚。为激活或停用调压器,必须将特定引脚连接到 VSS或 VDD。具体引脚与封装有关。
通过软件激活时,调压器在复位后始终处于使能状态。根据应用模式的不同,可采用三种不同的模式工作。
![]()
也就是这里,对
同样的,查看F1的中文参考手册中,page37对电源部分的描述:
STM32的工作电压(V DD) 为2.0~3.6V。通过内置的电压调节器提供所需的1.8V电源。
也就是说,这里的调压器输出电压为1.8V,为内核,内存和外设等提供电压。(1.8V域)
所以,我们这个案子问题产生的原因就是:设计人员,因为之前F1的经验,对F4的设计也是做了相同的处理。而导致板子除其余电压正常外,不能识别到仿真器。经验惹的祸。
二、问题的验证:
1、我手里有Nucleo-F466RE的ST的评估板,所以我想看看Nucleo-F466RE对VCAP_1 (31pin)和 VCAP_2(47pin)是怎么处理的?
![]()
通过Nucleo-64的原理图可以看到,对VCAP_1 (31pin)和 VCAP_2(47pin),Nucleo-F466RE是直接用SB38,SB33这两个跳线(也可以叫0欧电阻)直接接地了。而在实物图中也是,C22和C25 没有焊接。
![]()
那么为什么Nucleo-F466RE又如此特殊呢?
接下来,我们查看STM32F466RE的datasheet。
![]()
STM32F446RE的datasheet已经在page15,做出了明确的说明(如上图):
对于STM32F446RE来说,VCAP_1 (31pin)和 VCAP_2(47pin)是 直接接地,而非接电容。
所以在Nucleo-F466RE的板子中,有了SB38和SB33. 那么由于SB38和SB33的加入,而使得我们CPU可以根据不同的芯片型号,而非常灵活的更换CPU。
2、STM32F407ZTG6 板子的VCAP_1 和 VCAP_2
原理图中,对其的处理是:
![]()
量测VCAP_1 和 VCAP_2 波形如下:VCAP_1和VCAP_2电压均为1.27V
![]()
总结:
尽管我们说,STM32的CPU电路很简答,有时候是拿来主义,或者是抄来主义。但是再简单的问题,也需要注意细节。有时候,设计也好,写代码也好,还是不要光照着经验走。有些问题具体问题,还是具体对待,特别是这种电路设计,一定要看datasheet,因为datasheet里面对个别元件或者参数,一定是有详细的说明的。否则就像我们这样,还需要重新打板,不过还好其他电路设计也出现一些问题,改版后重新打板。
STM32之VCP1/VCAP2引脚的处理的更多相关文章
- stm32 复位后 引起引脚的变化,输出电平引起的问题
在做项目的时候,需要通过蓝牙发送指令给STM32,使其复位,然后进入bootloader程序进行升级,但是复位后会导致蓝牙模块关机.stm32有个引脚连接着蓝牙的开关机引脚,高电平开机,低电平关机,我 ...
- stm32输入的功能引脚功能介绍
Ⅰ.写在前面在开发STM32的时候,都需要对IO的模式进行配置(GPIO_InitStructure. GPIO_Mode = xxx).但是,你们都知道各种模式的具体意义吗? 有的人问:IO口输出可 ...
- STM32库函数编程、Keli/MDK、stm32f103zet6
catalogue . Cortex-M3地址空间 . 基于标准外设库的软件开发 . 基于固件库实现串口输出(发送)程序 . 红外接收实验 . 深入分析流水灯例程 . GPIO再举例之按键实验 . 串 ...
- (一)stm32之CMSIS标准、库目录、GPIO
一.CMSIS标准 ST公司的stm32采用的是cortex-m3内核,内核是整个微处理器的CPU.该内核是ARM公司设计的一种处理器体系架构.内核与外设的关系就像PC上的CPU与硬盘.主板.内存等的 ...
- LPC同STM32的比较
Cortex-M3是新兴起来的一种ARM7的核,而ARM7TDMI是一种传统的经典的ARM内核.我们就抛开这一切,来比较一下两则的异同. 我们就在以下平台上比较吧: STMicoelectronics ...
- Duanxx的STM32学习: 启动模式,BOOT0和BOOT1具体解释
在画STM32的电路图的时候,关于STM32的启动方式纠结了一下,现有的參考设计都是在STM32的启动选择引脚BOOT0和BOOT1上使用了跳帽,用以人工选择STM32的启动方式,可是在实际应用中这样 ...
- stm32之CMSIS标准、库目录、GPIO
一.CMSIS标准 ST公司的stm32采用的是cortex-m3内核,内核是整个微处理器的CPU.该内核是ARM公司设计的一种处理器体系架构.内核与外设的关系就像PC上的CPU与硬盘.主板.内存等的 ...
- 7.STM32中GPIO理解
端口概述 在STM32中,每个I/O端口可以由软件配置成为输入/输出模式.复位期间或刚复位后,I/O端口被配置成浮空输入模式.所有的GPIO引脚有一个内部弱上拉和弱下拉,当配置为输入时, 它们可以被激 ...
- 嵌入式单片机STM32应用技术(课本)
目录SAIU R20 1 6 第1页第1 章. 初识STM32..................................................................... ...
随机推荐
- hdu-5804 Price List(水题)
题目链接: Price List Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/131072 K (Java/Othe ...
- 【Lintcode】102.Linked List Cycle
题目: Given a linked list, determine if it has a cycle in it. Example Given -21->10->4->5, ta ...
- 结合Django+celery二次开发定时周期任务
需求: 前端时间由于开发新上线一大批系统,上完之后没有配套的报表系统.监控,于是乎开发.测试.产品.运营.业务部.财务等等各个部门就跟那饥渴的饿狼一样需要 各种各样的系统数据满足他们.刚开始一天一个还 ...
- CentOS6.6中安装VNC server(CentOS配置远程桌面)
1.安装服务 yum install tigervnc-server 1 2 名字有点怪哦,CentOS5前叫vnc-server 2.运行并设置密码 vncserver + 回车 1 2 输入密码, ...
- fabric添加多主机ssh互信
最近折腾fabric,把服务器ssh互信用fabric写了一遍,单向互信,master可以无密码访问client,具体如下: 执行:fab -f ./copyrsa.py allsshkey 即可, ...
- 四 Vue学习 router学习
index.js: 按需加载组件: const login = r => require.ensure([], () => r(require('@/page/login')), 'log ...
- <正则吃饺子> :关于微信支付的简单总结说明(一)
关于支付,一直想参与开发,现在根据项目中已有及参见的微信开发文档,将自己对于微信开发的流程进行简单的总结,以备后用和帮助后来者. 一.相关官方文档 微信支付官方文档:https://pay.weixi ...
- css如何改变placeholder的默认颜色值
input:-moz-placeholder {/* Mozilla Firefox 4 to 18*/ color: red; input::-moz-placeholder {/* Mozilla ...
- PCL中异常处理机制
博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=287 本节我们主要讨论PCL在编写和应用过程中如何利用PCL的异常机制,提高 ...
- 虚拟机中的Linux安装VMware Tools
虚拟机中的Linux安装VMware Tools Tools" TITLE="虚拟机中的Linux安装VMware Tools" /> Tools" TI ...