×
嵌入式 > 技术百科 > 详情

msp430f149单片机控制步进电机C语言程序

发布时间:2020-06-01 发布时间:
|
#include   
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。  
 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
ADI 高精度低功耗精密放大器