跳转到主要内容

时钟

stm32之时钟控制

judy /

本文提到的有以下内容:

• 时钟系统与总线矩阵
• SysTick系统定时器
• RTC实时时钟
• 看门狗定时器
• 通用定时器

<strong>一、时钟系统与总线矩阵</strong>

stm32F4的时钟树如下图所示:
<center><img width="600" src="http://mcu.eetrend.com/files/2017-12/wen_zhang_/100009561-32395-11.png&…; alt="stm32之时钟控制"></center>
在STM32中,有五个时钟源,为HSI、HSE、LSI、LSE、PLL。

MSP430时钟系统

judy /

MSP430根据型号的不同最多可以选择使用3个振荡器。我们可以根据需要选择合适的振荡频率,并可以在不需要时随时关闭振荡器,以节省功耗。

这3个振荡器分别为:

<strong>(1)DCO 数控RC振荡器。</strong>

它在芯片内部,不用时可以关闭。DCO的振荡频率会受周围环境温度和MSP430工作电压的影响,且同一型号的芯片所产生的频率也不相同。但DCO的调节功能可以改善它的性能,他的调节分为以下3步:
a:选择BCSCTL1.RSELx确定时钟的标称频率;
b:选择DCOCTL.DCOx在标称频率基础上分段粗调;
c:选择DCOCTL.MODx的值进行细调。

<strong>(2)LFXT1 接低频振荡器。</strong>

典型为接32768HZ的时钟振荡器,直接连接在XIN与XOUT之间,此时振荡器不需要接负载电容。也可以接450KHZ~8MHZ的标准晶体振荡器,此时需要接负载电容.LXFT1产生的频率信号为ACLK.低速时钟需要上百毫秒的建立时间才能稳定下来.

<strong>(3)XT2 接450KHZ~8MHZ的标准晶体振荡器。</strong>

玩转时钟八大模式

judy /

时钟模式的配置以及使用对MCU来说一直是最基础的东西,在何种情况下使用哪一种时钟模式是我们在使用MCU的过程中最常见的问题之一。

Kinetis系列微控制器具有复杂的时钟系统,时钟系统中多功能时钟发生器、锁相环、锁频环、晶振系统等功能模块相互之间的协调工作能为MCU以及各种外设模块提供稳定的时钟源。通过对KL25时钟系统的结构和配置方法的剖析,以及对多功能时钟发生器运行机制的梳理,提出了时钟源性能的测试方法以及各外设模块时钟源的选择方法。

可见,时钟的正确合理配置对于MCU以及各种外设模块来说是非常重要的,下面我将着重介绍八种模式的时钟如何正确配置。

<center><img width="600" src="http://mcu.eetrend.com/files/2017-10/wen_zhang_/100008369-28014-1.png&q…; alt="玩转时钟八大模式"></center>

调整单片机时钟精度的解决方案

kelly /

本文针对用单片机制作电子钟或要求根据时钟启控的控制系统时,出现的校准了的电子时钟的时间竟然变快或是变慢了的情况而提出的一种解决方案。
  
单片机应用中,常常会遇到这种情况,在用单片机制作电子钟或要求根据时钟启控的控制系统时,会突然发现当初校准了的电子时钟的时间竟然变快或是变慢了。
  
于是,尝试用各种方法来调整它的走时精度,但是最终的效果还是不尽人意,只好每过一段时间手动调整一次。那么,是否可使时钟走时更精确些呢?现探讨如下:
  
<strong>一、误差原因分析</strong>
  
1、单片机电子时钟的计时脉冲基准,是由外部晶振的频率经过12分频后提供的,采用内部的定时,计数器来实现计时功能。所以,外接晶振频率的精确度直接影响电子钟计时的准确性。
  
2、单片机电子时钟利用内部定时,计数器溢出产生中断(12MHz晶振一般为50ms)再乘以相应的倍率,来实现秒、分、时的转换。大家都知道,从定时,计数器产生中断请求到响应中断,需要3_8个机器周期。定时中断子程序中的数据人栈和重装定时,计数器的初值还需要占用数个机器周期。此外。从中断人口转到中断子程序也要占用一定的机器周期。例如: