[讨论] 关于msp430f149的定时器的使用

liuchang---   2015-5-25 10:56 楼主
  1. #include <msp430x14x.h>
  2. #include "BoardConfig.h"
  3. void main()
  4. {
  5.         uchar i;               
  6.         WDTCTL=WDTPW + WDTHOLD;
  7.         BoardConfig(0xb8);   
  8.         BCSCTL1 &= ~XT2OFF;
  9.         do
  10.         {
  11.                 IFG1 &= ~OFIFG;                     
  12.                 for (i = 0xFF; i > 0; i--);  
  13.         }                                    
  14.         while ((IFG1 & OFIFG) != 0);                               
  15.         BCSCTL2 |=SELM_2 + SELS;               
  16.   
  17.             
  18.         TACCR0 = 4096;
  19.         TACCTL0 = CCIE;
  20.         TACTL = TASSEL_1 + ID_3 + MC_1 + TACLR; <font color="#0000ff">//这里使用TACLR有什么意义呢?</font>
  21.         
  22.         P6DIR |= BIT7;
  23.         
  24.         _EINT();
  25.         LPM1;
  26.         
  27. }

  28. #pragma vector = TIMERA0_VECTOR
  29. __interrupt void TimeB_ISR(void)
  30. {
  31.         
  32.         P6OUT ^= BIT7;
  33. }
问题描述:小弟最近在学习msp430,看郭天祥的程序,没有使用TACLR(如程序注释部分),而我看网上的代码,在这里使用了TACLR,我实际使用开发板跑了一遍,发现这两个实验结果是一样的
问题1:那到底这个TACLR有什么作用呢?小弟不懂,恳请大神指教~~~

问题2:如下use's guide中所说:TACLR清0,会同时自动清除TACCR0中的值,还会清除divider中的分频值,那使用这个位有什么具体的作用呢?恳请大神指教

Unnamed QQ Screenshot20150525105032.png



回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复