打印

430 定时器的使用

[复制链接]
1075|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
想简单_lk|  楼主 | 2013-7-18 20:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
/***********************************************************
程序功能:通过74LVC4245在连接器JP2的引脚上产生5v
          电平的百分之五十占空比的方波。
------------------------------------------------------------
跳线设置:将跳线座J13的B8脚和P5.7脚用短路帽连接
拨码开关设置:将SN74LVC位拨至ON,其余位拨至OFF
------------------------------------------------------------
测试说明:用户可以通过示波器观察连接器JP2的2--9脚输出的信号波
          形和幅值。
************************************************************/
#include  <msp430x14x.h>

/********************主函数********************/
void main(void)
{
    WDTCTL = WDTPW + WDTHOLD;       //关闭看门狗
    /*下面六行程序关闭所有的IO口*/
    P1DIR = 0XFF;P1OUT = 0XFF;
    P2DIR = 0XFF;P2OUT = 0XFF;
    P3DIR = 0XFF;P3OUT = 0XFF;
    P4DIR = 0XFF;P4OUT = 0XFF;
    P5DIR = 0XFF;P5OUT = 0XFF;
    P6DIR = 0XFF;P6OUT = 0XFF;
   
    P6DIR |= BIT2;P6OUT &= ~BIT2;   //打开电平转换
    P2DIR |= BIT3;P2OUT &= ~BIT3;   //电平转换方向3.3V--->5V
    P3DIR |= BIT4;                  //设置P3.4为输出
    P5DIR = 0xff;
    P5OUT = 0x80;
   
    TBCCTL0 = CCIE;                 //允许CCR0比较中断
    TBCCR0 = 50000;
    TBCTL = TBSSEL_2 + MC_2;        //计数时钟SMCLK,连续计数模式

    _EINT();                        //打开全局中断
    LPM0;                           //进入LPM0模式
}
/*******************************************
函数名称:TimerB_ISR
功    能:定时器B的中断服务函数
参    数:无
返回值  :无
********************************************/
#pragma vector = TIMERB0_VECTOR
__interrupt void TimerB_ISR(void)
{
    P3OUT ^= BIT4;                  //P3.4连接的LED闪烁           
    P5OUT ^= 0x7f;                  //P5口输出50%占空比方波         
    TBCCR0 += 50000;                //TBCCR0增加偏置量
}

相关帖子

沙发
想简单_lk|  楼主 | 2013-7-18 20:11 | 只看该作者
TBCCR0 += 50000;                //TBCCR0增加偏置量


表示什么啊?

使用特权

评论回复
板凳
想简单_lk|  楼主 | 2013-7-18 20:19 | 只看该作者

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

4

帖子

0

粉丝