打印

求助关于STM32的双向IO设置

[复制链接]
11324|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
fredinand|  楼主 | 2011-12-2 11:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
因为要与一个外部5V的芯片进行数据读写,所以使用PB8-15作为8位数据双向IO口使用。
我的配置是将这八个口用4.7K电阻上拉到3.3V,并配置成开漏输出,直接连接至外部芯片的IO口。
然后通过输出高低来查看IO口输出情况,发现PB9,PB10,PB13,PB15在输出高时IO口线上电平为4.9-5.04V,输出低时为0.36V。
PB8,PB11,PB12,PB14则没有反应,不管输出什么,IO口线上电平都为0.02-0.03V。
不知为何,请高手指教!
沙发
香水城| | 2011-12-2 14:01 | 只看该作者
先把外部5V的芯片断开试试看?

使用特权

评论回复
板凳
airwill| | 2011-12-2 15:15 | 只看该作者
分析:
1. 这八个口用4.7K电阻应该上拉到 5V 是最合适的. 不过出现这样问题的原因却不在这里.
2. PB9,PB10,PB13,PB15在输出高时IO口线上电平为4.9-5.04V,输出低时为0.36V, 说明这 4 个脚相连的 5V 器件引脚连接正常, 并有一定的上拉能力。
3. PB8,PB11,PB12,PB14则没有反应,不管输出什么,IO口线上电平都为0.02-0.03V。这也不说明 STM32 芯片有问题, 因为 "开漏输出" 没有上拉能力, 可能被外部的 5V 器件拉低了. 当然也有可能是引脚虚焊了.

使用特权

评论回复
地板
fredinand|  楼主 | 2011-12-2 15:26 | 只看该作者
恩,一样的配置,连接到一样的外设引脚,出现两种不同的状况,很是费解,我先按照楼上说的把外部器件断开试试看,排除STM32的问题。

使用特权

评论回复
5
fredinand|  楼主 | 2011-12-2 16:27 | 只看该作者
断开外部器件后,所有引脚在输出高时为3.31V,输出为低时为0.02V,正常
看来原因还是在和外部器件的连接问题,那么我要怎么样和这种5V的器件的数据IO口通讯呢?
请高手指点!

使用特权

评论回复
6
香水城| | 2011-12-2 17:02 | 只看该作者
断开外部器件后,所有引脚在输出高时为3.31V,输出为低时为0.02V,正常
看来原因还是在和外部器件的连接问题,那么我要怎么样和这种5V的器件的数据IO口通讯呢?
请高手指点! ...
fredinand 发表于 2011-12-2 16:27


开漏输出并上拉到5V即可。

如果外部器件输出低,则从STM32端,无论输出高或低,外面测量都会是低。所以当STM32要输出数据时,必须保证外部器件不能输出低;如果STM32要输入数据时,先在端口输出高,再读端口即可得到对方输出的数据。

使用特权

评论回复
7
fredinand|  楼主 | 2011-12-2 22:35 | 只看该作者
好的,按楼上的先试验下看看

使用特权

评论回复
8
huoleida| | 2011-12-3 21:45 | 只看该作者
1、CMOS的3V驱动CMOS的5V芯片,是没有问题的。如果你的5V芯片是TTL电路的话,STM32就要必须上拉到5V才能可靠的驱动(否则的话,可能会出现信号状态错误)。
2、STM32输出时,外部芯片IO配置是输入模式,STM32输入时,外部芯片IO是输出,就这样就OK了。
3、你上面的情况可能是STM32输出时,外部芯片IO也配置成输出状态(如果输出为高的话,不影响STM32的输出状态,如果输出为低的话,就被强制下拉了,就是线与的关系了。)

使用特权

评论回复
9
fredinand|  楼主 | 2011-12-11 10:26 | 只看该作者
谢谢大家,硬件上没有问题,是访问外部器件寄存器的时候控制时序出现了小BUG。
这个问题实际上是用STM32的IO口来模拟过去51中得MOVX指令,要相当注意RD,WR,CS,CD的时序关系,
谢谢大家给的建议!

使用特权

评论回复
10
张文XXX| | 2012-3-28 13:54 | 只看该作者
留住学习下。

使用特权

评论回复
11
jimmychen| | 2013-8-25 11:22 | 只看该作者
mark

使用特权

评论回复
12
ypldz23| | 2015-5-29 00:35 | 只看该作者
您好!小弟最近在学STM32,从51转过来的,要用STM32读写8253,之前用51的MOVX指令操作,现在用STM32模拟,但是搞了几天,一直没调出来,也不知道是GPIO设置的问题,还是读写时序不对,请大虾指点一二。

使用特权

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

本版积分规则

124

主题

151

帖子

1

粉丝