STM8时钟树及电源管理

发布者:bonbono最新更新时间:2021-09-30 来源: eefocus关键字:STM8  时钟树  电源管理 手机看文章 扫描二维码
随时随地手机看文章

一、时钟树及电源管理


为了提高适用性和可靠性,STM8S单片机增加了许多的特色功能,如多时钟源、多功耗管理模式及自动唤醒功能等。


二、时钟的功能


处理器必须要稳定的时钟源才能可靠的运行。STM8S单片机的时钟配置比较灵活,既可以使用外部的晶体振荡器/陶瓷谐振器作为时钟源,也可以使用外部的时钟信号或片内的RC震荡器作为系统时钟。多时钟源的特点是可以充分利用不同时钟源的特点,让单片机运行更加稳定。


三、时钟的产生途径


1、RC振荡器


什么是RC振荡器?


 通过把电阻和电容搭建成一个正反馈的振荡电路就可以获取时钟信号,通过改变电阻或者电容的值可以调节时钟的频率。


RC振荡电路的优缺点:


优点:起振速度快,加电后可以立即输出满幅的震荡信号。


缺点:当外界温度变化时,阻容原件的值也发生变化,从而引起振荡频率漂移。


2、陶瓷谐振器


陶瓷谐振器是什么?


陶瓷谐振器利用的陶瓷的压电原理,一个两面背覆电极的陶瓷片在外加电场的作用下,陶瓷自身会发生形变产生的振荡,当达到自身的共振频率时,既可进入稳定的谐振状态。


陶瓷谐振器的优缺点:


优点:起振速度快


缺点;频率的稳定性和精度较差。


3、晶体振荡器


      什么是晶体振荡器?


      晶体振荡器简称晶振,其内部是经过精密切割的石英晶体,晶体两端连接电极。


晶体振荡器的优缺点:


优点:石英晶体在受到激励后会输出特定频率的震荡信号,而且频率的稳定性极高。


缺点:它起振速度也有点慢,需要经过一段时间才能输出稳定的满幅的震荡信号,另外就是晶体振荡器受到强烈的撞击或电压冲击,晶体会因物理结构的改变而损毁。


四、时钟是如何控制的?


STM8S单片机使用时钟控制器来管理时钟源,并且将他们的分配到CPU以及各个外设,使用户可以在最快的时钟和最低的功耗间进行取舍。


STM8S还可以在程序运行的时候将主时钟从一个时钟源切换到另一个时钟源,而且安全可靠无故障时钟切换机制。


STM8S单片机而且应对电磁干扰对应用程序误写或系统挂起,大多数关键的时钟配置寄存器都会有一个互补的寄存器。系统自动检测这些寄存器与互补寄存器之间是否匹配,如果不匹配则会产生一个EMS复位,使应用程序回复到正常运行状态。


如下图STM8S单片机的时钟框图:


从图中可以看出系统时钟是F(master)时钟。这个时钟是由F(hse)、F(hsidiv)、F(lsi)时钟提供。

时钟控制器将来自不同振荡器的系统时钟(Fmaster)连接到内核和外设。


时钟控制器有以下的功能:


时钟管理、


4个不同的时钟源通过时钟管理器来选择那时钟作为系统时钟。STM8S单片机系统时钟Fmaster有以下时钟切换而来。


4个时钟源;


1)、1MHz--24MHz 外部晶体/陶瓷谐振器。选项字节EXT_CLK用于选择外部时钟(HSE)。系统刚刚上电的时候振荡器是不稳定的,STM8S单片机需要延时2048个振荡周期,以等待振荡器的稳定,可以通过的软件和硬件设置切换到振荡器。如果感觉2048个振荡周期时间比较长也可以通过选项字节HSECNT对稳定时间进行设置。HSE可以通过外部时钟寄存器CLK_ECKR中的HSEEN位来使能。外时钟的寄存器的CLK_ECKR中的HSERDY位判断振荡器是否稳定。单片机启动时,此标志位被硬件置为后HSE才可以使用。


2)、最高至24MHz的高速外部时钟(USE, USER-EXT)


通过时钟选项字节EXT_CLK来选择用于外部时钟HSE。


3)、16MHz高速内部RC振荡器


16MHz的高速内部时钟被称为HSI,HSI位于单片机的内部,是片内的高速RC振荡器,有16MHz RC振荡器和一个可编程分频器构成,分频因子(1--8)由寄存器CLK_CKDIVR设定。


RC振荡器的起振速度快比HSE晶体振荡器的快,但是其精度较低。单片机刚刚上电时使用的内部的16MHzRC振荡器8分频时钟。HSI时钟源可以通过设置内部的CLK_ICKR寄存器中的HSIEN位打开或关闭。


内部时钟寄存器CLK_ICKR中的标志位HSIRDY用来指示HSI RC振荡器是否稳定。


单片机为了时钟使用安全,如果使能了时钟的安全机制,当外部的HSE时钟的失效时,HSI/8可以作为备用时钟。


4)、128KHz低速内部RC振荡器


128KHz低速内部RC振荡器简称为LSI,该时钟同样位于单片机的内部。LSI时钟既可以配置为系统时钟,也可以在停机模式下也可以作为独立看门狗和自动唤醒单元运行的低功耗时钟。


LSI时钟可以通过CLK_ICKR的LSIEN位打开或关闭。CLK_ICKR中的LSIRDY来判断时钟是否稳定。


时钟分频、


时钟控制器通过一个可编程的预分频器来调整CPU和外设时钟。


时钟切换、


通过配置寄存器可以是单片机运行的时候进行时钟切换。


启动时钟、


单片机刚刚上电的时候默认的时钟时内部的HSI/8的时钟运行。


时钟监控、


时钟的安全系统CSS,可以持续监视HSE时钟的稳定性能,一旦HSE时钟出现故障,会马上切换到内部RC时钟下运行。


启动时钟:单片机复位后默认运行的时钟为内部时钟(HSI/8)即使2MHz的时钟频率。用户可以通过软件在系统运行稳定后改变时钟源,并设定相应的预分频比。


五、什么是系统时钟?


系统时钟是指为单片机CPU和外设提供时钟的时钟。


1)、1MHz--24MHz 外部晶体/陶瓷谐振器。选项字节EXT_CLK用于选择外部时钟(HSE)。系统刚刚上电的时候振荡器是不稳定的,STM8S单片机需要延时2048个振荡周期,以等待振荡器的稳定,可以通过的软件和硬件设置切换到振荡器。如果感觉2048个振荡周期时间比较长也可以通过选项字节HSECNT对稳定时间进行设置。HSE可以通过外部时钟寄存器CLK_ECKR中的HSEEN位来使能。外时钟的寄存器的CLK_ECKR中的HSERDY位判断振荡器是否稳定。单片机启动时,此标志位被硬件置为后HSE才可以使用。


2)、最高至24MHz的高速外部时钟(USE, USER-EXT)


通过时钟选项字节EXT_CLK来选择用于外部时钟HSE。


3)、16MHz高速内部RC振荡器


16MHz的高速内部时钟被称为HSI,HSI位于单片机的内部,是片内的高速RC振荡器,有16MHz RC振荡器和一个可编程分频器构成,分频因子(1--8)由寄存器CLK_CKDIVR设定。


RC振荡器的起振速度快比HSE晶体振荡器的快,但是其精度较低。单片机刚刚上电时使用的内部的16MHzRC振荡器8分频时钟。HSI时钟源可以通过设置内部的CLK_ICKR寄存器中的HSIEN位打开或关闭。


内部时钟寄存器CLK_ICKR中的标志位HSIRDY用来指示HSI RC振荡器是否稳定。


单片机为了时钟使用安全,如果使能了时钟的安全机制,当外部的HSE时钟的失效时,HSI/8可以作为备用时钟。


4)、128KHz低速内部RC振荡器


128KHz低速内部RC振荡器简称为LSI,该时钟同样位于单片机的内部。LSI时钟既可以配置为系统时钟,也可以在停机模式下也可以作为独立看门狗和自动唤醒单元运行的低功耗时钟。


LSI时钟可以通过CLK_ICKR的LSIEN位打开或关闭。CLK_ICKR中的LSIRDY来判断时钟是否稳定。


六、时钟是如何切换的?


时钟切换有两种方式:自动切换 和 手动切换


自动切换:

自动切换的过程如下:


1】、设置切换控制寄存器CLK_SWCR中的SWEN为使能切换机制。

2】、向时钟切换寄存器CLK_SWR中写入一个8位值,用于选择目标芯片。

七、如何配置时钟


八、什么是时钟的中断


九、时钟控制寄存器

关键字:STM8  时钟树  电源管理 引用地址:STM8时钟树及电源管理

上一篇:STM8S(105K4)使用笔记——系统时钟的基础配置
下一篇:STM8S的TIM1定时器====总览

推荐阅读最新更新时间:2024-11-17 06:38

STM8 nRF24L01程序
花了我断续的一天多时间,终于把nRF24L01从C51中移植到STM8上,主要是注意时序和I/O口的配置。 源程序: /************ STM8S103F学习 ***********************/ /*芯片型号:STM8S103F3PB6 */ /*功能描述:nrf24l01无线模块应用 */ /*作者: ClimberWin */ /*编写时间:2011.9.25 */ /*内部晶振 */ /*******************************
[单片机]
<font color='red'>STM8</font> nRF24L01程序
stm8 GPIO按键输入
第一步:配置GPIO 在点亮第一个LED章节已经讲解了GPIO口的操作,下面我们再来看一个寄存器: 这个寄存器只能读。越看越像msp430的操作了。 下面之间看按键初始化和按键读取函数: void Key_Init(void) { PD_DDR &= 0x7F; //PD7 输入 PD_DDP第7位置0 PD_CR1 |= 0x80; //带上拉输入 PD_CR1第7位置1 PD_CR2 &= 0x7F; //禁止外部中断 PD_CR2第7位置0 } void Key_Scan(void) { if(PD_IDR_IDR7==0) { delay_ms(20); //延时消抖 i
[单片机]
<font color='red'>stm8</font> GPIO按键输入
Yole发布最新的2020-2026电源管理市场发展报告
市场预测: 到 2026 年,电源 IC 市场总量将超过 250 亿美元,2020-2026 年复合年增长率为 3.0%。 移动和消费市场是最大的应用领域,预计到 2026 年将超过 115 亿美元。 汽车和工业应用的增长速度最快,2020 年至 2026 年的复合年增长率分别为 9.0% 和 5.6%。 技术趋势: 电源IC市场基于BCD技术,所有主要参与者都广泛参与。 电源 IC 厂商正在开发越来越多的在同一封装中具有多个独立功能的特定电源 IC。 在电源管理技术中,技术进步主要是通过在单个芯片上集成多个功能来驱动的。 供应链: 排名前五的电源 IC 供应商有不同的商业模式:无晶圆厂、电力电子设备 IDM
[电源管理]
通用串行总线技术(USB OTG)提供电源管理最佳方案
引言 USB驱动的电子产品市场已出现爆炸性增长,通用串行总线On-the-Go(USB OTG)技术的出现为人们的连网生活提供了更多选择。USB OTG允许一个设备既可充当外部设备,也可充当主机。作为主机时,OTG设备可与其他外部设备通信,并为其他外部设备供电。例如,用户可以方便地将一部照相机或智能电话直接连到一台打印机上,而无需PC作为中间设备。然而,将USB OTG技术集成到便携式设备中存在一定的设计挑战,包括更高功率工作、热限制和需满足不断提高的系统复杂性。这些设备系统力求在电池长时间运行、与多个电源的兼容性、高功率密度、小尺寸和有效的热量管理之间实现最佳平衡。而一直缺少的是电源管理器集成电路,以高效地为这些便携式设备供
[嵌入式]
宏力半导体发布0.18微米45V LDMOS电源管理制程
上海宏力半导体制造有限公司 (宏力半导体),专注于差异化技术的半导体制造业领先企业之一,发布基于其稳定的0.18微米逻辑平台的先进45V LDMOS电源管理制程。 与传统线宽相比,0.18微米逻辑平台使得更高集成度的数字电路成为可能,从而可以适用于SoC和智能电源。宏力半导体成熟的0.18微米逻辑制程配备了具有高精准模型的完整设计工具包,极大地缩短了产品的设计周期,加速客户产品的投产。此外,该0.18微米逻辑制程还分别提供了通用逻辑和低功耗逻辑平台供客户选择。 通过优化器件的布局、注入和热处理过程等特定步骤减小了Rdson (导通电阻),45V NMOS 和 PMOS的导通电阻分别约为70 mOhm•mm2
[半导体设计/制造]
电源管理芯片厂商致新公开收购类比科
电源管理芯片厂致新5日宣布,以每股23元新台币(下同)收购类比科,最高收购90%股权,以类比科昨天收盘价16.8元计算,溢价36.9%。 致新表示,收购期间自明(7)日起到2019年1月10日,预计收购类比科5%至90%股权,若以上限九成计算,总交易金额达13.9亿元。类比科近两日股价强势,昨天跳空涨停板16.8元锁至终场,成交量达1,304张。 致新昨天发布重讯并赴交易所举行记者会,宣布董事会通过该公开收购案。致新强调,通过此次公开收购,以期开展双方公司资源整合机会,整合两家公司销售管道,合力扩大国内外市场占有率与客户群,提升竞争优势。 其次,考量双方公司产品应用领域相似,通过有效整并集团资源,可扩大集团营运规模。
[电源管理]
东科​DK8607AD集成双氮化镓功率管的有源钳位反激电源管理芯片
​DK8607AD 是一款集成了两颗 GaN 功率器件的有源钳位反激控制AC-DC 功率开关芯片。DK8607AD利用漏感能量,可以实现原边功率管 ZVS,副边整流管 ZCS,从而提高电源系统效率,降低功率管的应力,减小开关损耗并改善电磁干扰(EMI)。DK8607AD 极大的简化了反激式 AC-DC 转换器的设计和制造,尤其是需要高转化效率和高功率密度的产品。DK8607AD 具备完善的保护功能:输出过压保护(OVP),VCC 过、欠压保护,过温保护(OTP),开环保护,初级过流保护(OCP),输出短路保护等。 需要样品测试或者资料参考可以联系我!!!
[新能源]
STM8无法跳出TIM2更新中断
刚学STM8,把如何解决调试过程中出现的问题记录下来。 芯片采用的是STM8S103F3P6,准备做一个刷卡模块,其中delay函数是用tim2定时器实现的。在网上下的例程,delay函数的单位是1ms,我觉得间隔时间有点长了,准备改成10us,使用HSE外部晶振8MHz,8分频,计10个数产生更新中断。再做一个ms的延时函数,100个10us延时函数实现。 问题现象: 在运行的过程中,发现timer2初始化,打开中断函数enableinterrupts后,程序无法跳出。 问题分析步骤: 1.我先进行了调试,发现程序在tim2的中断服务函数里无法跳出,一开始我认为可能是清除中断标志位的代码没有执行,或是清除中断标志位应
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved