MSP430时钟:
1、在MSP430单片机中一共有三个或四个时钟源:
(1)LFXT1CLK,为低速/高速晶振源,通常接32.768kHz,也可以接(400kHz~16Mhz);
(2)XT2CLK,可选高频振荡器,外接标准高速晶振,通常是接8Mhz,也可以接(400kHz~16Mhz);
(3)DCOCLK,数控振荡器,为内部晶振,由RC震荡回路构成;
(4)VLOCLK,内部低频振荡器,12kHz标准振荡器。
2、在MSP430单片机内部一共有三个时钟系统:
(1)ACLK,Auxiliary Clock,辅助时钟,通常由LFXT1CLK或VLOCLK作为时钟源,可以通过软件控制更改时钟的分频系数;
(2)MCLK,Master Clock,系统主时钟单元,为系统内核提供时钟,它可以通过软件从四个时钟源选择;
(3)SMCLK,Sub-Main Clock,系统子时钟,也是可以由软件选择时钟源。
Basic Clock Module Registers(基础时钟寄存器)
DCO control register
DCOCTL
Basic clock system control 1
BCSCTL1
Basic clock system control 2
BCSCTL2
Basic clock system control 3
BCSCTL3
SFR interrupt enable register 1
IE1
SFR interrupt flag register 1
IFG1
3、MSP430的时钟设置包括3个寄存器,DCOCTL、BCSCTL1、BCSCTL2、BCSCTL3
DCOCTL,DCO控制寄存器,地址为56H,初始值为60H
DCO2
DCO1
DCO0
MOD4
MOD3
MOD2
MOD1
MOD0
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
BCSCTL2 |= SELM_3 + DIVM_3; // MCLK = 32768/8
BCSCTL2 |= SELM_0 + DIVM_3; // MCLK = DCO
BCSCTL2 |= SELM_0 + DIVM_3; // MCLK = DCO/8
MSP430中有如下定义:
#define RSEL0 (0x01)
#define RSEL1 (0x02)
#define RSEL2 (0x04)
#define RSEL3 (0x08)
#define DIVA0 (0x10)
#define DIVA1 (0x20)
#define XTS (0x40)
#define XT2OFF (0x80)
#define DIVA_0 (0x00)
#define DIVA_1 (0x10)
#define DIVA_2 (0x20)
#define DIVA_3 (0x30)
#define DIVS0 (0x02)
#define DIVS1 (0x04)
#define SELS (0x08)
#define DIVM0 (0x10)
#define DIVM1 (0x20)
#define SELM0 (0x40)
#define SELM1 (0x80)
#define DIVS_0 (0x00)
#define DIVS_1 (0x02)
#define DIVS_2 (0x04)
#define DIVS_3 (0x06)
#define DIVM_0 (0x00)
#define DIVM_1 (0x10)
#define DIVM_2 (0x20)
#define DIVM_3 (0x30)
#define SELM_0 (0x00)
#define SELM_1 (0x40)
#define SELM_2 (0x80)
#define SELM_3 (0xC0)
六、BCSCTL1 = CALBC1_1MHZ; //设置值 (例3、4)
#ifndef __DisableCalData
SFR_8BIT(CALDCO_16MHZ);
SFR_8BIT(CALBC1_16MHZ);
SFR_8BIT(CALDCO_12MHZ);
SFR_8BIT(CALBC1_12MHZ);
SFR_8BIT(CALDCO_8MHZ);
SFR_8BIT(CALBC1_8MHZ);
SFR_8BIT(CALDCO_1MHZ);
SFR_8BIT(CALBC1_1MHZ);
#endif
关于SFR_8BIT的相关说明:
External references resolved by a device-specific linker command file
(外部引用解决的特定于设备的连接器命令文件)
#define SFR_8BIT(address) extern volatile unsigned char address
#define SFR_16BIT(address) extern volatile unsigned int address
一周热门 更多>