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

正文內(nèi)容

單片機(jī)數(shù)字頻率計(jì)設(shè)計(jì)方案-資料下載頁

2025-04-25 13:35本頁面
  

【正文】 ] = 39。z39。//顯示fre=,這4個(gè)字符,因此循環(huán)4次進(jìn)行顯示 for(i = 0。i4。i++) { LCD_disp_char(i+0,1,character_1[i])。 }//由于之前存儲(chǔ)的頻率值,最高的幾位有可能是0,因此先判斷出哪位開始不為0再進(jìn)行顯示 for(i = 0。i10。i++) { if(character[i]!=0) break。 }//從不是0的那位開始顯示頻率 k = 10i2。 for(j = 0。jk。j++) { LCD_disp_num(4+j,1,character[i++])。 }//在頻率的值后面顯示HZ這個(gè)單位進(jìn)去 for(i = 5。i7。i++) { LCD_disp_char(j+4,1,character_1[i])。 j++。 }//根據(jù)頻率的范圍,周期單位分別是ns、us、ms、s//頻率大于1000000的時(shí)候,周期單位為ns,并根據(jù)頻率值計(jì)算出對(duì)應(yīng)的周期值 if(fre1000000) { character2[0]=(1000000000/fre)%1000/100。 character2[1]=(1000000000/fre)%100/10。 character2[2]=(1000000000/fre)%10。 for(i = 0。i4。i++) //顯示cyc LCD_disp_char(i,2,character_2[i])。 for(i=4。i7。i++) LCD_disp_num(i,2,character2[i4])。 for(i = 7。i9。i++) //顯示ns LCD_disp_char(i,2,character_2[i+2])。 }//頻率大于1000小于1000000的時(shí)候,周期單位為us,并根據(jù)頻率值計(jì)算出對(duì)應(yīng)的周期值 else if(fre1000) { character2[0]=(1000000/fre)%1000/100。 character2[1]=(1000000/fre)%100/10。 character2[2]=(1000000/fre)%10。 for(i = 0。i4。i++) //顯示cyc LCD_disp_char(i,2,character_2[i])。 for(i=4。i7。i++) LCD_disp_num(i,2,character2[i4])。 for(i = 7。i9。i++) //顯示us LCD_disp_char(i,2,character_2[i])。 }//頻率大于1小于1000的時(shí)候,周期單位為ms,并根據(jù)頻率值計(jì)算出對(duì)應(yīng)的周期值 else if(fre1) { character2[0]=(1000/fre)%1000/100。 character2[1]=(1000/fre)%100/10。 character2[2]=(1000/fre)%10。 for(i = 0。i4。i++) //顯示cyc LCD_disp_char(i,2,character_2[i])。 for(i=4。i7。i++) LCD_disp_num(i,2,character2[i4])。 for(i = 7。i9。i++) //顯示ms LCD_disp_char(i,2,character_2[i2])。 }//頻率等于1的時(shí)候,周期單位為s else if(fre==1) { for(i = 0。i4。i++) //顯示cyc LCD_disp_char(i,2,character_2[i])。 LCD_disp_char(4,2,39。139。)。 LCD_disp_char(5,2,39。s39。)。 }//沒有輸入頻率信號(hào)的時(shí)候,默認(rèn)顯示cyc=Ns else { for(i = 0。i4。i++) //顯示cyc LCD_disp_char(i,2,character_2[i])。 LCD_disp_char(4,2,39。N39。)。 LCD_disp_char(5,2,39。s39。)。 }}//******************************************************************************************//系統(tǒng)主程序//******************************************************************************************void main(){ unsigned char i。 //定義i變量方便后面調(diào)用 LCD_init()。 //應(yīng)初始化 timer_init()。 //定時(shí)/計(jì)數(shù)器初始化//顯示fre=這4個(gè)字符 for(i = 0。i4。i++) { LCD_disp_char(i+0,1,character_1[i])。 }//進(jìn)入死循環(huán),不斷的刷新顯示最近測(cè)到的頻率和周期,每一秒刷新一次 while(1) { dis_num()。 //顯示 delay_1s()。 //延時(shí)一次 } }//定時(shí)器初始化設(shè)置void timer_init(void) //定時(shí)/計(jì)數(shù)器初始化{ TMOD=0x66。 //計(jì)數(shù)器0工作工作方式2,自動(dòng)重裝初值 TH0=0。 //計(jì)數(shù)器初值為0 TL0=0。 TR0=1。 //計(jì)數(shù)器開始計(jì)數(shù) ET0=1。 //打開計(jì)數(shù)器0中斷 TH1=0。 //計(jì)數(shù)器初值為0 TL1=0。 TR1=1。 //計(jì)數(shù)器開始計(jì)數(shù) ET1=1。 //打開計(jì)數(shù)器0中斷 RCAP2H=(6553662500)/256。 //在程序初始化的時(shí)候給RCAP2L和RCAP2H賦值, RCAP2L=(6553662500)%256。 //TH2和TL2將會(huì)在中斷產(chǎn)生時(shí)自動(dòng)使TH2=RCAP2H,TL2=RCAP2L。 TH2=RCAP2H。 // TL2=RCAP2L。 ET2=1。 //打開定時(shí)器2中斷 TR2=1。 //定時(shí)器2開始計(jì)時(shí) EA=1。 //開總中斷} ////******************************************************************************************//定時(shí)器中斷函數(shù),每16次執(zhí)行一次頻率計(jì)算(剛好是一秒),先計(jì)算分頻后的頻率//如果100分頻后的頻率少于2000(則分頻前頻率少于200K),然后切換通道直接計(jì)算分頻前的頻率//其中count1是分頻后的計(jì)數(shù)的數(shù)值,count0是分頻后的計(jì)數(shù)的數(shù)值//******************************************************************************************void timer2(void) interrupt 5 //定時(shí)器2中斷(){ double temp。 //定義一個(gè)變量方便后面調(diào)用, time++。 TF2=0。 //定時(shí)器2的中斷標(biāo)志位TF2不能夠由硬件清零,所以要在中斷服務(wù)程序中將其清零 if (time==16) //定時(shí)1s時(shí)間到 { time=0。 //計(jì)時(shí)清0 EA=0。 //關(guān)中斷 fre=(long)count1*256+TL1。 //count*256強(qiáng)制轉(zhuǎn)換成long型,否則將不產(chǎn)生進(jìn)位先判斷分頻后的 FLAG = 0。 if(fre2000)//200K之后讀取分頻后的頻率 { fre = (long)count*256+TL0。 FLAG = 1。 } if(!FLAG) { temp = (double)fre/。 //fre = fre + temp。 //補(bǔ)償 fre = fre *100。//多少分頻乘多少 }//清零計(jì)數(shù)器0計(jì)數(shù) TL0=0。 TH0=0。 TL1=0。 TH1=0。 count=0。 //清零計(jì)數(shù)器0計(jì)數(shù) count1=0。 EA=1。 //開中斷 }} //void timer0(void) interrupt 1 //計(jì)數(shù)器0中斷 ,對(duì)分頻前的數(shù)據(jù)進(jìn)行計(jì)數(shù){ count++。} //void timer1(void) interrupt 3 //計(jì)數(shù)器1中斷,對(duì)分頻后的數(shù)據(jù)進(jìn)行計(jì)數(shù){ count1++。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1