MSP430f5529控制舵机

最近在学习MSP430f5529。分享一下如何控制舵机:

硬件部分:

用的舵机时SG90,比较经典的舵机

硬件接线:

红线 : 3.3v/ 5v
黑 / 棕线 : GND
黄线 : 信号线(本代码接脚p2.4)

软件部分:

采用TA2定时器,TA2CCR0设置pwm周期,TA2CCTL1设置高电平长度。

代码如下:

#include <msp430F5529.h>
#define  p2_3   TA2CCR1//采用TA2定时器

void initduoji()
    {
         P2DIR |=BIT4; //配置P2.4口为输出口
         P2SEL |=BIT4; //开启P2.4口的io复用输出pwm
         unsigned const PWM=21500;//设置PWM周期参数
         TA2CCR0 = PWM;   //设置PWM周期
         TA2CTL=TASSEL__SMCLK+MC_1;  //设置定时器A2采用SMCLK时钟源和增计数模式,580us
         TA2CCTL1 = OUTMOD_6;   //设置TA2CCR1的PWM的输出模式为7模式

    }

void duoji(int i)
{
    p2_3=537.5*(i/45+1);
}

    int main(void)
    {
        WDTCTL = WDTPW | WDTHOLD;//关闭看门狗
        initduoji();//初始化舵机

        while(1){duoji(45);//在函数里写入想要偏转的角度
        }
    }

使用时,在主函数中引用duoji()函数,在里面写入想要偏转的角度即可。

希望可以帮到你。感谢关注。本人初学,如有不足,请多包含。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值