MSP430教程9:MSP430单片机时钟模块

MSP430的时钟模块由低速晶体振荡器LFXT1、高速晶体振荡器XT2MSP430X11X,MSP430X12X没有)、数字控制振荡器DCO、琐相环FLLMSP430X16X以上包括)和增强型琐相环FLL+等部件组成。

 

MSP430X1XX基本时钟模块有三个时钟输入源LFXT1CLK(低速32768Hz,高速450Hz8MHz)XT2CLK(450Hz8MHz)DCOCLK,提供以下三种时钟信号

1.ACLK辅助时钟:由LFXT1CLK信号经1248分频后得到,可以由软件选作各个外围模块的时钟信号,一般用于低速外设。

2.MCLK系统主时钟:MCLK可由软件选择来自LFXT1CLKXT2CLKDCOCLK三者之一,然后经1248分频得到,MCLK主要用于CPU和系统。

3.SMCLK子系统时钟:可由软件选自LFXT1CLKDCOCLKMSP430X11XMSP430X12X系列,因其不含XT2),或XT2CLKDCOCLK,然后经1248分频得到。SMCLK主要用于高速外围模块。

 

系统频率与系统的工作电压密切相关(MSP430工作电压1.8V~3.6V,编程电压2.7V~3.6V,所以不同的工作电压,需要选择不同的系统时钟。当两个外部振荡器失效时,DCO振荡器会自动被选作MCLK的时钟源。PUC信号之后,DCOCLK被自动选作MCLKSMCLK的时钟信号,LFXT1CLK被选作ACLK的时钟信号,根据需要MCLKSMCLK的时钟源可以另外设置。

控制时钟模块的三个寄存器为DCO控制寄存器DCOCTL、基本时钟系统控制寄存器1BCSCTL1、基本时钟控制寄存器2BCSCTL2

 

1.DCOCTL            

7           6           5        4          3        2        1         0  
 DCO2      DCO1       DCO0       MOD4      MOD3      MOD2     MOD1      MOD0

DCO.0~DCO.2    定义8种频率之一(DCO=0~DCO=8),可分段调节DCOCLK频率,相领两种频率相差10%

MOD.0~MOD.4   定义在32DCO周期中插入的fdco+1周期个数,而余下的周期为fdco周期,控制切换DCODCO+1选择的两种频率,如果DCO常数为7,表示已经选择最高频率,此时不能利用MOD.0~MOD.4进行频率调整。

DCOCTL POR后初始值为60H

 

2.BCSCTL1          

 7         6         5          4            3        2          1         
 XT2OFF    XTS     DIVA1       DIVA0       XT5V     RSEL2      RSEL1    RSEL0 

BCSCTL1初始值为84H

XT2OFF            控制XT2的开启和关闭
    0                  XT2
振荡器开启
    1                  XT2
振荡器关闭(默认)

XTS                控制LFXT1工作模式
    0                  
低频模式(默认)
    1                  
高频模式

DIVA1DIVA0  控制ACLK分频
   0          0      
不分频(默认)
   0          1       2
分频
   1          0       4
分频
   1          1       8
分频

XT5V                此位设置为0
RSEL0~RSEL2
三位控制内部电阻以决定标称频率
          0            
选择最低标称频率
         ...            ......
          7            
选择最高标称频率    

 

3.BCSCLK2          

7          6        5         4       3          2           1          0  
SELM1    SELM0    DIVM1     DIVM0     SELS      DIVS1      DIVS0       DCOR
SELM1 SELM0    
选择MCLK时钟源
     0         0          DCOCLK
(默认)
     0         1          DCOCLK
     1         0          LFXT1CLK
对于MSP430F11/12XXT2CLK对于MSP430F13/14/15/16X
     1         1          LFXT1CLK
DIVM1  DIVM0      
选择MCLK分频
     0         0          
不分频
     0         1          2
分频
     1         0          4
分频
     1         1          8
分频
  SELS                
选择SMCLK时钟源
     0                     DCLK
(默认)
     1                     LFXT1CLK
对于MSP430F11/12XXT2CLK对于MSP430F13/14/15/16X
DIVS1  DIVS0      
选择SMCLK分频
     0        0          
不分频
     0        1           2
分频
     1        0           4
分频
     1        1           8
分频
  DCOR                
选择DCO电阻
     0                    
内部电阻
     1                    
外部电阻

 

时钟模块的应用

 

一、设置MCLK=XT2SMCLK=DCOCLK,将MCLKP5.4输出(MSP430X14X中引脚P5.4MCLK复用)

#include  "msp430x14x.h"
void  main(void)
{
   unsigned int i;
   WDTCTL= WDTPW+WDTHOLD;    //Stop  watchdog to  prevent  to  overflow
   P5DIR  | =  0X10;                           //Set  P5.4 to output                          
   P5SEL | =  0X10;                           //Set  P5.4 to MCLK mode
   BCSCTL1 &= ~XT2OFF;                 //Enable XT2

   do{
   IFG1 & = ~OFIFG;                         //Clear OFIFG
   for(i=0xff;i>0;i--);                            //Set a delay
   }while(IFG1&OFIFG);                     //check-up the OFIFG
  
   BCSCTL2 | = SELM_2;                  //Set  XT2CLK the clock of MCLK

   for(;;);
}

 

二、 设置ACLK=MCLK=LFXT1=HF,将ACLKP2.0(复用)输出。

#include "msp430x14x.h"
void main(void)
{
   unsigned int i,j;
   WDTCTL = WDTPW+ WDTHOLD;
   P1DIR =0x02;
   P2DIR =0x01;
   P2SEL=0x01;
   BCSCTL1 | = XTS;

   do{
     IFG1 & = ~OFIFG;
     for(i=0xff;i>0;i--);
   }while(IFG1 & OFIFG);
  
   BCSCTL2 | = SELM_3;
  
   for(;;);
}

 

 

 

 

 

 

 

1、资项目码均已通过严格测验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买代码。 1、资项目码均已通过严格测验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买代码。 1、资项目码均已通过严格测验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买代码
应用背景为变电站电力巡检,基于YOLO v4算法模型对常见电力巡检目标进行检测,并充分利用Ascend310提供的DVPP等硬件支持能力来完成流媒体的传输、处理等任务,并对系统性能做出一定的优化。.zip深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的测与真实之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资消耗大等。研究人员正在不断探索新的方法来解决这些问题。
深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的测与真实之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资消耗大等。研究人员正在不断探索新的方法来解决这些问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值