msp430学习笔记之时钟

原创 2015年07月06日 21:37:40

1 相关知识

1、在MSP430单片机中一共有三个时钟源

(1)LFXT1CLK,为低速/高速晶振源,通常接32.768kHz,也可以接(400kHz~16Mhz);

(2)XT2CLK,可选高频振荡器,外接标准高速晶振,通常是接8Mhz,也可以接(400kHz~16Mhz);     

(3)DCOCLK,数控振荡器,为内部晶振,由RC震荡回路构成;


2、在MSP430单片机内部一共有三个时钟系统

(1)ACLK,Auxiliary Clock,辅助时钟,通常由LFXT1CLK作为时钟源,可以通过软件控制更改时钟的分频系数;

(2)MCLK,Master Clock,系统主时钟单元,为系统内核提供时钟,它可以通过软件从三个时钟源选择;

(3)SMCLK,Sub-Main Clock,系统子时钟,也是可以由软件选择时钟源。

3、相关寄存器


2 代码实现

//平台为msp430f149
#include<msp430f149.h>

#define		XT1			0x10
#define		XT2			0x11

#define		DELAY_COUNT		1000

//选择32k晶振频率
void select_xt1(void){

	unsigned char i;
	
	do{
        IFG1 &= ~OFIFG;                 //清除晶振失败标志
        for (i = 0xFF; i > 0; i--);     //等待32kHz晶体起振
    }while ((IFG1 & OFIFG));            //晶振失效标志仍然存在?
	
	BCSCTL2 |= SELM_3;					//MCLK = 32kHz
}

//选择8M晶振
void select_xt2(void){
	
	unsigned char i;
	
	/*------选择系统主时钟为8MHz-------*/
    BCSCTL1 &= ~XT2OFF;                 //打开XT2高频晶体振荡器
    do{
        IFG1 &= ~OFIFG;                 //清除晶振失败标志
        for (i = 0xFF; i > 0; i--);     //等待8MHz晶体起振
    }while ((IFG1 & OFIFG));             //晶振失效标志仍然存在?
	
    BCSCTL2 |= SELM_2 + SELS +DIVM_3;           //MCLK = 1MHz,SMCLK = 8MHz

}


void clock_config(unsigned char select_xt){
		
	WDTCTL = WDTPW + WDTHOLD;				// 停止看门狗  
	if(select_xt == XT1){					
		select_xt1();
	}else if(select_xt == XT2){
		select_xt2();
	}else{
		return ;							//系统默认DCO,约800Hz
	}
		
}

void delay(unsigned int x){
	unsigned int i,j;
	for(i = 0;i < x;i++)
		for(j = 1001;j>1;j--);
}

int main(){
	clock_config(XT2);
	
	P2DIR = 0x80;      //bit7 为输出
	P2OUT = 0xff;      //
	while(1){
		P2OUT = 0x7f;      //led灯亮
		delay(DELAY_COUNT);
		P2OUT = 0xff;      //led灯灭
		delay(DELAY_COUNT);
		
	}
	
	return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

MSP430(F5529)学习笔记——UCS配置详解

MSP430(F5529)相比MSP430(F149)来讲,功能更加强大。 UCS简介 MSP430F5XX/MSP430F6XX系列器件的UCS包含有五种时钟源,依次是:XT1CLK、VLOCLK、...

MSP430F5438学习笔记 UART ACLK 9600-8-N-1

1.初始化UART0之前需要先初始化ACLK、SMCLK和MCLK。示例代码中使用XT1,ACLK为32768,SMCLK和MCLK约为8MHZ。 2.UART的时钟可以参考ACLK或者SMCLK,本...

MSP430(f149)学习笔记——红外遥控发射

最近由于项目需求,研究了一下MSP430,总体感觉MSP430还是非常不错的单片机,不亏是TI的产品。项目中用MSP430实现了红外遥控功能,下面我们先来分析一下红外的发送原理。 红外发送原理 红外发...

MSP430F5438学习笔记 TA1溢出中断加比较匹配中断

// 时钟默认情况 // FLL时钟 FLL选择 XT1 // 辅助时钟 ACLK选择 XT1 32768Hz // 主系统时钟 MCLK选择 DCOCLKDI...

MSP430学习笔记:UART

串通可以两种方法其现 一、USART硬件直接实现 二、通过定时器软件实现   该模块可现现: UART异步串行通讯 SPI同步串行通讯 I2C同步串行通讯      UxCTL控制...

MSP430Ware学习笔记 UART SMCLK 115200-8-N-1

1.初始化UART0之前需要先初始化ACLK、SMCLK和MCLK。示例代码中使用XT1,ACLK为32768,SMCLK和MCLK约为8MHZ。 2.UART的时钟可以参考ACLK或者SMCLK,...

MSP430F5438 I2C学习笔记——AT24C02

对于大多数单片机来说,I2C成了一个老大难问题。从51时代开始,软件模拟I2C成了主流,甚至到ARMCortex M3大行其道的今天,软件模拟I2C依然是使用最广的方法。虽然软件模拟可以解决所有的问题...

MSP430F5438学习笔记 DCO倍频至8MHZ

1.平台说明 MS430F5438 // 时钟默认情况 // FLL时钟 FLL选择 XT1 // 辅助时钟 ACLK选择 XT1 32768Hz // 主系...

MSP430学习笔记(1)看门狗

1.      MSP430系列有丰富的定时器资源:看门狗定时器(WDT)、基本定时器(Basic Timer1)、定时器A(Timer_A)和定时器B(Timer_B)、实时时钟(RTC)等。 a)...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)