找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1834|回复: 0
打印 上一主题 下一主题
收起左侧

stm32按键控制mg90s数字舵机、pwm调节舵机转动角度

[复制链接]
跳转到指定楼层
楼主
昨天做了一个简答的小实验,我感觉挺有意思的跟大家分享一下。

我用了按键控制mg90s数字舵机,前不久一直研究模拟舵机,数字舵机与模拟舵机的控制方式是一样的pwm时序。
数字舵机接线方面:

与模拟舵机一样红线接vcc,棕线接GND,黄线接定义的板子引脚。

具体的对应角度如图所示:



我的板子引脚规定是
舵机信号线接PB5,key0引脚是PC5,key1引脚是PA15

在这里大家看一下我的程序:
main.c
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "key.h"
#include "timer.h"
#include "usart.h"


int main(void)
{       
         
        u8 t=0;          
         
        delay_init();                     //延时函数初始化          
        LED_Init();                                   //初始化与LED连接的硬件接口
        KEY_Init();                  //初始化与按键连接的硬件接口
        LED0=0;                                        //点亮LED
         
        u16 pwm_val=0;



           TIM3_PWM_Init(199, 7199);//50hz
         
       
        while(1)
        {
                if(KEY1==0)
                {
                                        pwm_val=190;//45

                                        TIM_SetCompare2(TIM3,pwm_val);

                                        delay_ms(2000);
                       
                                        pwm_val=195;//0

                                        TIM_SetCompare2(TIM3,pwm_val);

                }
                else if(KEY0==0)
                {
                                        pwm_val=185;//90

                                        TIM_SetCompare2(TIM3,pwm_val);

                                        delay_ms(2000);
                       
                                        pwm_val=195;//0

                                        TIM_SetCompare2(TIM3,pwm_val);

                }
                else if(WK_UP==0)
                {
                                        pwm_val=180;//45

                                        TIM_SetCompare2(TIM3,pwm_val);

                                        delay_ms(2000);
                       
                                        pwm_val=195;//0

                                        TIM_SetCompare2(TIM3,pwm_val);

                }
        }
}
```
/**************************************

PB5——PWM信号线(黄线)
+5v——+5v(红线)
GND——GND(棕线)
0度——195
45度——190
90度——185
135度——180
180度——175
**************************************/

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表