下载此文档

msp430定时器a中文超级详解.doc


文档分类:IT计算机 | 页数:约14页 举报非法文档有奖
1/14
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/14 下载此文档
文档列表 文档介绍
MSP430的定时器中有比较捕获比较模式:这是定时器的默认模式,当在比较模式下的时候,与捕获模式相关的硬件停止工作,如果这个时候开启定时器中断,然后设置定时器终值(Rx),开启定时器,Rx的时候,IFGx置一,同时产生中断。IFGx置一。例子:比较模式就像51单片机一样,要能够软件设置定时间隔来产生中断处理一些事情,如键盘扫描,也可以结合信号输出产生时序脉冲发生器,PWM信号发生器。如:Rx,启动定时器,Rx比较产生中断处理。捕获模式:利用外部信号的上升沿、下降沿或上升下降沿触发来测量外部或内部事件,也可以由软件停止。IxB,GND,VCC。IFGx置一捕获模式的应用:利用捕获源的来触发捕获TAR的值,Rx中,Rx的值,Rx是个16位的寄存器,捕获模式用于事件的精确定位。如测量时间、频率、速度等例子:利用两次捕获的值来测量脉冲的宽度。ISx=”11“(),与GND发生切换时产生捕获条件结合利用:异步通讯同时应用比较模式和捕获模式来实现UART异步通信。即利用定时器的比较模式来模拟通讯时序的波特率来发送数据,同时采用捕获模式来接收数据,并及时转换比较模式来选定调整通信的接受波特率,达到几首一个字节的目的----------------------------------------利用MSP430单片机定时器A和捕获/比较功能模块结合使用,实现脉冲宽度的测量。I1A端口()作捕获外部输入的脉冲电平跳变,同时结合简单的软件算法就能实现脉冲宽度的测量。在实际应用中可根据例程中的start,end,overflow三个变量来计算脉冲宽度。此功能模块在实际产品应用中体现出有较高的应用价值。2-例程#include<>unsignedintstart,end;unsignedcharoverflow;voidmain(void){WDTCTL=WDTPW+WDTHOLD;//关闭看门狗定时器P1DIR=BIT0+BIT4;//=BIT2;//=TASSEL0+TACLR+TAIE+MC1;//定时器A时钟信号选择ACLK,TL1=MC0+SCS+IE;//I0A为捕获信号源_EINT();//中断允许while(1);//LOOP}#pragmavector=TIMERA1_VECTOR//定时器A中断处理__interruptvoidtimer_a(void){switch(TAIV)//向量查询{case2://TL1&CM0)//TL1=(CCTL1&(~CM0))|CM1;//更变设置为下降沿触发start=TAR;//记录初始时间overflow=0;//溢出计数变量复位}TL1&CM1)//TL1=(CCTL1&(~CM1))|CM0;//更变设置为上升沿触发end=TAR;//用start,end,overflow计算脉冲宽度}break;case10://定时器溢出中断overflow++;break;//溢出计数加1default:break;}}//例程结束----------------------------------------------------------------------msp430单片机定时器Timer_ATimer_A定时器:注:。主要有TACTL,R2,TAIV几个寄存器。其中最主要的是TACTL寄存器,它决定Timer_A的输入时钟信号,Timer_A的工作模式,Timer_A的开启与停止,中断的申请等。定时器A大致可分为四个功能模块:计数器、比较/捕获寄存器0、比较/捕获寄存器1、比较/捕获寄存器2。计数器是主体它是一个开启和关闭的定时器,如果开启它就是一直在循环计数,只会有一个溢出中断,也就是当计数由0xffff到0时会产生一个中断。那怎么实现定时功能呢?这就要靠三个比较/R0比较特殊,通过他可以改变计数器的最大计数值,R0的值时自动会将计数器清零。但这需要设置相应的工作模式,模式列表如下:0——停止模式,用于定时器的暂停1——增计数模式,R0,再清零计数2——连续计数模式,计数器增计数到0xffff,再清零计数3——增/减计数模式,R0,R0单元会产生一个中断。R2时,两个单元也都会个产生一个中断。这样我们可以通过定时器A得到三个定时时间了。TLx是相应比较/捕获寄存器的控制寄存器。它可对比较/捕获寄存器进行设置,在这里只用到比较功能,Rx时产生中断,TLx默认的是比较功能,IE这个控制字,Rx就是相应比较器的值。下面介绍几个Timer_A的重要寄存器:TACTL寄存器:15~

msp430定时器a中文超级详解 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数14
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xxq93485240
  • 文件大小47 KB
  • 时间2019-03-28
最近更新