TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //TIM輸出級性為高,這是用來做什么的?
我在PWM.C文件中將這句代碼改為TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "pwm.h"
int main(void)
{
delay_init();
LED_Init();
TIM1_PWM_Init(9999,143);//周期為20ms
while(1)
{
TIM_SetCompare1(TIM1,250);
delay_ms(10000);
TIM_SetCompare1(TIM1,500);//45度
delay_ms(10000);
TIM_SetCompare1(TIM1,750);//90度
delay_ms(10000);
TIM_SetCompare1(TIM1,1000);//135度
delay_ms(10000);
TIM_SetCompare1(TIM1,1250);//180度
delay_ms(10000);
連上舵機10v的直流電壓,連上舵機嘗試了一下,舵機不動;用示波器測量書出的波形,在低電平期間有雜波,但大體能保證周期為20ms,以0.5ms(45度)為高電平的pwm波,請問問題出現在哪兒?
|