|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
STM8# Y5 A9 ]& m2 C
STM8系列是意法半导体公司生产的8位的单片机。该型号单片机分为STM8A、STM8S、STM8L三个系列。STM8A:汽车级应用STM8S:标准系列STM8L:超低功耗mcu
' v5 n z4 u o o" q2 {7 f! b% C3 d. S3 E+ S4 j
内核高级STM8内核,具有3级流水线的哈佛结构扩展指令集存储器程序存储器:8K字节Flash;10K 次擦写后在55°C环境下数据可保存20年数据存储器:640 字节真正的数据EEPROM;可达30万次擦写RAM:1K字节
1 I" H9 s5 S* a8 a+ U& K, c- R6 C
时钟、复位和电源管理2.95到5.5V工作电压灵活的时钟控制,4个主时钟源– 低功率晶体振荡器– 外部时钟输入– 用户可调整的内部16MHz RC– 内部低功耗128kHz RC带有时钟监控的时钟安全保障系统电源管理:– 低功耗模式( 等待、活跃停机、停机)– 外设的时钟可单独关闭永远打开的低功耗上电和掉电复位( b# d2 @( Z. p% g/ w
4 E. L1 V) Y, z: x& C9 m
四种STM8低功耗模式的主要特性如表。) m5 C- B8 ^$ U. G2 j
stm8 halt低功耗模式
7 f4 `- ~- J# Y" B* c- d7 N& ?# v/ m6 l. X( p- F
(表12:STM8S低功耗模式管理)
8 D: }- U" s/ v" u5 Q9 N! f- o. F; ~6 R" j% a
1.如果外设时钟未被关闭
H7 _& e1 `7 e8 i& Z8 z
9 K1 a" A2 o( r% s, \9 J; N 2.包括通讯外设的中断(参见中断向量表)- R% q0 {: x0 a! A }2 r& {
5 C @* Z9 h) j7 i3 b9 A! b
STM8等待(Wait)模式
1 w0 ]1 J x1 v& x: e, C 在运行模式下执行WFI(等待中断)指令,可进入等待模式。此时CPU停止运行,但外设与中断控制器仍保持运行,因此功耗会有所降低。等待模式可与PCG(外设时钟门控),降低CPU时钟频率,以及选择低功耗时钟源(LSI,HSI)相结合使用,以进一步降低系统功耗。参见时钟控制
3 z/ D( [" D4 |+ r, ?' o( j6 ?* s1 P5 c& E. m7 U3 ~0 C" ^
(CLK)的说明。4 I" x3 s! J3 E! M
; u9 p( E. Y. W( `& \
在等待模式下,所有寄存器与RAM的内容保持不变,之前所定义的时钟配置也保持不变(主时钟状态寄存器CLK_CMSR)。
: D/ g) \* s( i/ B y2 i- P2 W1 z7 ^- @9 R( w. ~) p
当一个内部或外部中断请求产生时,CPU从等待模式唤醒并恢复工作。* N8 a6 _: F% s+ Z' y
6 O, l" J6 }9 c2 }# ?; v STM8停机(Halt)模式
( x( J; x9 o* D# c& N2 D 在该模式下主时钟停止。即由fMASTER提供时钟的CPU及所有外设均被关闭。因此,所有外设均没有时钟,MCU的数字部分不消耗能量。
* N+ [+ F' s7 i) U, n1 j
1 ` I# x% c/ F1 B 在停机模式下,所有寄存器与RAM的内容保持不变,默认情况下时钟配置也保持不变(主时钟状态寄存器CLK_CMSR)。" @0 {4 s% d# {# T
5 b1 P9 k+ z) m* [& N3 k" ]' e$ o MCU可通过执行HALT指令进入停机模式。外部中断可将MCU从停机模式唤醒。外部中断指配置为中断输入的GPIO端口或具有触发外设中断能力的端口。3 z' s1 v- M5 ^% n5 T
- M8 h1 i. L, g) |: m7 r+ `7 z
在这种模式下,为了节省功耗主电压调节器关闭。仅低电压调节器(及掉电复位)处于工作状态。7 G! b5 a; G% Y
6 _( A& b8 D" |. T# t
快速时钟启动, P# A/ m& o( U8 E/ `( Q" \
2 g! e- W, L, ]$ P& M; N HSI RC的启动速度比HSE快(参见数据手册中电特性参数)。因此,为了减少MCU的唤醒时间,建议在进入暂停模式前选择HSI做为fMASTER的时钟源。
: G2 h0 R- V% b e
; w: X; K7 \( b' M4 c* y 在进入停机模式前可通过设置内部时钟寄存器CLK_ICKR的FHWU位选择HSI做为fMASTER的时钟源,而无需时钟切换。参见时钟控制章节。2 B$ l& E* q( ~$ ]( |
9 s! j7 T- y6 U) O; C' d* }* S1 d: B
STM8活跃停机(AcTIve Halt)模式
1 _: z+ W0 l5 P# J2 P 活跃停机模式与停机模式类似,但它不需要外部中断唤醒。它使用AWU,在一定的延时后产生一个内部唤醒事件,延迟时间是用户可编程的。
T7 L' u9 G* G4 C, e% b9 j9 ]! |. `* s J' H1 U
在活跃暂停模式下,主振荡器、CPU及几乎所有外设都被停止。如果AWU和IWD已被使能,则只有LSI RC与HSE仍处于运行状态,以驱动AWU和IWD计数器。为进入活跃停机模式,需首先使能AWU(如AWU章节所述),然后执行HALT指令。
9 R$ N* r: D4 g& B ]( C3 F9 o# x! l) K; m, o2 w; u) o
主电压调节器自动关闭3 _$ X' ]8 q4 d6 ^8 U
& M( T. z+ A6 z' ]4 L- r; T6 a' X2 J
默认情况下,为了从活跃停机模式快速唤醒,主电压调节器处于激活状态。但其电流消耗是不可忽视的。
& ~0 |; y- W7 l b H; N. ]
. X" I; S3 w3 D. S+ @7 n 为进一步降低功耗,当MCU进入活跃停机模式时,主电压调节器可自动关闭。通过设置内部时钟寄存器CLK_ICKR的REGAH位可实现此功能。此时:5 ]8 j1 g4 B% d# C! A" [3 w
# Z4 C( K' U9 o* P. a
MCU内核由低功耗电压调节器(LPVR)供电(如同停机模式)。# J7 _: B$ ?% m7 c8 r
+ v# Z6 B0 Y4 _- `
仅LSI时钟源可用,因为HSE时钟源对于LPVR来说电流消耗太大。
( D# J& U2 x" O+ a
8 V3 q* a0 `4 C5 r V6 l( k 在唤醒时主电压调节器重新被打开,这需要一个比较长的唤醒时间(参见STM8数据手册电特性部分唤醒时间与电流消耗的相关数据)。( K! v9 f0 q" n
+ F( j7 F5 N7 Z6 n3 h: V
快速唤醒时钟5 P y+ J1 K: R3 I6 w# c& @
6 h- L2 S! T. e) q- K
如停机模式所述,为了缩短唤醒时间,建议使用HSI做为fMASTER的时钟源。FHWU位也可用于缩短切换时间。1 {5 A* l0 j2 j4 l; W
- [5 q; C3 E" ^6 H" g& O1 A
在活跃停机模式下,快速唤醒是很重要的。这可以提高CPU的执行效率,使MCU处于运行状态与低功耗模式之间的时间最短,从而减少整体平均功耗。
$ @# T+ H! e) V' _ \1 g2 E% V; Q
|
|