一、时钟树及电源管理
为了提高适用性和可靠性,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位值,用于选择目标芯片。
七、如何配置时钟
八、什么是时钟的中断
九、时钟控制寄存器
上一篇:STM8S(105K4)使用笔记——系统时钟的基础配置
下一篇:STM8S的TIM1定时器====总览
推荐阅读
史海拾趣
在快速发展的过程中,Baton Lock意识到产品质量是公司生存和发展的关键。因此,公司投入大量资源加强品质管理,从原材料采购到生产流程控制,再到产品检测,都实施了严格的标准和程序。这一举措有效提升了产品的稳定性和可靠性,赢得了客户的信任。
面对日益严峻的环境问题,Emerson Embedded Power积极响应,将环保理念融入产品设计和生产过程中。该公司致力于开发节能、低碳的电源产品,帮助客户降低能源消耗和碳排放。同时,公司还积极推广绿色制造理念,推动整个电子行业的可持续发展。
2004年,天二科技迈出了全球化布局的重要一步,在全球范围内建立了销售和技术支持网络。同年,公司在中国大陆成立了分公司,进一步加深了与中国市场的联系。通过全球化布局,天二科技不仅成功拓展了海外市场,还积累了丰富的国际经验,为公司未来的发展提供了有力支持。
随着电子行业的快速发展,Aborn Electronics意识到只有不断创新才能在竞争中保持领先。公司加大了对研发的投入,引进了一批高素质的研发人才,并在多个技术领域取得了重要突破。其中,一项关于高效能电源管理技术的创新成果,不仅提高了产品的能效比,还为公司带来了可观的经济效益。这一技术的成功应用,进一步提升了Aborn Electronics在行业内的影响力。
随着公司规模的扩大和市场份额的提升,AZ Displays开始实施全球化战略。公司在全球范围内建立销售网络和分支机构,积极开拓国际市场。通过与国际知名企业的合作,AZ Displays成功将产品打入国际市场,进一步提升了公司的品牌影响力和市场竞争力。
为了提升国际市场竞争力,全鹏公司一直致力于提高产品质量和管理水平。在2014年,全鹏电子科技有限公司成立,并成功通过了ISO9001国际质量管理体系、ISO14001环境管理体系认证和汽车与医疗器材体系IATF/16949认证。这些认证不仅证明了全鹏公司在质量管理方面的实力,也为其在国际市场上赢得了更多的信任和机会。
各位看官,小弟现在最大的梦想就是用VB.NET控制我板子上(友善之臂MINI2400)上的那个LED灯,搞来搞去都没成功,请哪位大哥大姐行行好给个源码,只要点下按钮让灯亮就行,拜谢了… 查看全部问答∨ |
|
11. 基于ARM7 、9、11处理器设计的产品,类似Intel的Xscale架构产品的设计方案 (功能特点、结构、作用 举例子说明设计方案,如GPS、游戏机、POS……) 12. 嵌入式系统实时性? ...… 查看全部问答∨ |
我的cisco2600路由器被人把IOS删掉了,我要从另一个2600路由器下载IOS,怎么下呢??高分求助! 我用的是COPY FLASH TFTP命令 ,但是总是报错:TFTP://10.1.1.3 timeout 10.1.1.3是我设置的本机IP。 怎么解决呢》?求高手指教啊 … 查看全部问答∨ |
Google开发者日活动 和Google的工程师、业界同行们交流利用Google的各种开发工具去构建您的社区应用、移动应用、地图应用,或者基于 AJAXJavaScript的网络应用。 2008年6月12日,北京 北京亚运村北京国际会议中心 报名地址:httpcode.google.co ...… 查看全部问答∨ |
|
请问linux下gcc怎么安装,我没有光盘,只有一个gcc-3.2.2-5.i386.rpm,安装的错误提示为: Missing Dependency: glibc-devel >= 2.2.90-12 is needed by package gcc Missing Dependency: cpp = 3.2.2-5 is needed by package gcc 还有,linux ...… 查看全部问答∨ |
首先,12位的AD,±2LSB的误差,本身能达到的精度是 1/4096*4=1/1024,接近千分之一,对于千分之五的系统精度要求似乎可以满足,但不知道是不是还要考虑一些其他因素,例如(1)参考源的 ...… 查看全部问答∨ |
user error: Reset failed - Target not halted ST研讨会的时候拿了一块 DISCOVERY的板子,最近在学习,现在用IAR下程序的时候碰到错误提示user error: Reset failed - Target not halted,有知道为什么会出现这个错误的吗?怎么解决… 查看全部问答∨ |