微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > MSP430单片机定时器面面观

MSP430单片机定时器面面观

时间:11-11 来源:互联网 点击:
对于MSP430 X449而言:

默认情况如下:

ACLK= LFXT1 = 32768Hz, 低频时钟源

MCLK=SMCLK= default DCO = 32 x ACLK = 1048576Hz 高频时钟源

ACLK ,MCLK ,SMCLK的频率可以根据 FLL+相应的寄存器来调节

时钟源有:

LFXT1CLK: 32768 HZ 即:32K

XT2CLK: 4M

DCOCLK: 选择AP18PF时

FN_2 1.04875M

FN_3 1.08860M

FN_4 1.710

FN_8 3.4M

以下引脚的复用功能如下:

P1.5 : ACLK 82

P1.4: SMCKL 83

P1.1: MCLK 86

—————————————————————————————————————————

msp430 定时器学习笔记

_BIS_SR(LPM3_bits + GIE) //进入LPM3低功耗模式和开总中断允许

中断

#pragma vector=TIMERA0_VECTOR

__interrupt void Timer_A(void)

{

}

TACTL timerA控制寄存器

TAR timerA计数器

CCTL0 捕获/比较控制寄存器0

CCRO 捕获/比寄存器0(具有最高中断优先级别,单独使用一个中断向量)

CCTL1 捕获/比较寄存器1

CCR1 捕获/比较寄存器1

CCTL2 捕获/比较寄存器2

CCR2 捕获/比较寄存器2

TAIV 中断向量寄存器

其中,定时器,CCR2,CCR1三者共用一个中断向量

——————————————————————————————————————————

定时器A是一个16位的定时/计数器。它有3个捕获/比较寄存器;能支持多个时序控制、多个捕获/比较功能和多个PWM输出;有广泛的中断功能,中断可由计数器溢出产生,也可以由捕获/比较寄存器产生。

一、TimerA的4种工作模式

1. 停止模式

用于定时器暂停,并不发生复位,所有寄存器现行的内容在停止模式结束后都可用。当定时器暂停后重新计数时,计数器将从暂停时的值开始以暂停前的计数方向计数。

2. 增计数模

捕获/比较寄存器CCR0用作Timer_A增计数模式的周期寄存器。因为CCR0为16位寄存器,所以该模式适用于定时器周期小于65536的连续计数情况。计数器TAR可以增计数到CCR0的值,当计数值与CCR0的值相等(或定时器值大于CCR0的值)时,定时器复位并从0开始重新计数。

3. 连续计数模式

在需要65536个时钟周期的定时应用场合常用连续计数模式。定时器从当前值计数到0FFFH后,又从0开始重新计数。

连续计数模式的典型应用:

产生多个独立的时序信号。利用捕获比较寄存器捕获各种其它外部事件发生的定时器数据。

产生多个定时信号。

4. 增/减计数模式

需要生成对称波形的情况经常可以使用增/减计数模式。该模式下,定时器先增计数到CCR0的值,然后反向减计数到0。计数周期仍由CCR0定义,它是CCR0计数器值的2倍。

二、TimerA寄存器说明

寄存器

寄存器说明

类型

地址

初始状态

TACTL

Timer_A控制寄存器

读写

160H

POR复位

TAR

Timer_A计数器

读写

170H

POR复位

CCTL0

捕获/比较控制寄存器0

读写

162H

POR复位

CCR0捕获/比较寄存器0

读写

172H

POR复位

CCTL1

捕获/比较控制寄存器1

读写

164H

POR复位

CCR1捕获/比较寄存器1

读写

174H

POR复位

CCTL2

捕获/比较控制寄存器2

读写

166H

POR复位

CCR2捕获/比较寄存器2

读写

176H

POR复位

TAIV中断向量寄存器

读写

12EH

POR复位

1. TACTL 控制寄存器,各位定义:

15-10

987

6

5

4

3

2

1

0

未用

SSEL1SSEL0ID1ID0MC1MC0未用CLRTAIETAIFG

SSEL1、SSEL0选择进入定时器分频器的时钟源

SSEL1

SSEL0

输入时钟源

说明

00TACLK用特定的外部引脚信号
01ACLK辅助时钟
10MCLK系统时钟
11INCLK外部输入时钟

ID1、ID0输入分频系数

ID1

ID0

分频系数

00不分频
011/2分频
101/4分频
111/8分频

MC1、MC0计数模式控制位

MC1

MC0

模式

00停止模式
01增计数模式
10减计数模式
11增/减计数模式

CLR——定时器清除。当该位为1时,定时器复位。

TAIE——定时器中断允许位。0:禁止定时器溢出中断;1:允许定时器溢出中断。

TAIFG——定时器溢出标志位。

增计数模式:当定时器由CCR0计数到0时,TAIFG置位;

连续计数模式:当定时器由0FFFFH计数到0时,TAIFG置位;

增/减计数模式:当定时器由CCR0减计数到0时,TAIFG置位。

2. T

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top