找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 545|回复: 10
打印 上一主题 下一主题

RK3126开关机电路分析

[复制链接]

97

主题

1291

帖子

5876

积分

EDA365版主(50)

Rank: 5

积分
5876
跳转到指定楼层
1#
发表于 2017-3-14 12:22 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
rk3126.pdf (1.07 MB, 下载次数: 47)
& k7 x& @( T  n5 \8 d3 G, Z如图和附件的PDF整体原理图,没有专门的PMU,PWR_KEY和PWR_HOLD都是接RK3126的GPIO的,PWR_EN接所有DC/DC或LDO的使能脚,PWRON没接其他地方了。
- q8 p0 v& n7 jDC座插入后VDC的5V直接把PWR_EN一直拉高了。按键按下PWR_KEY为低电平,PWR_HOLD是开机后该脚保持高电平。4 h$ a: z( N& [9 k$ U- K1 P
那如何分析按键是如何实现开关机的?我感觉按键没法同时做开关机, 除非Q2101空贴+ r, @) J# J3 n: q* k/ \
. X/ |2 m5 U8 C! R2 r
9 K/ d4 s! y9 i' p9 G
1 y3 j. N) G5 |& i/ Y! B& c

) l/ U: T( j% m/ D: ?( E/ S: A# ?1 y  U# f5 a7 C, _* z
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!

1

主题

6

帖子

36

积分

二级会员(20)

Rank: 2Rank: 2

积分
36
推荐
发表于 2017-3-19 20:36 | 只看该作者
xhy_hard 发表于 2017-3-19 19:59
4 K2 J9 u. |! P是不是有个单独的小MCU控制长按强制开关机的?

. l& a) p* ^- H9 o我的看法是开关机电路和系统共用一个集成IC,长按开关机按键3秒后,开关机电路会向系统发出关机指令,系统接收后转为关机界面等待一段时间后向集成IC发送关机命令实现关机,如果长按开关机按键达到5秒,开关机电路就会向集成IC直接发送关机命令实现关机,根据楼主的情况,电脑出现蓝屏,说明系统已经崩溃,无法处理其他指令,这里就包括关机指令,如果长按开关机按键实现关机的任务是由系统完成的话,电脑蓝屏的后果可想而之,这时只是拔电源插头了.
! m' j& O8 H5 N4 X9 e! v

点评

应该是  详情 回复 发表于 2017-3-19 22:00

11

主题

251

帖子

971

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
971
11#
发表于 2017-6-5 15:44 | 只看该作者
我认为不需要单独的单片机去控制关机,系统起来之后,通过IO口来检测PWR_KEY脚状态,持续低电平的时候程序执行关机。

9

主题

141

帖子

601

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
601
10#
发表于 2017-3-21 12:26 | 只看该作者
Aubrey 发表于 2017-3-20 18:08
+ G) [: V6 L( W1 u6 u* E; L你说的对,是需要一个单片机,如图我换用的一个8bit的单片机,第四脚检测到一段时间的低电平,说明按 ...

+ i7 B5 Q: {2 t) C" M是PWR_OFF反馈回来的电平要确认一下,跟你之前说的不一致,应该是可行。检测低电平时间大于4S,确保长按
4 o: |8 R4 F2 I# R$ \

42

主题

748

帖子

1276

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1276
9#
发表于 2017-3-21 10:44 | 只看该作者
按键开机容易理解,按下后PWR_EN会变高,RK3126启动后会送来PWR_HOLD高,锁定PWR_EN为高。   关机是长按开机键,Q2100输出低大于几钞后,并要判断按键松开后,RK3216会去掉PWR_HOLD信号 , PWR_EN低,关电源

97

主题

1291

帖子

5876

积分

EDA365版主(50)

Rank: 5

积分
5876
8#
 楼主| 发表于 2017-3-20 18:08 | 只看该作者
xhy_hard 发表于 2017-3-19 19:59* t5 t: [3 s2 o0 g6 l' f
是不是有个单独的小MCU控制长按强制开关机的?

2 Z& f" b2 P; n( j. B% t$ t$ ]4 y$ }
7 U5 N" {$ G; A
* V8 T& s! h; q3 p1 N. z; c$ J你说的对,是需要一个单片机,如图我换用的一个8bit的单片机,第四脚检测到一段时间的低电平,说明按键按下,单片机把PWR_EN拉高,所有电源开启,同时WORK LED亮;' n5 v! E* U+ V  a
又当第四脚检测到一段时间的低电平,单片机把第三脚拉低,这样CPU检测到PWR_KEY为低,提示要关机了处理完数据后把PWROFF脚拉高,这样单片机检测到反馈回的PWR_OFF为低时再把PWR_EN拉低实现完全关机。问下这样可行不?' O" R# a6 i4 o$ b6 m3 ?

点评

是PWR_OFF反馈回来的电平要确认一下,跟你之前说的不一致,应该是可行。检测低电平时间大于4S,确保长按  详情 回复 发表于 2017-3-21 12:26

9

主题

141

帖子

601

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
601
7#
发表于 2017-3-19 22:00 | 只看该作者
扑了个街 发表于 2017-3-19 20:36
% W. f% c" Y5 D$ r我的看法是开关机电路和系统共用一个集成IC,长按开关机按键3秒后,开关机电路会向系统发出关机指令,系 ...
% b; s$ T# O, K
应该是% k( w* T) q/ V" @# F! n7 O

9

主题

141

帖子

601

积分

三级会员(30)

Rank: 3Rank: 3Rank: 3

积分
601
5#
发表于 2017-3-19 19:59 | 只看该作者
扑了个街 发表于 2017-3-19 17:17
, B# g7 t# `3 h2 n3 d小白觉得应该是硬件起作用,我是这麽想的,在长按关机键一小段时间后,系统会收到关机信号从而转为关机界 ...
0 S/ k5 Z- w* ~7 a
是不是有个单独的小MCU控制长按强制开关机的?
0 c0 i, L8 x6 ^" t  M

点评

[attachimg]125569[/attachimg] 你说的对,是需要一个单片机,如图我换用的一个8bit的单片机,第四脚检测到一段时间的低电平,说明按键按下,单片机把PWR_EN拉高,所有电源开启,同时WORK LED亮; 又当第四脚检  详情 回复 发表于 2017-3-20 18:08
我的看法是开关机电路和系统共用一个集成IC,长按开关机按键3秒后,开关机电路会向系统发出关机指令,系统接收后转为关机界面等待一段时间后向集成IC发送关机命令实现关机,如果长按开关机按键达到5秒,开关机电路就  详情 回复 发表于 2017-3-19 20:36

1

主题

6

帖子

36

积分

二级会员(20)

Rank: 2Rank: 2

积分
36
4#
发表于 2017-3-19 17:17 | 只看该作者
渔樵江渚2015 发表于 2017-3-14 19:322 t0 s) r0 A9 d
按照楼主给的原理图,沿着信号找下去有个VDD_ARM电源信号,可能就是开机的最后一步了。关机的话就如myiccdr ...

- Z0 I, t% U) F! M  \( J' B小白觉得应该是硬件起作用,我是这麽想的,在长按关机键一小段时间后,系统会收到关机信号从而转为关机界面,如果长按关机键的时间进一步延长,还没有等到系统对集成块发送关机命令的时候,硬件就会向某个集成块发送关机命令(例如给集成块输入高电平或低电平)从而实现关机,当然以上只是个人的看法。' ]- ?+ Y7 [1 ~0 n( n0 Q  X

点评

是不是有个单独的小MCU控制长按强制开关机的?  详情 回复 发表于 2017-3-19 19:59

11

主题

81

帖子

1701

积分

四级会员(40)

Rank: 4Rank: 4Rank: 4Rank: 4

积分
1701
3#
发表于 2017-3-14 19:32 | 只看该作者
按照楼主给的原理图,沿着信号找下去有个VDD_ARM电源信号,可能就是开机的最后一步了。关机的话就如myiccdream所说,还要请教一下各位,电脑蓝屏了,长按电源键强制关机是硬件起作用还是软件起作用?

点评

小白觉得应该是硬件起作用,我是这麽想的,在长按关机键一小段时间后,系统会收到关机信号从而转为关机界面,如果长按关机键的时间进一步延长,还没有等到系统对集成块发送关机命令的时候,硬件就会向某个集成块发送  详情 回复 发表于 2017-3-19 17:17

2

主题

126

帖子

3712

积分

五级会员(50)

Rank: 5

积分
3712
2#
发表于 2017-3-14 16:37 | 只看该作者
当你插入5V 以后,PWR_EN 为高,这个时候Uboot起来了把,
, z7 l- N9 h7 ]6 ^7 X! YUboot起来以后就去检测PWR_KEY  和  内部复位寄存器(确定是冷启动), 达到多少秒就开始引导系统程序起来。
% O( n5 A$ E( o, o( C- V==============' ]+ b" k# u# @7 P% h  b+ W2 V' a
系统程序起来后,可以做很多事情了, 比如检测到你PWR_KEY按下多少秒,就内部复位(这个时候CPU一般会让内部复位寄存器置热启动标志)。然后接下来又是UBOOT起来,UBOOT去检查内部复位寄存器,发现是热启动。那就不引导主程序启动了。
$ A; E' b) i( h: y& A# Z: k% ~% {========
: A6 R: M- x5 h其实这个东西要配合软件来理解
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2024-11-23 20:44 , Processed in 0.065986 second(s), 37 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表