stm8时钟源

下面4种时钟源可用做主时钟:

  • 1-24MHz高速外部晶体振荡器(HSE)
  • 最大24MHz高速外部时钟信号(HSE user-ext)
  • 16MHz高速内部RC振荡器(HSI)
  • 128KHz低速内部RC(LSI)

各个时钟源可单独打开或关闭,从而优化功耗。

(一)HSE 高速外部时钟信号可由下面两个时钟源产生:

  • HSE外部晶体/陶瓷谐振器
  • HSE用户外部有源时钟

(图14:STM8 HSE时钟源)

为了最大限度减小输出失真和减小启动的稳定时间,谐振器和负载电容应尽可能得靠近振荡器引脚。负载电容值应根据所选的振荡器进行调整。

  • 外部晶体/陶瓷谐振器(HSE晶体) 外部1至24MHz的振荡器其优点在于能够产生精确的占空比为50%的主时钟信号。 硬件连接如图14所示。更多详情请参见数据手册电特性章节。振荡器在启动时的输出时钟信号是不稳定的,默认情况下,在时钟信号被使用之前会插入2048个振荡器周期的延迟。用户可通过设置选项字节HSECNT来缩短稳定时间,请参见数据手册的选项字节章节。外部时钟寄存器CLK_ECKR中的标志位HSERDY用以指示高速外部振荡器是否稳定。启动时,HSE时钟信号将不会生效直至此标志位被硬件置位。 HSE晶体可通过设置外部时钟寄存器CLK_ECKR中的HSEEN位来打开或关闭。
  • 外部时钟源(HSE用户外部时钟) 这种模式下,必须由用户提供一个外部时钟,此时钟的最高频率可为24MHz。用户可通过编程选项位EXTCLK选择此模式。详情请参见数据手册的选项字节章节。此时,占空比约50%的外部时钟信号(方波,正弦波,三角波)用以驱动OSCIN引脚,而OSCOUT引脚可做为通用输入/输出管脚使用。请参见图13。

    (图13:STM8 时钟树)

(二)HSI HSI信号由内部16MHz RC振荡器与一个可编程分频器(分频因子从1至8)产生。分频因子由寄存器CLK_CKDIVR决定。

注意:启动时,主时钟源默认为HSI RC时钟的8分频,即fHSI/8 HSI RC可以提供一个低成本的16MHz时钟源(无需外部器件),其占空比为50%。HSI启动速度比HSE晶体振荡器快,但是其精度即使经过校准也仍然比外部晶体振荡器或陶瓷谐振器低。内部时钟寄存器CLK_ICKR中的标志位HSIRDY用以指示HSI RC是否稳定。启动时,HSI时钟信号将不会生效直至此标志位被硬件置位。HSI RC可通过设置内部时钟寄存器CLK_ICKR中的HSIEN位打开或关闭。

  • 备份时钟源 当HSE晶体振荡器失效时,HSI/8可作为备份时钟源(辅助时钟源)使用。请参见8.6时钟安全系统(CSS)。
  • 快速启动特性 如果寄存器CLK_ICKR中的FHWU位被置1,则MCU从停机(Halt)模式或活跃停机(Active Halt)模式唤醒时,HSI将自动被设为主时钟源。
  • 校准 每个产品在出厂时均已经ST校准。 复位后,出厂校准值将被自动加载至内部校准寄存器。 如果实际应用中电压或温度偏差较大,将会影响RC振荡器的速度。用户可使用HSI时钟校准寄存器(CLK_HSITRIMR)修正HSI的时钟频率。此寄存器中有3或4位用以存放一个附加的修正值,并与内部HSI校准寄存器的值相加来对时钟进行校正。

(三)LSI 128KHz的LSI RC时钟是一个低功耗,低成本的可选主时钟源,也可在停机(Halt)模式下作为维持独立看门狗和自动唤醒单元(AWU)运行的低功耗时钟源。LSI可通过设置内部时钟寄存器CLK_ICKR中的LSIEN位打开或关闭。 内部时钟寄存器CLK_ICKR中的标志位LSIRDY用以指示LSI是否稳定。启动时,LSI时钟信号将 不会生效直至此标志位被硬件置位。 同HIS一样,LSI出厂时已经校准。但是,不可能再执行进一步的校准。 注意:当独立看门狗使用LSI为时钟源时,为了保证CPU在系统出错时不与独立看门狗使用同一个时钟, 当选项字节位LSI_EN为0时,LSI不能做为主时钟。请参见STM8数据手册中的选项字节章节。

时间: 2025-01-05 09:24:25

stm8时钟源的相关文章

linux 时钟源初步分析linux kernel 时钟框架详细介绍

初步概念: 看datasheet的关于时钟与定时器的部分, FCLK供给cpu, HCLK供给AHB总线设备(存储器控制器,中断控制器.LCD控制器.DMA.USB主机控制器等), PCLK供给APB总线上的设备(watchdog.IIS.i2c. pwm.定时器.ADC.uart.gpio.rtc.spi) 上电时 fclk的时钟等于外部时钟fin, 然后等待LOCKTIME后, 依照MPLLCON寄存器的设置,倍频到高频. UPLLCON专用于USB同于MPLLCON. 关于分频: CLKD

STM32普通定时器(TIM2-7)的时钟源

STM32普通定时器(TIM2-7)的时钟源

Linux时间子系统之一:clock source(时钟源)【转】

转自:http://blog.csdn.net/droidphone/article/details/7975694 clock source用于为linux内核提供一个时间基线,如果你用linux的date命令获取当前时间,内核会读取当前的clock source,转换并返回合适的时间单位给用户空间.在硬件层,它通常实现为一个由固定时钟频率驱动的计数器,计数器只能单调地增加,直到溢出为止.时钟源是内核计时的基础,系统启动时,内核通过硬件RTC获得当前时间,在这以后,在大多数情况下,内核通过选定

msp430f5529时钟源

***************************************************************还有一个模块时钟源:MODOSC,产生MODCLK时钟源信号,一般只为闪存控制模块和ADC12模块提供服务. 该模块不被使用时自动关闭,任何模块对该时钟源提出使用要求时,MODOSC无需被使能即可响应该请求.430F5529中MODCLK为5MHZ. *************************************************************

stm8时钟

为使系统快速启动,复位后时钟控制器自动使用HSI的8分频(HSI/8)做为主时钟(2M).其原因为HSI的稳定时间短,而8分频可保证系统在较差的VDD条件下安全启动.一旦主时钟源稳定,用户程序可将主时钟切换到另外的时钟源 .

[每天一个Linux小技巧] 查看时钟源精度

$ dmesg | grep clock [0.000000] OMAP clocksource: GPTIMER1 at 24000000 Hz [0.000000] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 178956ms 这里的精度是41ns [每天一个Linux小技巧] 查看时钟源精度

Qt仿Android带特效的数字时钟源码分析(滑动,翻页,旋转效果)

这个数字时钟的源码可以在Qt Demo中找到,风格是仿Android的,不过该Demo中含有三种动画效果(鉴于本人未曾用过Android的系统,因此不知道Android的数字时钟是否也含有这三种效果),其分别为滑动.翻页和旋转. 由于本人的Qt Creator输入中文后显示的都是乱码,因而在此只能使用英文进行注释,后期如果有时间再进行中文的相关整理.可能有些地方理解并不是很正确.希望大家多多指正! 以下为源码: [cpp] view plaincopy #include <QtCore> #i

stm8 时钟输出引脚

CLK_CCO引脚是STM8的时钟输出引脚,若设置该脚输出主时钟Fmaster,时钟输出寄存器可以进行如下操作 CLK->CCOR=0X19;

Javascript 电子时钟源码

? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head>     <meta h