打印

msp430f149控制步进电机编程实例

[复制链接]
527|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
309030106|  楼主 | 2016-10-26 22:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <msp430x14x.h>   
typedef    unsigned int  uint;  
typedef   unsigned char uchar;   
#define   PWM   BIT2   
void int_clk()   
{   
    uchar i;   
    BCSCTL1&=~XT2OFF;  //打开XT振荡器   
    BCSCTL2|=SELM1+SELS;//MCLK 8M and SMCLK 1M     
    do   
    {   
        IFG1 &= ~OFIFG;                 //清除振荡错误标志   
        for(i = 0; i < 100; i++)   
      _NOP();           //延时等待   
        }   
    while ((IFG1 & OFIFG) != 0);    //如果标志为1继续循环等待   
    IFG1&=~OFIFG;   
}   
void int_pwm()   
{   
  P1SEL|=PWM;//选择P12作为PWM输出   
  P1DIR|=PWM;     
  TACCR0=800;//PWM信号周期10KHz   
  TACCR1=400;//占空比1:1   
  TACCTL1=OUTMOD0+OUTMOD1+OUTMOD2; //输出模式选择   
  TACTL|=TASSEL1+MC0;   
}   
void main()   
{   
  WDTCTL=WDTPW+WDTHOLD;//关看门狗   
  int_clk();  //初始化时钟   
  int_pwm();  //初始化PWM   
  while(1);//结束   
}
本例程是以msp430f149单片机的PWM控制步进电机的转动,以P1.2口为PWM输出端口,PWM信号周期为10KHZ,占空比为1:1。  

相关帖子

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

本版积分规则

103

主题

774

帖子

2

粉丝