打印

请教,STM32端口输出配置问题

[复制链接]
4002|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
    一直用51单片机,第一次用stm32。在管脚分配上有一些疑问。
    在51中,端口配置成输出时,可以有【push-pull】,【内部上拉】和【开漏】3种模式,其中内部上拉功能可以免除外接上拉电阻,很是方便。。可是看STM32的datasheet,上面说端口配置为输出时,只有【push-pull】和【开漏】两种模式。当不用push-pull模式时(保险起见,避免烧端口),岂不是要加外部的上拉电阻吗?这太占板子面积了。。难道端口配置为输出后,该端口的输入电路上的上拉电阻就被断开了吗??这么高级的芯片应该不会连这个简单的功能都不提供吧??
沙发
jlass| | 2013-1-7 09:22 | 只看该作者
输入才有内部上拉,输出就是开漏,没觉得有什么不对的。

使用特权

评论回复
板凳
dandantcb|  楼主 | 2013-1-7 10:00 | 只看该作者
楼上,我说的是STM32输出不带内部弱上拉电阻,这样在面积紧张的应用中很不好。。如果用推挽,怕烧芯片。。

使用特权

评论回复
地板
uet_cache| | 2013-1-7 10:22 | 只看该作者
我们一般输出都是用PP模式。你如果有个别引脚要引入高电压,自然要特别处理,普通的弱信号(3.3V以下),应该不会烧芯片吧。  至少我应用中没出过什么问题,个别烧的时候,也是因为用示波器或者摄子不小心点到高压入CPU而坏,,但烧的时候还是比较少,,,

使用特权

评论回复
5
dandantcb|  楼主 | 2013-1-7 12:10 | 只看该作者
我碰到过啊,有的芯片,没给他VDD加电之前就对它的端口进行操作,结果端口直接短路。。。。所以一般情况下,通信速率能满足要求时,我们是不用PP模式的。。。

使用特权

评论回复
6
uet_cache| | 2013-1-7 12:17 | 只看该作者
哦,,我没遇到过像 说你的问题,,,,你可以看下GPIO内部结构,结合你的应用去选择配置,,,最好看下手册。。。

使用特权

评论回复
7
jlass| | 2013-1-7 13:52 | 只看该作者
dandantcb 发表于 2013-1-7 10:00
楼上,我说的是STM32输出不带内部弱上拉电阻,这样在面积紧张的应用中很不好。。如果用推挽,怕烧芯片。。 ...

输入才有内部上拉,输出一般都没有的。
FPGA的配置里也只有输入上拉
ARM的配置里内部上拉只有输入时才生效
DSP压根就没有这种配置
输出的上拉一般都没有的,所以我才说很正常。

使用特权

评论回复
8
dandantcb|  楼主 | 2013-1-7 14:12 | 只看该作者
如下图,这是现在增强51常用的端口输出结构。输出可以选择上拉电阻。这种结构免除了外部的上拉电阻,十分方便。


下面2幅图是STM32的参考手册上的。不知道输出时,输入回路上的上拉电阻是否会被强制断开,如果没有断开,那么输出时还是能够有弱上拉的。回头我试试看吧。。如果除了PP,想要得到上拉必须外接电阻,那就悲催了。。不是一大堆电阻就是提心吊胆的用PP。。


使用特权

评论回复
9
jlass| | 2013-1-7 16:29 | 只看该作者
嗯,可能是考虑的东西不一样吧。

使用特权

评论回复
10
jiaxinhui| | 2013-1-7 16:36 | 只看该作者
push-pull 模式驱动能力大。

使用特权

评论回复
11
dandantcb|  楼主 | 2013-1-7 20:48 | 只看该作者
完了。STM32确实是输出只有Push-Pull和OD模式。端口配置成输出后,该端口的输入驱动电路就完全的和输出驱动电路断开了,即输入驱动电路上的上拉电阻不会作用到输出电路上。如果想不用PP模式,又希望有上拉,那只能外加上拉电阻了。。。真晕。。。要加五六十个上拉电阻。。。

使用特权

评论回复
12
1638574407| | 2013-1-7 22:46 | 只看该作者

使用特权

评论回复
13
logokfu| | 2013-1-8 01:02 | 只看该作者
输出搞个上拉有什么作用啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

217

帖子

0

粉丝