找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1184|回复: 0
收起左侧

STM32驱动舵机

[复制链接]
ID:970990 发表于 2023-1-6 22:58 | 显示全部楼层 |阅读模式
STM32驱动舵机实现功能:按下编码器按钮,角度增加45°,正转编码器,角度加一,反转编码器,角度减一。
out3.gif

舵机介绍:如图,这种蓝色舵机有三根引线,红色为+5v  棕色为GND  橙色为信号线

舵机

舵机

这种舵机为模拟舵机,采用pwm信号驱动,根据不同的占空比,舵机可以输出不同的角度,具体的对应关系如下图所示:

舵机驱动信号

舵机驱动信号






主函数:
#include "stm32f10x.h"                  // Device header
#include "OLED.h"
#include "EncoderAndServo.h"
#include "Delay.h"


int main()
{
        int32_t i ;
        uint16_t Angle,KeyNum=0;
        OLED_Init();
        EncoderAndServo_Init();
        OLED_DisplayString(1,1,"Angle:");
        while(1)
        {
                i+=Return_Num();//获取编码器返回值
                if(Return_KeyNum())//判断编码器按键是否按下
                {
                        i+=50;
                }
                if(i>250)i=50;
                if(i<50)i=50;

                Angle=i;
                TIM3_SetCompare((uint16_t)i);//将i传递给捕获比较寄存器
                OLED_DisplayNum(1,7,(uint16_t)((((float)Angle-50.0)/200.0)*180.0),3);//角度显示

        }               
}




代码部分:
  1. <blockquote>#include "stm32f10x.h"                  // Device header
复制代码



28-编码器控制舵机.7z

214.69 KB, 下载次数: 36, 下载积分: 黑币 -5

回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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