STM8功耗控制

更新时间:2023-06-04 06:52:17 阅读: 评论:0

STM8S时钟控制器功能强大而且灵活易用,其目的在于使用户在获得最好的性能同时,亦能保证消耗的功率最低
用户可以单独地管理各个时钟源,并将它们分配到CPU和各个外设。主时钟和CPU时钟均带有预分频器,注意的是STM8S系列是没有锁相环倍频功能的。这一节我们主要是对主时钟的编程,片内外设的时钟留到对应的外设章节中说明。
STM8具有安全可靠的无故障时钟切换机制,可在程序运行中将主时钟源切换到另一个时钟源。之所以我们在这一节内容安排在第三节,是因为STM8S有默认时钟源而且简单IO 口编程相对于入门来说更容易接受,所以我们特意安排在第三节。
抗电磁干扰时钟配置寄存器
为了避免由电磁干扰造成的对应用程序误写操作或系统挂起,大多数关键的时钟配置寄存器都有一个互补寄存器与之相对应。系统将会自动检测这些关键寄存器与其互补寄存器之间是否匹配。如果不匹配,则产生一个EMS复位,从而使应用程序恢复到正常操作。详情请参见时钟寄存器描述。这在特定环境下是很有帮助的。
主时钟源介绍
下面4中时钟源可用做主时钟
1、1-24MHz高速外部晶振(HSE)
2、最大24MHz高速外部时钟信号
3、16MHz高速内部RC振荡器(HSI)
4、128KHz低速内部RC(LSI)
各个时钟源可以单独打开或者关闭,从而优化功耗
HSE
高速外部时钟信号可由下面两个时钟源产生
HSE外部晶体/陶瓷谐振器
26个英文字母表HSE用户外部有源时钟
HIS
HIS信号由内部16MHz RC振荡器与一个可编程分频器(分频因子从1到8)产生。分频因子由寄存器CLK——CKDIVR决定。
LSI
128KHz的LSI RC时钟是一个低功耗的可选主时钟源,也可在停机(Halt)模式下作为维持独立看门狗的低功耗时钟源。
2、主时钟切换
时钟切换功能为用户提供了一种易用、快速、安全的从一个时钟源切换到另一个时钟源的途径。
2.1系统启动
为使系统快速启动,复位后时钟控制器自动使用HSI的8分频(HSI/8)做为主时钟(2MHz)。其原因为HSI的稳定时间短,而8分频可保证系统在较差的VDD条件下安全启动。一旦主时钟源稳定,用户程序可将主时钟切换到另外的时钟源。
2.2 主时钟切换的过程
用户可选择下面两种方式切换时钟源:
自动切换
手动切换
时钟树
小服装店装修在这里我们只解析有关的寄存器,其它寄存器在对应模块有更详细说明
时钟寄存器
1、内部时钟寄存器CLK_ICKR
地址偏移值:0x00
复位值:0x01
位 7:6 保留。始终为0。
位 5 REGAH:活跃停机(Active Halt) 模式下电压调节器关闭
由软件置位或清除。为1时,一旦MCU进入活跃停机(Active Halt) 模式,主电压调节器将
关闭,从而唤醒时间将比较长。
0:活跃停机(Active Halt) 模式下主电压调节器处于开
1:活跃停机(Active Halt) 模式下主电压调节器处于关
位 4 LSIRDY:低速内部振荡器准备就绪
由硬件置位或清除
水浒传的好词好句
0:LSI时钟未准备就绪
1:LSI时钟准备就绪
位 3 LSIEN:低速内部振荡器使能
由软件置位或清除。如果LSI为必需的,则硬件将该位置1,例如:
- 当时钟源切换至LSI时(参见寄存器CLK_SWR)
- 当LSI被指定为时钟输出源(CCO)时(参见寄存器CLK_CCOR)
-
当BEEP被使能时(寄存器BEEP_CSR的位BEEPEN=1)
- 当LSI测量被使能时(寄存器AWU_CSR的位MSR=1)
当LSI被指定为主时钟源/CCO时钟源/AWU/IWDG的时钟源时,该位不能被清除。
阿里年货节0:关闭低速内部振荡器
1:打开低速内部振荡器
位 2 FHWU:从停机(Halt)或活跃停机(Active Halt)模式快速唤醒
由软件置位或清除
目标的意思0:从停机(Halt)或活跃停机(Active Halt)模式快速唤醒禁用
1:从停机(Halt)或活跃停机(Active Halt)模式快速唤醒使能
位 1 HSIRDY:高速内部振荡器准备就绪
由硬件置位或清除
0:HSI未准备就绪
1:HSI准备就绪
位 0 HSIEN:高速内部RC振荡器使能
小朋友生日祝福语由软件置位或清除。如果HSI为必需的,则硬件将该位置1,例如:
- 当被CSS激活,做为安全备用振荡器
- 当时钟源切换至HSI(参见寄存器CLK_SWR)
- 当HSI被指定为时钟输出源(CCO)时(参见寄存器CLK_CCOR)
当HSI被指定为主时钟源,或CCO时钟源,或安全备份(辅助)时钟源时,该位不能被清除。
0:高速内部RC关。
1:高速内部RC开。
胡炯
2、外部时钟寄存器CLK_ECKR
地址偏移值:0x01
复位值:0x00
位 7:2 保留。始终为0。
位 1 HSERDY:高速外部晶体振荡器准备就绪
由硬件置位或清除。
0:HSE未准备就绪
1:HSE准备就绪
位 0 HSEEN:高速外部晶体振荡器使能
由软件置位或清除。用于打开或关闭外部晶体振荡器。下列情况下,由硬件将该位置1:
-
当时钟源切换至HSE(参见寄存器CLK_SWR)
- 当HSE被指定为时钟输出源(CCO)时(参见寄存器CLK_CCOR)
当HSE被指定为主时钟源,或CCO时钟源时,该位不能被清除。
0:HSE关
打前站1:HSE开
3、主时钟状态寄存器CLK_CMSR
地址偏移值:0x03
复位值:0xE1
位 7:0 CKM[7:0]:主时钟状态位
由硬件置位或清除。用以指示当前所选的主时钟源。如果该寄存器中的值为无效值,则产生
MCU复位
0xE1:HSI为主时钟源(复位值)
0xD2:LSI为主时钟源(仅当LSI_EN选项位为1时)
0xB4:HSE为主时钟源

本文发布于:2023-06-04 06:52:17,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/857111.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:时钟   寄存器   切换   清除
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图