51单片机按键控制舵机旋转
一、舵机工作原理
1、这里介绍的sg90的可旋转角度为 0~180°
2、sg90有三条线,橙色(PWM)红色(5V)棕色(GND)
3、PMW的范围为0.5ms2.5ms,相应的旋转角度为0180°
二、控制代码
1、接线图如下(这里用到的PWM引脚为at89c52中的 P2.1):
2、实现的功能介绍:按下k2旋转角度为0°(复位),按下k3旋转角度递增,按下k4旋转角度递减,按下k5旋转角度最大(180°)
3、代码如下:
#include<reg52.h>
#include<intrins.h>
int count = 0; //全局变量,监控pwm周期
int jd=5; //初始化旋转角度,5是通过定时器定时长度和sg90高电平持续时间计算出来的(以下会说明)
sbit sg90=P2^1;
sbit key1 = P3^4;
sbit key2 = P3^5;
sbit key3 = P3^6;
sbit key4 = P3^7;
//延时函数
void delay(