|
昨天做了一個簡答的小實驗,我感覺挺有意思的跟大家分享一下。
我用了按鍵控制mg90s數(shù)字舵機,前不久一直研究模擬舵機,數(shù)字舵機與模擬舵機的控制方式是一樣的pwm時序。
數(shù)字舵機接線方面:
與模擬舵機一樣紅線接vcc,棕線接GND,黃線接定義的板子引腳。
具體的對應(yīng)角度如圖所示:
我的板子引腳規(guī)定是
舵機信號線接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(); //延時函數(shù)初始化
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
**************************************/
|
評分
-
查看全部評分
|