欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
51單個(gè)舵機(jī)精確控制程序
[打印本頁(yè)]
作者:
南風(fēng)知我意@@@
時(shí)間:
2020-4-4 12:18
標(biāo)題:
51單個(gè)舵機(jī)精確控制程序
舵機(jī)控制
#include <12c5a.H> //STC12C5A系列單片機(jī)
unsigned char count; //0.5毫秒計(jì)數(shù)
//PWM控制
sbit jia =P1^6; //測(cè)試加
sbit jan =P1^5; //測(cè)試減
unsigned char jd; //角度控制
sbit pwm8=P0^1;
sbit pwm7=P1^1;
sbit pwm6=P2^1;
sbit pwm5=P2^0;
sbit youyan=P3^5;
sbit zuoyan=P3^7;
sbit zuojiao=P1^7;
sbit youjiao=P1^2;
sbit zuojiao2=P1^6;
sbit youjiao2=P1^0;
sbit pwm4=P0^4;
sbit pwm3=P1^4;
sbit pwm2=P3^4;
sbit pwm1=P2^4;
uint16 pwm[9]={1500,1500,1500,1500,1500,1500,1500,1500,1500}; //定時(shí)器取定時(shí)值從這里取
/**************************************************************************************************
函數(shù)名:delay(uint16 time)
功能: 軟件延時(shí)函數(shù)
參數(shù): time 定時(shí)值,其大小與延時(shí)長(zhǎng)短成正比
備注:
/***************************************************************************************************/
void delay(uint16 time)
{
uint16 i;
uint16 j;
for(i=0;i<1000;i++)
for(j=0;j<time;j++);
}
/**************************************************************************************************
函數(shù)名:timer_init()
功能: 定時(shí)器初始化函數(shù)
備注: 1T
/***************************************************************************************************/
void Timer_init()
{
EA=1; //開(kāi)總中斷
AUXR|=0xC0; //T0,T1工作在1T
TMOD|= 0x11; //T0工作在方式1,16位
ET0 = 1; //開(kāi)定時(shí)器0中斷
}
/**************************************************************************************************
函數(shù)名:timer0(uint32 us)
功能: 定時(shí)器0定時(shí)函數(shù)
參數(shù): us,毫秒。 精確定時(shí)。
備注: 晶振12M,工作模式1T
/***************************************************************************************************/
void Timer0(uint32 us)
{
uint32 valu;
valu=us*12; //工作在1T,最大定時(shí)時(shí)間2700us
valu=valu;
valu=0xffff-valu; //
TH0=valu>>8;
TL0=(valu<<8)>>8;
TR0 = 1; //T0開(kāi)始工作
}
/**************************************************************************************************
函數(shù)名:T0zd(void) interrupt 1
功能: 定時(shí)器0中斷函數(shù)
備注: 控制8個(gè)舵機(jī)
/***************************************************************************************************/
void T0zd(void) interrupt 1
{
static uint8 i=1;
switch(i) //
{
case 1:
{
pwm1=1;
Timer0(pwm[1]); //定時(shí)
} break;
case 2:
{
pwm1=0; //pwm1變低
Timer0(2500-pwm[1]);// 定時(shí)
} break;
case 3:
{
pwm2=1; //pwm2變高
Timer0(pwm[2]);// 定時(shí)時(shí)常為pwm[2]
} break;
case 4:
{
pwm2=0; //pwm2變低
Timer0(2500-pwm[2]);// 定時(shí)時(shí)常為pwm[2]
} break;
case 5:
{
pwm3=1; //pwm3變高
Timer0(pwm[3]);// 定時(shí)時(shí)常為pwm[3]
} break;
case 6:
{
pwm3=0; //pwm3變低
Timer0(2500-pwm[3]);// 定時(shí)
} break;
case 7:
{
pwm4=1; //pwm4變高
Timer0(pwm[4]);// 定時(shí)
} break;
case 8:
{
pwm4=0; //pwm4變低
Timer0(2500-pwm[4]);// 定時(shí)
} break;
case 9:
{
pwm5=1; //pwm5變高
Timer0(pwm[5]);// 定時(shí)
} break;
case 10:
{
pwm5=0; //pwm5變低
Timer0(2500-pwm[5]);// 定時(shí)
} break;
case 11:
{
pwm6=1; //pwm6變高
Timer0(pwm[6]);// 定時(shí)
} break;
case 12:
{
pwm6=0; //pwm6變低
Timer0(2500-pwm[6]);// 定時(shí)
} break;
case 13:
{
pwm7=1; //pwm7變高
Timer0(pwm[7]);// 定時(shí)
} break;
case 14:
{
pwm7=0; //pwm7變低
Timer0(2500-pwm[7]);// 定時(shí)
} break;
case 15:
{
pwm8=1; //pwm8變高
Timer0(pwm[8]);// 定時(shí)
} break;
case 16:
{
pwm8=0; //pwm8變低
Timer0(2500-pwm[8]);// 定時(shí)
i=0;
} break;
default:break;
}
i++;
}
void keyscan() //測(cè)試按鍵掃描
{
if(jia==0)
{
if(jia==0)
{
pwm[1]=pwm[1]+3;
if(pwm[1]>=250)
pwm[1]=250;
delay(40);
}
}
if(jan==0)
{
if(jan==0)
{
pwm[1]=pwm[1]-3;
if(pwm[1]<=20)
pwm[1]=20;
delay(40);
}
}
}
void main()
{
P0M1=0; //設(shè)置P口為強(qiáng)推免輸出模式,下同
P0M0=0XFF;
P2M1=0;
P2M0=0XFF;
P3M1=0;
P3M0=0XFF;
P4M1=0;
P4M0=0XFF;
P5M1=0;
P5M0=0XFF;
P4SW|=0X70;
Timer_init();
Timer0(32);
delay(40);
pwm[1]=110;
while(1)
{
keyscan(); //持續(xù)監(jiān)測(cè)按鍵狀態(tài)
}
}
復(fù)制代碼
舵機(jī)精確控制.7z
2020-4-4 12:17 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
22.05 KB, 下載次數(shù): 22, 下載積分: 黑幣 -5
作者:
admin
時(shí)間:
2020-4-7 15:54
本帖需要重新編輯補(bǔ)全電路原理圖,源碼,詳細(xì)說(shuō)明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1