关于32单片机的MG995舵机控制

2019-07-20 22:56发布

大佬们帮帮我请问我这样编程舵机对不对 20ms的周期 然后1ms高电平可以转动45度 没有用定时器 如果错了求问哪里错了 谢谢大佬们!!
主函数
#include "stm32f10x.h"
#include "led.h"
#include "delay.h"


int main(void)
{
       
delay_init();
LED_Init();       
       
while(1){       
       
        GPIO_SetBits(GPIOA,GPIO_Pin_1);
        delay_ms(1);//1ms¶æ»ú×a45¶è
       
        GPIO_ResetBits(GPIOA,GPIO_Pin_1);
        delay_ms(19);//ÖüÆúÎa20ms
}

}


led.c


#include "led.h"
#include "stm32f10x.h"

void LED_Init(void)
{
        GPIO_InitTypeDef  GPIO_InitStructure;
       
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//GPIOA
       
        GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
        GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1;
        GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
        GPIO_Init(GPIOA,&GPIO_InitStructure);
        GPIO_SetBits(GPIOA,GPIO_Pin_1);
       
}

LED.H

#ifndef __LED_H
#define __LED_H




void LED_Init(void);

#endif

delay.h

#ifndef __DELAY_H
#define __DELAY_H                           
#include "sys.h"  

         
void delay_init(void);
void delay_ms(u16 nms);
void delay_us(u32 nus);

#endif





友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
翼行园子
1楼-- · 2019-07-21 03:48
用PWM去控制
peng1554
2楼-- · 2019-07-21 08:14
帮顶~~
sa549236986
3楼-- · 2019-07-21 08:49
 精彩回答 2  元偷偷看……
成龙哥哥
4楼-- · 2019-07-21 12:54
sa549236986 发表于 2019-5-9 19:48
请问PWM那个操作舵机那个函数怎么写

PWM例程改,设置好始终周期和高电平时间,TIM_TimeBaseStructure.TIM_Period = arr;
        TIM_TimeBaseStructure.TIM_Prescaler =psc;  修改arr和psc的值

一周热门 更多>