用pwm运行舵机

本文介绍了如何利用PWM信号来驱动舵机,详细讲解了舵机不同占空比对应的转动角度,并给出了基础的单片机代码示例,周期设置为20ms,适合初学者入门。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

用pwm来运行舵机,舵机是基础的sg90


一、基础知识

0.5ms——————-舵机会转动 0 °
1.0ms——————-舵机会转动 45°
1.5ms——————-舵机会转动 90°
2.0ms——————-舵机会转动 135°
2.5ms——————-舵机会转动180°
占空比对应转动的角度

周期=(arr+1)(psc+1)/72000000=(1999+1)(71+1)/72000000=20ms

二、代码

1.pwm.c

#include "pwm.h"
#include "led.h"

void TIM1_PWM_Init(u16 arr,u16 psc)
{
     
	 GPIO_InitTypeDef GPIO_InitStructure;
	TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
	TIM_OCInitTypeDef  TIM_OCInitStructure;

	RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE);// 
 	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA , ENABLE);  //ʹÄÜGPIOÍâÉèʱÖÓʹÄÜ                                                               	

   //ÉèÖøÃÒý½ÅΪ¸´ÓÃÊä³ö¹¦ÄÜ,Êä³öTIM1 CH1µÄPWMÂö³å²¨ÐÎ
	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; //TIM_CH1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值