freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

直流電動機調(diào)速器硬件設(shè)計-資料下載頁

2025-06-30 07:42本頁面
  

【正文】 char LEDMAP1[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}。//共陽極LED數(shù)碼管表(不帶小數(shù)點)const unsigned char LEDMAP2[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10}。//共陽極LED數(shù)碼管表( 帶小數(shù)點)unsigned int GET1000,GET100,GET10,GET1。//取位變量unsigned long int DIRECTION 。//電機轉(zhuǎn)動方向變量unsigned int KEYVALUE。//取速度以預(yù)值unsigned int MKTIMER。//定時變量float Proportion_value=。//比例常數(shù)float Integral_value=。 // 積分常數(shù)int s_delta_value。 // 差值之和 /////////////////////////////////void DELAY1MS(int i)。//延時void DISPLAY(unsigned int)。//顯示void CHO_BIT()。//選位void FIT_BIT()。//置位void GET_BIT(unsigned int c)。//取值void MOT_RISE( )。//升速void MOT_FALL( )。//降速void MOT_REVERSE()。//反向void SPEEDSURE( )。//確定速度void MOT_INITIAL()。//電機初始化 /////////////////////////////////void main(void){ WDTCN=0XDE。 WDTCN=0XAD。 XBR0=0x10。//管腳分配 XBR1=0x1e。 XBR2=0x40。 P1MDIN=0x00。//P1口全設(shè)為模擬輸入 P1MDOUT=0x00。 OSCICN=0X87。 CKCON=0X18。//定時器計數(shù)器設(shè)置 TMOD=0X16。 PCA0MD=0x00。//PAC0為系統(tǒng)時鐘的12分頻 PCA0CN=0x40。 PCA0CPM0=0X02。 PCA0CPM1=0X02。 EA=1。//開中斷 EX0=1。 EX1=1。 ET1=1。 IT0=1。//外中斷0與1為低電平觸發(fā) IT1=1。 //TR0=1。 //TR1=1。 P74OUT=0x00。 // MOT_INITIAL()。 while(1) { } }//////////////////////////////// void MOT_INITIAL()//電機初始化{ PCA0CPL1=0XFF。 PCA0CPH1=0XFF。 PCA0CPL0=0X55。 PCA0CPH0=0X55。}/////////////////////////////void PID_main( int Setvalue){ int PID,delta。 float PID1。 delta=SetvalueSPEEDREAD。 s_delta_value+=delta。 PID1=Proportion_value*delta+Integral_value*s_delta_value。 PID=floor(PID1)。 if(DIRECTION==0) { PCA0CPH0=PID。 } else { PCA0CPH1=PID。 }}/////////////////////////////void MOT_REVERSE(){ int a。 DIRECTION++。 DIRECTION=DIRECTION%2。 if(DIRECTION==0) { a=PCA0CPH1。 PCA0CPH1=0XFF。 DELAY1MS(400)。 PCA0CPH0=a。 } if(DIRECTION==1) { a=PCA0CPH0。 PCA0CPH0=0XFF。 DELAY1MS(400)。 PCA0CPH1=a。 }}//////////////////////////////////void DISPLAY(unsigned int d)//顯示程序{ int a1000,a100,a10,a1。 a1000=d/1000。 a100=(d%1000)/100。 a10=(d%100)/10。 a1=d%10。 if(DIRECTION==0) { P6=0x01。 P5=LEDMAP1[a1000]。 DELAY1MS(5)。 P6=0X02。 P5=LEDMAP1[a100]。 DELAY1MS(5)。 P6=0x04。 P5=LEDMAP1[a10]。 DELAY1MS(5)。 P6=0x08。 P5=LEDMAP1[a1]。 DELAY1MS(5)。 } if(DIRECTION==1) { P6=0x01。 P5=LEDMAP2[a1000]。 DELAY1MS(5)。 P6=0x02。 P5=LEDMAP2[a100]。 DELAY1MS(5)。 P6=0x04。 P5=LEDMAP2[a10]。 DELAY1MS(5)。 P6=0x08。 P5=LEDMAP2[a10]。 DELAY1MS(5)。 }}//////////////////////////////////// void CHO_BIT( )//選位函數(shù){ CHOBIT++。 if(CHOBIT==4)CHOBIT=0。 if(CHOBIT==0) { P6=0x01。 P5=0xc0。//輸入零 } if(CHOBIT==1) { P6=0x02。 P5=0xc0。//輸入零 } if(CHOBIT==2) { P6=0x04。 P5=0xc0。//輸入零 } if(CHOBIT==3) { P6=0x08。 P5=0xc0。//輸入零 }}//////////////////////////////////void GET_BIT(unsigned int c)//取位函數(shù){ P5=LEDMAP1[c]。 if(CHOBIT==0) GET1000=c。 if(CHOBIT==1) GET100=c。 if(CHOBIT==2) GET10=c。 if(CHOBIT==3) GET1=c。}/////////////////////////////////void FIT_BIT( )//置位函數(shù)及把置位數(shù)提取{ FITBIT++。 if(FITBIT==10)FITBIT=0。 switch(FITBIT) { case 0:GET_BIT(FITBIT)。break。 case 1:GET_BIT(FITBIT)。break。 case 2:GET_BIT(FITBIT)。break。 case 3:GET_BIT(FITBIT)。break。 case 4:GET_BIT(FITBIT)。break。 case 5:GET_BIT(FITBIT)。break。 case 6:GET_BIT(FITBIT)。break。 case 7:GET_BIT(FITBIT)。break。 case 8:GET_BIT(FITBIT)。break。 case 9:GET_BIT(FITBIT)。break。 }}/////////////////////////////////////void MOT_RISE()//升速函數(shù){ KEYVALUE+=5。}//////////////////////////////void MOT_FALL( )//降速函數(shù){ KEYVALUE=5。}/////////////////////////////// void DELAY1MS(int k)//延時程序{ int i,j。 for(i=0。ik。i++) for(j=0。j500。j++)。}////////////////////////////////void INT0(void) interrupt 0//外部中斷0{ DELAY1MS(2)。 GETKEY1=P3。 DELAY1MS(20)。 GETKEY1amp。=0X03。 switch(GETKEY1) { case 0x02:CHO_BIT()。break。//進行選位 case 0x01:FIT_BIT()。break。//進行置位 } }//////////////////////void INT_T1() interrupt 3//定時中斷{ int i。 MKTIMER++。 if(MKTIMER=20) { TR1=1。 TF1=0。 } if(MKTIMER20) { SPEEDREAD=TL0。 PID_main(KEYVALUE)。 TL0=0X00。 for(i=0。i100。i++) DISPLAY(SPEEDREAD)。 TR1=1。 TF1=0。 }}////////////////////////////////void INT1(void) interrupt 2//外部中斷1{ DELAY1MS(2)。 GETKEY2=P3。 DELAY1MS(20)。 GETKEY2amp。=0X3C。 switch(GETKEY2) { case 0x38:SPEEDSURE()。break。//電機速度確定 case 0x34:MOT_RISE()。break。//電機升速 case 0x2c:MOT_FALL()。break。//電機降轉(zhuǎn) case 0x1c:MOT_REVERSE()。break。//電機正反轉(zhuǎn) }}///////////////////////////////void SPEEDSURE( ){ int i。 KEYVALUE=GET1000*1000+GET100*100+GET10*10+GET1。 for(i=0。i500。i++) DISPLAY(KEYVALUE)。 MOT_INITIAL()。 TR0=1。 TR1=1。}
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1