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

正文內(nèi)容

基于at89s52單片機(jī)的勵(lì)磁調(diào)節(jié)器的軟件設(shè)計(jì)-資料下載頁

2025-08-05 22:52本頁面
  

【正文】 。PC8255=0x08。P1=0x80。PC8255=0x00。P1=0x00。delayms(3)。PC8255=0x04。P1=tab[ad_data2]。 //送十位數(shù)顯示;PC8255=0x00。P1=0x00。PC8255=0x08。P1=0x40。PC8255=0x00。P1=0x00。delayms(3)。PC8255=0x04。P1=tab[ad_data1]。 //送百位數(shù)顯示;PC8255=0x00。P1=0x00。PC8255=0x08。P1=0x20。PC8255=0x00。P1=0x00。delayms(3)。PC8255=0x04。P1=tab1[phase]。 //送相位顯示;PC8255=0x00。P1=0x00。PC8255=0x08。P1=0x10。PC8255=0x00。P1=0x00。delayms(3)。}}/*勵(lì)磁電流顯示*/void display_I2() {uchar k3。ad_data1=(ad_show*80/51)/100。 //求百位;ad_data2=(ad_show*80/51)%100/10。 //求十位;ad_data3=(ad_show*80/51)%100%10。 //求個(gè)位;COM8255=0x80。for(k3=0。k310。k3++){PC8255=0x01。PB8255=tab[ad_data3]。 //送小數(shù)點(diǎn)后第二位顯示;PC8255=0x00。PB8255=0x00。PC8255=0x02。PB8255=0x08。PC8255=0x00。PB8255=0x00。delayms(3)。PC8255=0x01。PB8255=tab[ad_data2]。 //送小數(shù)點(diǎn)后第一位顯示;PC8255=0x00。PB8255=0x00。PC8255=0x02。PB8255=0x04。PC8255=0x00。PB8255=0x00。delayms(3)。PC8255=0x01。PB8255=tab[ad_data1]+0x80。 //送個(gè)位數(shù)顯示;PC8255=0x00。PB8255=0x00。PC8255=0x02。PB8255=0x02。PC8255=0x00。PB8255=0x00。delayms(3)。PC8255=0x01。PB8255=tab1[phase]。 //送相位顯示;PC8255=0x00。PB8255=0x00。PC8255=0x02。PB8255=0x01。PC8255=0x00。PB8255=0x00。delayms(3)。}}/*勵(lì)磁電壓顯示*/void display_V2() {uchar k4。ad_data1=(ad_show*47/20)/100。 //求百位;ad_data2=(ad_show*47/20)%100/10。 //求十位;ad_data3=(ad_show*47/20)%100%10。 //求個(gè)位;COM8255=0x80。for(k4=0。k410。k4++){PC8255=0x01。PB8255=tab[ad_data3]。 //送小數(shù)位顯示;PC8255=0x00。PB8255=0x00。PC8255=0x02。PB8255=0x80。PC8255=0x00。PB8255=0x00。delayms(3)。PC8255=0x01。PB8255=tab[ad_data2]+0x80。 //送個(gè)位數(shù)顯示;PC8255=0x00。PB8255=0x00。PC8255=0x02。PB8255=0x40。PC8255=0x00。PB8255=0x00。delayms(3)。PC8255=0x01。PB8255=tab[ad_data1]。 //送十位數(shù)顯示;PC8255=0x00。PB8255=0x00。PC8255=0x02。PB8255=0x20。PC8255=0x00。PB8255=0x00。delayms(3)。PC8255=0x01。PB8255=tab1[phase]。 //送相位顯示;PC8255=0x00。PB8255=0x00。PC8255=0x02。PB8255=0x10。PC8255=0x00。PB8255=0x00。delayms(3)。}}/**//*數(shù)據(jù)采集處理部分AD的八路采集轉(zhuǎn)換,前六路是ABC相電流電壓數(shù)據(jù)轉(zhuǎn)換通道,后兩路是勵(lì)磁電流電壓數(shù)據(jù)轉(zhuǎn)換通道。轉(zhuǎn)換開始從0通道輪流轉(zhuǎn)換,由于AD所用的時(shí)鐘頻率是1MHZ,轉(zhuǎn)換時(shí)間為64us左右。*//**//*AD初始化*/void adintil() { eoc=1。 st=1。 oe=1。 p2_6=1。}/*AD采集*/void ad0809(void) //{uchar i。m=0。COM8255=0x80。 //信號(hào)保持PC8255=0x00。for(i=0。i8。i++){PA8255=td[i]。oe=1。st=1。st=0。st=1。delay80us()。 //AD時(shí)鐘周期為1MHZ,所以轉(zhuǎn)換時(shí)間為64us左右while(eoc)。oe=0。x[m]=P0。oe=1。m++。}PC8255=0xf0。 //信號(hào)不保持,為下次采集做準(zhǔn)備;PA8255=0xf0。}void adproc1() //數(shù)據(jù)處理1(耗時(shí)300us左右){uchar i,adw。for(i=0。i8。i++) {if(i=5){adw=x[i]。xad[i][n]=adw*adw。 //采集后,取平方}elsexad[i][n]=x[i]。 }}/*數(shù)據(jù)處理2*/void adproc2() {uchar i,j。uint sow1,sow2。ulong sow。show2[0]=0。show2[1]=0。for(i=0。i8。i++){for(j=0。j8。j++){show1[i]=0。if(i=5) {show1[i]+=xad[i][j]。 //求有效值; } elseshow2[i6]+=xad[i][j]。}sow=show1[i]。show1[i]=sqrt(sow3)。}sow1=show2[0]。sow2=show2[1]。show2[0]=sow13。show2[1]=sow23。}/*顯示函數(shù)*/void display1() {phase=b。ad_show=show1[b]。switch(b) {case 0: display_I1()。 break。case 1: display_V1()。 break。case 2: display_I1()。 break。case 3: display_V1()。 break。case 4: display_I1()。 break。case 5: display_V1()。 break。default :break。 }display2()。}void display2(){phase=b%2+6。ad_show=show2[b%2]。switch(b%2) {case 0: display_I2()。 break。case 1: display_V2()。 break。default :break。 }}/*PID計(jì)算*/void pid_js() {Ug[2]=show1[1]1。 //當(dāng)前采集的電壓Uent1=UsetUg[2]。 //本次電壓偏差Uent2=UsetUg[1]。 //上次電壓偏差Uent3=UsetUg[0]。 //上上次電壓偏差e=ke*Uent1。 //偏差模糊化e1=(int)e。if(e=0) {if(ee1=) e1+=1。} else {if(e1e=) e1=1。}ec=kec*(Uent1Uent2)/。 //偏差變化率模糊化ec1=(int)ec。if(ec=0) {if(ecec1=) ec1+=1。} else {if(ec1ec=) ec1=1。}dkp=dKps[ec1+3][e1+3]。 //查輸出規(guī)制表dki=dKis[ec1+3][e1+3]。dkd=dKds[ec1+3][e1+3]。kkp=ekp*dkp+kp。kki=eki*dki+ki。kkd=ekd*dkd+kd。}/*控制角的計(jì)算*/void angleoprcoess() {pid_js()。 //PID 計(jì)算if(show1[1]=termvq) //欠勵(lì)限制{angle=180。}else {if(show1[1]=termvg) //過勵(lì)、強(qiáng)勵(lì)限制 {angle=0。}else/*PID計(jì)算*/{dU=kkp*(Uent1Uent2)+kki*Uent1+kkd*(Uent1Uent2Uent2+Uent3)。 Ul=Ug1+dU。 angle=180*(acos(*Ul/Elab))/。 Ug[0]=Ug[1]。 Ug[1]=Ug[2]。 Ug1=Ul。} }}/*判斷是否需要逆變停車*/void contr() {contra=0。 //不需要if(show2[0]=exci||show2[1]=excv||time=freq||show1[1]=termv||show1[1]==0)contra=1。 //只要滿足上面任一條件都需要逆變停車}/*信號(hào)周期采集計(jì)算單位us*/void freqjs() {uchar i。TMOD=0x0D。TL0=0x00。TH0=0x00。do{}while(int1==1)。 //當(dāng)int1為低電平時(shí)執(zhí)行下面語句TR0=1。while(int1==0)。TR0=0。i=TH0。time=i*256+TL0。time=time1。}/*第一組晶閘管觸發(fā)*/void pulseout1() {if(contra==1) {angle=150。 //取逆變角為30176。 angle0=angle+30。 } else angle0=angle+30。while(angle060) //將第一組脈沖觸發(fā)時(shí)間控制在1/6周期內(nèi){angle0=60。} time1=time*(angle0/360)。time2=8192time1。TMOD=0x00。 //定時(shí)器T1,工作模式0TH1=time2/256。 //設(shè)定定時(shí)器1的定時(shí)時(shí)間TL1=time2%256。TR1=1。while(!TF1)。 //判斷定時(shí)器1是否到時(shí)TR1=0。pulseout2()。}void pulseout2() //五組脈沖觸發(fā) {uchar i。time0=8192time/6。TMOD=0x00。 //定時(shí)器T0,工作模式0TH0=time0/256。 //設(shè)定定時(shí)器0的定時(shí)時(shí)間TL0=time0%256。TR0=1。ET0=1。EA=1。i=1。if(angle=0amp。amp。angle=30)P2=pulsea[0]。else if(angle30amp。amp。angle=90)P2=pulsec[0]。else P2=pulseb[0]。delayms(1)。 //脈寬1mswhile(1) {do{}while(!TF0)。 //判斷定時(shí)器0是否到時(shí)if
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1