打印

进入待机模式怎么让SPI口状态不变化?

[复制链接]
2511|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tanpingsea|  楼主 | 2012-4-10 13:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我使用SPI口与NRF24L01通信。
1、初始化NRF24L01和MCU的IO口相关的
2、把NRF24L01进入掉电模式,此时NRF24L01只有1uA电流
3、配置STM32F100RB进入待机模式,MCU电流大概在4-5uA。此时,NRF24L01的电流马上上升到500-800uA.

我问过NRF24L01的厂家,他说是如果进入NRF24L01掉电模式,NRF24L01的IO口不能变化,否则能就影响了。


所有,有什么办法可以把IO的状态锁定吗?让MCU的IO口进入待机后,维持和进入之前的一样状态?请指教。谢谢。
沙发
香水城| | 2012-4-10 13:36 | 只看该作者
进入待机模式后所有的I/O端口都处于高阻态,要想保持端口状态,需要使用外部的上拉或下拉。

使用特权

评论回复
板凳
tanpingsea|  楼主 | 2012-4-10 13:55 | 只看该作者
这个上拉,下拉的电阻需要多大?我用的低功耗方式,要尽量省电。

使用特权

评论回复
地板
香水城| | 2012-4-10 14:00 | 只看该作者
这个上拉,下拉的电阻需要多大?我用的低功耗方式,要尽量省电。
tanpingsea 发表于 2012-4-10 13:55


一般10K左右即可。待机模式下,因为端口处于高阻态,上下拉电阻上是不耗电的。

使用特权

评论回复
5
tanpingsea|  楼主 | 2012-4-10 14:08 | 只看该作者
谢谢您

上拉到VCC,应该会有电流消耗的。比如3.3V/10K=330uA。我自己先试试看,谢谢。

使用特权

评论回复
6
香水城| | 2012-4-10 14:14 | 只看该作者
谢谢您

上拉到VCC,应该会有电流消耗的。比如3.3V/10K=330uA。我自己先试试看,谢谢。
tanpingsea 发表于 2012-4-10 14:08


如果这个10K电阻的另一端接地,你的计算没有错。但是10K电阻的另一端接的是I/O端口,怎么会有电流呢?

使用特权

评论回复
7
tanpingsea|  楼主 | 2012-4-10 14:41 | 只看该作者
在通向MCU的IO,当然不会消耗电流。
不过这时,IO同时也连接着NRF24L01,这个可以把电流导入到地,从而产生了电流。

我的理解没错吧。谢谢。

使用特权

评论回复
8
香水城| | 2012-4-10 14:51 | 只看该作者
在通向MCU的IO,当然不会消耗电流。
不过这时,IO同时也连接着NRF24L01,这个可以把电流导入到地,从而产生了电流。

我的理解没错吧。谢谢。
tanpingsea 发表于 2012-4-10 14:41


你是说NRF24L01的引脚与地短路,可以把电流导入到地?

如果是这样,说明你的这个NRF24L01坏了!

使用特权

评论回复
9
tanpingsea|  楼主 | 2012-4-10 14:58 | 只看该作者
我的NRF24L01的IO是好的话,接到VCC,完全不会消耗电流?我再问问我们供应商。

使用特权

评论回复
10
tanpingsea|  楼主 | 2012-4-10 20:10 | 只看该作者
还有个问题。比如我的IO口通过10K电阻上拉到VCC.IO通信是否能正常,他还有低电平方式吗?

使用特权

评论回复
11
sherwood1314| | 2012-4-11 08:30 | 只看该作者
:)
上下拉是不会影响到电平变化的。。。它只是个弱上拉。。。

使用特权

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

本版积分规则

0

主题

8

帖子

1

粉丝