MSP430单片机定时器学习笔记

msp430 定时器学习笔记

_BIS_SR(LPM2_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三者共用一个中断向量

TimerA输出模式:

输出模式0   输出模式:输出信号OUTx由每个捕获/比较模块的控制寄存器CCTLx中的OUTx位定义,并在写入该寄存器后立即更新。最终位OUTx直通。
 
输出模式1  置位模式:输出信号在TAR等于CCRx时置位,并保持置位到定时器复位或选择另一种输出模式为止。
 
输出模式2  PWM翻转/复位模式:输出在TAR的值等于CCRx时翻转,当TAR的值等于CCR0时复位。

输出模式3  PWM置位/复位模式:输出在TAR的值等于CCRx时置位,当TAR的值等于CCR0时复位。

输出模式4  翻转模式:输出电平在TAR的值等于CCRx时翻转,输出周期是定时器周期的2倍。
 
输出模式5  复位模式:输出在TAR的值等于CCRx时复位,并保持低电平直到选择另一种输出模式。

输出模式6  PWM翻转/置位模式:输出电平在TAR的值等于CCRx时翻转,当TAR值等于CCR0时置位。
 
输出模式7  PWM复位/置位模式:输出电平在TAR的值等于CCRx时复位,当TAR的值等于CCR0时置位

 

TACTL
15-10 9 8 7 6 5 4 3 2 1 0
未使用 SSEL1   SSEL0   ID1     ID0     MC1     MC0     未使用  CLR     TAIE    TAIFG
定时器时钟源选择:

SSEL1    SSEL0    
0          0  (特定外部信号)
0          1  (TASSEL0)  ACLK
1          0  (TASSEL1)  SMCLK
1          1  (INCLK)

通过MC1  MC0组合值来觉得TimerA的工作模式

0  0  停止模式。停止模式下,定时器不复位,回复工作后,按照停止时刻的状态继续运行
如果需要情况,请使用TACTL中的CLR清空
0  1  增计数模式
TAR == CCR1的时候产生一次中断。但是只有TAR == CCR0的时候,定时器才复位。(65535)

1  0  连续技术模式

0---0x0FFFH之后重新计数
1  1  增/减计数模式   先增,后减,产生堆成波形。

先到CCR0,然后减到0.周期翻倍。

对于更改CCR0的时

如果更改CCRO的值比之前大,则直接走到更改的值返回复位。

如果更改的值比之前的值小,分为2种情况:

1,此时时钟处于高,则遇到下降沿立马复位。

2.如果时钟处于低,则在下一个时钟周期下降沿复位(多往前走一个时钟周期)

修改TAR CACTL  中CLR,CM0 CM1的时候,需要先停止计数器

//就是把当前计数器TAR的值抓取放到CCRX当中
当CCTLx中的CAPx=1,该模块工作在捕获模式。这时如果在选定的引脚上发生设定的脉冲触发沿(上升沿、下降沿或任意跳变),则TAR中的值将写入到CCRx中。

当捕获完成后,中断标志位CCIFGx 被置位

 

 

时间: 2024-11-02 21:15:35

MSP430单片机定时器学习笔记的相关文章

Javascript定时器学习笔记

掌握定时器工作原理必知:JavaScript引擎是单线程运行的,浏览器无论在什么时候都只且只有一个线程在运行JavaScript程序. 常言道:setTimeout和setInterval是伪线程. Javascript是运行在单线程环境中的,在页面的声明周期中,不同时间可能有其他代码在控制Javascript进程,比如:包含 在<script>元素中的代码.dom元素的事件处理程序.Ajax的回调函数.定时器仅仅是在未来的某个时刻将代码添加到代码队列中,执行时机是不能保证的.代码队列按照先进

51单片机定时器中断问题

问题描述 51单片机定时器中断问题 代码如下,设置断点后发现,程序不进入定时器中断函数 #include #include #define uchar unsigned char #define uint unsigned int sbit key=P3^7; uchar display[8][8]; /*rank:Z,H,B,I,T,I,心,U*/ uchar code table_cha[8][8]={0x7E, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x7

Symbian学习笔记

Symbian学习笔记(22) - 关于皮肤的小结 Symbian学习笔记(21)--原来还有这个工具wsdl2cpp,访问webserv Symbian学习笔记(20)--用gSOAP更简单地实现Web Services Clien Symbian学习笔记(19)--初探WebServices API的使用(下) Symbian学习笔记(18)--初探WebServices API的使用(中) Symbian学习笔记(17)--初探WebServices API的使用(上) Symbian学习

作为一个新手的Oracle(DBA)学习笔记

Oracle数据库笔记 Jack Chaing 作者QQ595696297 交流群 127591054 祝大家学习进步. 如果大家想看Word版本的可以去下载:Word排版比较清晰一些. http://download.csdn.net/detail/jack__chiang/9810532 此笔记是作者本人去年开始从一个DBA新人的学习笔记,积累至今,希望拿出来给那些对DBA有兴趣的童孩学习,大家一起努力嘛. 此笔记记录了作者工作学习中从零基础的学习的记录,和从中遇见的问题与问题的解决!很高兴

spring学习笔记(13)基于Schema配置AOP详解

基于Schema配置入门实例 除了基于@AspectJ注解的形式来实现AOP外,我们还可以在IOC容器中配置.先来看看一个常见的应用场景,在我们的web项目中,我们需要为service层配置事务,传统的做法是在每个业务逻辑方法重复下面配置中: Created with Raphaël 2.1.0程序开始1. 获取DAO层封装好的数据库查询API,如HIbernate中的SessionFactory/Session和mybatis中的xxxMapper2. 开启事务3. 根据入参查询数据库完成相应

spring学习笔记(10)@AspectJ研磨分析[1]入门、注解基本介绍

@AspectJ准备 AspectJ是一个面向切面的框架,它扩展了Java语言.AspectJ定义了AOP语法所以它有一个专门的编译器用来生成遵守Java字节编码规范的Class文件. 在使用AspectJ之前,我们需要导入aspectJ相应的jar包,可到我的资源页http://download.csdn.net/detail/qwe6112071/9468329 中下载,而如果使用maven则可直接在pom.xml中加入如下代码: <dependency> <groupId>o

友善之臂Mini6410之Android开发学习笔记(3)-ADC Demo

友善之臂Mini6410之Android开发学习笔记源码同步更新,请使用git工具进行同步.关于Git工具更多信息,请参考:http://progit.org/book/zh/ git clone https://code.google.com/p/androiddemoformini6410/ ADCActivity.java package com.mini6410.ADC; import java.util.Timer; import java.util.TimerTask; import

JavaScript学习笔记整理_setTimeout的应用_基础知识

setTimeou的t应用 var ids = []; function foo1(i) { this.i = i; console.log('i = '+i); ids[0] = setTimeout((function () { foo1(i); }),1000); } function foo2(j) { this.j = j; console.log('j = '+j); ids[1] = setTimeout((function () { foo2(j); }),1000); } fo

JetSpeed学习笔记(一)

笔记 JetSpeed学习笔记(一) fuweilin 2005-4-7 前言 参加了公司的portal的兴趣小组,今天对portal进行学习.首先上网看了看一些portal的资料,对portal.portlet.portlet container以及JSR168等概念有个基本的了解.决定进一步实战的方式感受portal,于是学习JetSpeed.     1.  JetSpeed介绍JetSpeed是Apache组织开发的一个采用Java和XML的开放源代码的企业信息门户的实现.门户可以让终端