快速入门msp430g2553之时钟

一切依据用户手册,会看手册你就是爸爸,不会看你就是弟弟

定时器累加

在这里插入图片描述

在这里插入图片描述

/*配置DCO频率为1MHz*/
    DCOCTL = CALDCO_1MHZ;
    BCSCTL1 = CALBC1_1MHZ;
    /*设置P1.6为输出*/
    P1DIR |= BIT6;

    /*设置时钟源为SMCLK*/
    TA1CTL |= TASSEL_2;
    /*设置工作模式为Up Mode*/
    TA1CTL |= MC_1;//Up Mode模式下,16bit Timer计数器 TAR会从0递增到TACCR0,然后回到0,重复这个过程
    /*设置定时间隔*/
    TA1CCR0 = 49999;//1MHz 计 50000个数,1/1MHz * 50000 20Hz 0.05s
    	if(TA1CTL & TAIFG)
    	{
    		cnt ++;
    		TA1CTL &= ~TAIFG;
    		if(cnt == 20)//0.05s * 20 = 1s
    		{
    			P1OUT ^= BIT6;
    			cnt = 0;
    		}
    	}

在这里插入图片描述

定时器中断

    /*开启TAIFG中断*/
    TA1CTL |= TAIE;
    /*打开全局中断*/
    __bis_SR_register(GIE);
__interrupt void Time_Tick(void)
{
	static uint8_t cnt = 0;
	switch(TA1IV)
	{
	case 0x02:
		break;
	case 0x04:
		break;
	case 0x0A:
		cnt ++;
		if(cnt == 20)
		{
			cnt = 0;//清零计数器
			flag = 1;//1s 到了
			currenttime ++;//时间加1
			currenttime %= 86400;//一天24小时,防止超出
		}
		break;
	default:
		break;
	}
}

输出pwm

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

    /*设置时钟源为SMCLK*/
    TA1CTL |= TASSEL1;
    /*设置工作模式为Up&Down*/
    TA1CTL |= MC0|MC1;
    /*设置TA1CCR0为0x00FF*/
    TA1CCR0 = 0x00FF;
    /*设置TA1CCR2为0x00FF*/
    TA1CCR2 = 0x00FF;//占空比(TACCR0 - TACCR2) / TACCR0,频率=SMCLK/(TACCR0+1)/2
    /*设置为比较模式*/
    TA1CCTL0 &= ~CAP;
    TA1CCTL2 &= ~CAP;
    /*设置比较输出模式*/
    TA1CCTL2 |= OUTMOD_6;

在这里插入图片描述

在这里插入图片描述

    /*设置IO复用*/
    P2SEL |= BIT5;
    P2DIR |= BIT5;

先加后减

for(cnt = 0;cnt < 0x00FF;cnt ++)
    	{
    		TA1CCR2 = cnt;
    		__delay_cycles(5000);
    	}
    	for(cnt = 0x00FF;cnt > 0;cnt --)
    	{
    		TA1CCR2 = cnt;
    		__delay_cycles(5000);
    	}

在这里插入图片描述

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jun_军

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值