[MCU] 分别是表示什么意思呢

[复制链接]
677|12
 楼主| stly 发表于 2020-7-4 23:42 | 显示全部楼层 |阅读模式
我想用TA定时器定时15s的时间进入中断是将引脚取反,请问这个15s定时参数应该怎么设置啊,手册没看太懂,
如果如下设置:CCR0 = 500;                                 
    TACTL = TASSEL_2 + MC_1 ;
分别是表示什么意思呢,定时器定时时间的公式是什么啊?
huwr 发表于 2020-7-4 23:45 | 显示全部楼层
一秒一秒的来呀
或者1.5秒1.5秒的来呀
tian111 发表于 2020-7-4 23:49 | 显示全部楼层
对着手册看下寄存器,手册上面写得很清楚
 楼主| stly 发表于 2020-7-5 09:52 | 显示全部楼层
具体寄存器 参数应该怎么设置
怎么计算的
liuzaiy 发表于 2020-7-5 09:56 | 显示全部楼层
对着手册看下寄存器,手册上面写得很清楚
kangzj 发表于 2020-7-5 09:59 | 显示全部楼层
TA0CCR0 = 100;//比较值设为50000,相当于50ms的时间间隔
时钟源为SMCLK
注释中的比较值设为50000,相当于50ms的时间间隔,这是为什么啊?
langgq 发表于 2020-7-5 10:03 | 显示全部楼层
把完整代码发出来,大家参谋一下
huanghuac 发表于 2020-7-5 10:06 | 显示全部楼层
main()
{WDTCTL = WDTPW | WDTHOLD;     // Stop watchdog timer
  IO_Init();
     TA0CTL |= MC_1 + TASSEL_2 + TACLR;       //时钟为 SMCLK,比较模式,开始时清
零计数器
     TA0CCTL0 = CCIE;       //比较器中断使能
     TA0CCR0   = 100;       //比较值设为 50000,相当于 50ms 的时
间间隔
__enable_interrupt();}
#pragma vector = TIMER0_A0_VECTOR
__interrupt void Timer_A (void)

{
  i++;
  if(i==500)
  {
  P8OUT ^= BIT1;        //形成闪灯效果
  i=0;
  }
}

}
tian111 发表于 2020-7-5 10:11 | 显示全部楼层
在PUC 后, MCLK 和 SMCLK 来自 1.1MHz 的 DCOCLK,TASSEL_2相当于SMCLK  =1.1MHZ,这样50000算上去差不多等于50ms
 楼主| stly 发表于 2020-7-5 10:15 | 显示全部楼层
时钟源和时间间隔的公式是?
liuzaiy 发表于 2020-7-5 10:20 | 显示全部楼层
TA0CCR0/SMCLK=50000/(1.1*10^6)=50ms
chenjunt 发表于 2020-7-5 10:23 | 显示全部楼层

这个手册上应该是有说明的吧
 楼主| stly 发表于 2020-7-5 10:33 | 显示全部楼层

其实还是不大明白,我再琢磨琢磨吧,多谢了哈先
您需要登录后才可以回帖 登录 | 注册

本版积分规则

433

主题

7058

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部