MSP430F5529输入捕获/输出比较

输入捕获

暂未编写

输出比较

配置方法和原理

当TAxCCTLn中CAP位为0时,此路定时器被选择为比较模式。比较模式用于在特定时间间隔生成PWM输出信号或中断。每个捕获/比较块包含一个输出单元。输出单元用于产生输出信号,如PWM信号(就是输出pwm的io口)。

每个输出单元有八种工作模式,它们根据EQU0和EQUn信号生成信号,EQU0,EQU1/EQU2 就是比较器本体。
当TAR 的值大于等于TACCR0中的数值时,EQU0=1;
当TAR 的值等于相应的TACCR1或TACCR2的值时,EQU1=1或 EQU2=1。
在这里插入图片描述
这八种模式通过OUTMODx来选择。OUTMOD位位于TAxCCTL寄存器中。
用图例来解释八种工作模式:
在向上计数模式条件下
当定时器计数到TAxCCRn值并从TAxCCR0重新归零时,OUTn信号发生变化,具体取决于输出模式。
在这里插入图片描述
另外要注意,当前图例是列出的一个情况,在启用不同计数模式的情况下,各种输出模式也是不一样的,一定要以对应的计数模式为准!
其他配置与前文定时器配置相同,不再重复叙述。
输出比较开启之后,寄存器TAxCCRn存数含义变为电平翻转标准。

寄存器介绍

定时器输入捕获/输出比较控制寄存器 TAxCCTLn (TimeAx Capture/Compare Control Register)

在这里插入图片描述
在这里插入图片描述

项目功能
CAP选择捕获/比较模式
OUTMOD选择输出模式

示例代码

#include "msp430.h"

int main( void )
{
  // Stop watchdog timer to prevent time out reset
  WDTCTL = WDTPW + WDTHOLD;

  P1DIR |= BIT2;
  P1SEL |=BIT2;
  
  TA0CCR0|=30000;
  TA0CCTL1|= OUTMOD_6;
  TA0CCR1|=15000;
  TA0CTL = TASSEL_2 + MC_1 + TACLR;
  
  __bis_SR_register(LPM0_bits);
  __no_operation();
}

实验现象:在P1.2将会输出占空比为50%的pwm波

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值