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

正文內(nèi)容

基于單片機(jī)的太陽能充電器的設(shè)計(jì)畢業(yè)論文-資料下載頁

2025-06-27 19:40本頁面
  

【正文】 下,終于完成了多用太陽能手機(jī)充電器的設(shè)計(jì)和調(diào)試。從確定設(shè)計(jì)題目的那天開始,指導(dǎo)老師就開始不斷地給我提供幫助,從最初的方案確定,到元器件的選擇,電路的修改和調(diào)試,程序的編寫和修改,以及論文的制作等等,很多都是涉及到細(xì)節(jié)的問題;正是由于指導(dǎo)老師無私幫助,我才得以完成設(shè)計(jì),在此,對(duì)指導(dǎo)老師的幫助表示感謝!在做畢業(yè)設(shè)計(jì)的同時(shí)也是一個(gè)學(xué)習(xí)和成長的過程,在前期的單片機(jī)課程的學(xué)習(xí)過程中,理論知識(shí)學(xué)的不好,很多地方不懂,應(yīng)用起來很難。本次畢業(yè)設(shè)計(jì)讓我學(xué)到的知識(shí)不僅僅是書本上的專業(yè)知識(shí),更讓我學(xué)會(huì)了做一件事情應(yīng)具備的思想和對(duì)事情本身應(yīng)有的看法。這次設(shè)計(jì)對(duì)我來說卻是任務(wù)很大,開始沒有一點(diǎn)頭緒,就看老師提供的資料,再后來就是看看別人的設(shè)計(jì)是怎么做的,然后根據(jù)自己的課題準(zhǔn)備相關(guān)的內(nèi)容。隨著設(shè)計(jì)的進(jìn)行,我的心情也逐漸發(fā)生變化,剛開始就知道看一些資料,沒有想太多;再后來看到一些有用的東西想拿來用不知道能不能用,不知道仿真;再后來主要部分電路仿真沒問題,但是單片機(jī)電路接線有問題;再后來程序調(diào)試有問題,功能實(shí)現(xiàn)不了,加上畢業(yè)設(shè)計(jì)答辯時(shí)間越來越,我十分著急;隨著努力的繼續(xù),程序開始能實(shí)現(xiàn)最簡單的功能,這時(shí)候我明白了堅(jiān)持的重要。畢業(yè)設(shè)計(jì)進(jìn)入尾聲,在此深深的感謝我的指導(dǎo)老師和幫助我的同學(xué)。河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 附錄 A32附錄 A +m為fecbagd?s河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 附錄 B33附錄 B 整體程序 include define uchar unsigned chardefine uint unsigned int sbit P3_3=P3^3。 //開始充電 sbit P3_4=P3^4。 //電壓切換 sbit PWM=P3^5。 sbit EOC=P3^1。 //定義 ADC0808 的控制引腳/ sbit OE=P3^0。 sbit START=P3^2。 sbit P3_6=P3^6。 sbit P3_7=P3^7。 sbit wela=P2^1。 sbit dula=P2^0。 uchar time=0,time1=0。 uchar period=40。 uchar high=6,high1=12。 uchar th0=0。 uchar tl0=1。 uchar i=0,j=0。 uint x,z,n。 uchar code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}。 //uchar n=0。 //uchar flag1。 //unsigned char volatile g_delay_count。 uchar disp[4]={0,0,0,0}。 //顯示數(shù)據(jù),保存段碼,四位 ///================================/void delay(uchar z) //100us 延時(shí)子程序/{ while(z)。} //==============================/void display() //定義顯示子函數(shù)/ 可以使用鎖存器實(shí)現(xiàn){for(n=0。n4。n++){P0=0x00。河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 附錄 B34dula=1。 P0 =disp[1]。 //顯示第一位小數(shù)dula=0。wela=1。P0=0xfb。wela=0。delay(2)。P0=0x00。dula=1。P0=disp[2]。 //顯示第二位小數(shù) dula=0。wela=1。P0=0xfd。wela=0。delay(2)。P0=0x00。dula=1。 P0 =disp[3]。 //顯示第三位小數(shù)dula=0。wela=1。P0=0xfe。wela=0。delay(2)。P0=0x00。dula=1。 P0 =disp[0]+0x80。 dula=0。wela=1。P0=0xf7。wela=0。delay(2)。}}//===============================/uint ADC0808() //定義 ADC0808 讀入數(shù)據(jù)子函數(shù),并通過函數(shù)返回/{河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 附錄 B35 uchar d 。 uchar value。 START=1。START=0。 //啟動(dòng) ADC0808,開始 A/D 轉(zhuǎn)換/ while(!EOC)。 //等待 ADC0808,轉(zhuǎn)換結(jié)束,即 EOC 為高電平/ OE=1。 if(time1high1) {d=P1。 //讀入數(shù)據(jù)/ if(high1==16) { value=*d。 } else if(high1==20) { value=*d。 } else if(high1==24) { value=*d。 } else if(high1==28) { value=*d。 } else if(high1==32) { value=*d。 } else if(high1==36) { value=*d。 }} //允許 ADC0808 輸出數(shù)據(jù) / if(timehigh) {d=P1。 //讀入數(shù)據(jù)/ if(high==8) { value=*d。 } else if(high==10) { value=*d。 } else if(high==12) {河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 附錄 B36 value=*d。 } else if(high==14) { value=*d。 } else if(high==16) { value=*d。 } else if(high==18) { value=*d。 } else if(high==20) { value=*d。 } else if(high==22) { value=*d。 } else if(high==24) { value=*d。 } else if(high==26) { value=*d。 } else if(high==28) { value=*d。 } else if(high==30) { value=*d。 } else if(high==32) { value=*d。 } else if(high==34) {河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 附錄 B37 value=*d。 } else if(high==36) { value=*d。 }} OE=0。 //禁止 ADC0808 數(shù)據(jù)輸出/ return value。 //返回 A/D 轉(zhuǎn)換數(shù)據(jù)/} //=================================/void convert(uint x) //定義顯示碼轉(zhuǎn)換子函數(shù)/{ uchar code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}。 //定義 0~9 顯示碼/ x=x**5000。 // 處理數(shù)據(jù)使其在 0~5v 范圍內(nèi)/ disp[3]=dispcode[x%10]。 //第三位小數(shù),最低位/ disp[2]=dispcode[x/10%10]。 //第二位小數(shù)/ disp[1]=dispcode[x/100%10]。 //第一位小數(shù)/ disp[0]=dispcode[x/1000]。 //整數(shù)部分/} void timer0() interrupt 1 using 1 { TH0=0xff。 /*定時(shí)器初值重裝載*/ TL0=0xf6。 time++。 if(time==high) /*高電平持續(xù)時(shí)間結(jié)束,變低*/ { PWM=th0。 /*經(jīng)過反相器反相*/} else if(time==period) /*周期時(shí)間到,變高*/ { time=0。 PWM=tl0。 /*經(jīng)過反相器反相*/ } } void timer1() interrupt 3 using 3 { TH1=0xff。 /*定時(shí)器初值重裝載*/ TL1=0xf6。 time1++。 if(time1==high1) /*高電平持續(xù)時(shí)間結(jié)束,變低*/ { PWM=th0。 /*經(jīng)過反相器反相*/河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 附錄 B38} else if(time1==period) /*周期時(shí)間到,變高*/ { time1=0。 PWM=tl0。 /*經(jīng)過反相器反相*/ } } void main() { OE=0。 //ADC0808 初始化/ START=0。 EOC=1。 //將單片機(jī)的引腳(EOC 輸入端)置成輸入狀態(tài) /P3_3=0。 P3_4=0。 P3_6=1。P3_7=1。 TMOD=0x11。 /*定時(shí)器 0 方式 1*/ TH0=0xff。 /*定時(shí)器裝載初值,設(shè)置脈沖信號(hào)的占空比為 1/5*/ TL0=0xf6。 ET0=1。// TR0=1。 TH1=0xff。 /*定時(shí)器裝載初值,設(shè)置脈沖信號(hào)的占空比為 1/5*/ TL1=0xf6。 ET1=1。// TR1=1。 while(1) { if(P3_3==1) { EA=1。 /*開 CPU 中斷*/ TR0=1。 TR1=0。 P3_4=0。du: for(i=0。i14。i++) { P3_7=1。 high1=0。high=high+2。 for(j=0。j5。j++){ P3_6=0。convert(ADC0808())。 //每 1s 啟動(dòng) A/D 轉(zhuǎn)換一次,把讀入數(shù)據(jù)轉(zhuǎn)換為顯示數(shù)據(jù)/河南城建學(xué)院本科畢業(yè)設(shè)計(jì)(論文) 附錄 B39 display()。delay(10)。 // 調(diào)用顯示子函數(shù)/} } if(high==34) { P3_6=1。 P3_7=0。 delay(100)。 TR0=0。 } } if(P3_4==1){ TR0=0。 TR1=1。P3_6=1。 EA=1。 high1=high1+4。 if(high1==40) high1=16。 if(P3_3==1) {P3_7=1。 goto du。 }while(P3_4!=0) {}。convert(ADC0808())。 //每 1s 啟動(dòng) A/D 轉(zhuǎn)換一次,把讀入數(shù)據(jù)轉(zhuǎn)換為顯示數(shù)據(jù)/ display()。 // 調(diào)用顯示子函數(shù)/ } convert(ADC0808())。 //每 1s 啟動(dòng) A/D 轉(zhuǎn)換一次,把讀入數(shù)據(jù)轉(zhuǎn)換為顯示數(shù)據(jù)/ display()。 // 調(diào)用顯示子函數(shù)/ }
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1