|
MG90舵機180°,控制轉(zhuǎn)小度數(shù),用PWM控制,大概是怎么設(shè)置定時器初始值?以下是我寫的,用紅外對管來檢測輸出后,控制舵機轉(zhuǎn)小角度,大概5°。但是舵機出現(xiàn)了抖動,請問,怎么回事?又該怎么解決。我看了一些資料,沒弄懂。
void Timer0_Init()
{
TMOD &= 0x00;
TMOD |= 0x01; //定時器T0設(shè)置成方式1
TH0 = 0xFF; //定時常數(shù) 5us 晶振為12MHz
TL0 = 0xFB;
ET0 = 1;
TR0 = 1;
EA=1;
}
void Time0_Init() interrupt 1
{
TR0 = 0;
TH0 = 0xFF; // 5us
TL0 = 0xFB;
if(count <= timer1) //5==0°
{
PWM = 1;
}
else
{
PWM = 0;
}
count++;
if (count >= 4000) //T = 20ms清零
{
count = 0;
}
TR0 = 1; //開啟T0
}
|
|