智能開(kāi)關(guān)電源設(shè)計(jì)_第1頁(yè)
智能開(kāi)關(guān)電源設(shè)計(jì)_第2頁(yè)
智能開(kāi)關(guān)電源設(shè)計(jì)_第3頁(yè)
智能開(kāi)關(guān)電源設(shè)計(jì)_第4頁(yè)
智能開(kāi)關(guān)電源設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、成績(jī)等級(jí)本科畢業(yè)設(shè)計(jì)題 目 智能開(kāi)關(guān)電源設(shè)計(jì) 學(xué) 院 工學(xué)院 專 業(yè) 自動(dòng)化 班 級(jí) 自動(dòng)化統(tǒng)本1101班 學(xué) 號(hào) 學(xué)生姓名 指導(dǎo)教師 完成日期 西安思源學(xué)院教務(wù)處制二一年五月中文摘要本畢業(yè)設(shè)計(jì)是由STC公司生產(chǎn)的一款低功耗、高性能的8位微控制器STC89C52單片機(jī)作為控制部分,采用 Buck串聯(lián)降壓電路, 運(yùn)用PFM脈沖頻率信號(hào)控制2SA1085三極管開(kāi)關(guān),ADC0804 A/D芯片,12864 LCD顯示器和鍵盤輸入,設(shè)計(jì)制作的一個(gè)輸出電壓為5V-24V可調(diào)的開(kāi)關(guān)電源系統(tǒng)。單片機(jī)輸出的方波控制Buck電路,通過(guò)電壓回路的反饋控制,將輸出電壓穩(wěn)壓到所需要的電壓值。STC89C52單片機(jī)通過(guò)

2、ADC0804芯片對(duì)輸出電壓進(jìn)行采樣,與設(shè)定值進(jìn)行比較,將處理的信號(hào)傳輸給電源模塊,改變電源模塊的內(nèi)部輸出電壓值,從而實(shí)現(xiàn)本設(shè)計(jì)輸出穩(wěn)定可調(diào)的電壓。關(guān)鍵詞: STC89C52單片機(jī) ADC0804 PFM脈沖頻率信號(hào) Buck電路AbstractThe design microcontroller system by STC89C52, adopts the Buck series Buck circuit, A PFM pulse frequency signal is used to control two sa1085 triode switch, A/D chip ADC0804, 1

3、2864 LCD display and keyboard input, design and production of an output voltage of 5 v - 24 v adjustable switching power supply system. Microcontroller output of square wave to control the Buck circuit, through the voltage feedback control loop, the output voltage regulated to the required voltage v

4、alue. STC89C52 single-chip microcomputer by ADC0804 chip output voltage sampling, compared with the set value, will deal with the signal transmission to the power supply module, change the internal output voltage value of power supply module, so as to realize the design of adjustable output stable v

5、oltage.Keywords:STC89C52CM ADC0804 PFM signal Buck circuit目錄1、緒論11.1引言11.2開(kāi)關(guān)電源簡(jiǎn)介12、開(kāi)關(guān)電源DC/DC電路設(shè)計(jì)思路32.1工作原理3脈沖頻率調(diào)制優(yōu)點(diǎn)32.2 開(kāi)關(guān)電源常見(jiàn)的拓?fù)浣Y(jié)構(gòu)簡(jiǎn)介3降壓斬波電路(Buck Chopper)3升壓斬波電路( Boost Chopper)4升降壓斬波電路(Boost-Buck Chopper)42.3 開(kāi)關(guān)電源DC/DC設(shè)計(jì)思路42.3.1 DC/DC基本設(shè)計(jì)方案42.4 DC/DC電路實(shí)現(xiàn)52.5 系統(tǒng)供電部分設(shè)計(jì)62.5.1 整流濾波電路設(shè)計(jì)72.5.2 浪涌電流電壓抑制電路

6、設(shè)計(jì)73、控制系統(tǒng)的設(shè)計(jì)思路93.1 控制系統(tǒng)的基本設(shè)計(jì)方案93.2 單片機(jī)模塊的設(shè)計(jì)103.2.1 STC89C52性能簡(jiǎn)介103.2.2 最小系統(tǒng)設(shè)計(jì)10時(shí)鐘電路設(shè)計(jì)113.3 A/D模塊設(shè)計(jì)11芯片介紹11芯片參數(shù)12各個(gè)引腳名稱及作用123.3.4 轉(zhuǎn)換原理133.4 接口電路的設(shè)計(jì)14按鍵接口電路設(shè)計(jì)143.4.2 顯示接口電路設(shè)計(jì)144、程序設(shè)計(jì)164.1 主程序流程圖的設(shè)計(jì)164.2 鍵盤掃描程序設(shè)計(jì)174.3 A/D程序設(shè)計(jì)185、仿真結(jié)果及分析195.1 Proteus仿真軟件195.2 設(shè)計(jì)仿真195.2.1 仿真實(shí)驗(yàn)一195.2.2 仿真實(shí)驗(yàn)二205.3仿真分析21參考文

7、獻(xiàn)22致 謝23附 錄23附錄一:系統(tǒng)整體原理圖24附錄二:系統(tǒng)仿真圖26附錄三:程序代碼27主程序:27鍵盤掃描子程序34LCD12864驅(qū)動(dòng)程序35智能開(kāi)關(guān)電源設(shè)計(jì)1、緒論1.1引言隨著電子技術(shù)迅速的發(fā)展,數(shù)字電路應(yīng)用領(lǐng)域逐步拓展,如今人們使用產(chǎn)品的數(shù)字化、智能化已成為人們追求的一種趨勢(shì),設(shè)備的價(jià)格、性能、穩(wěn)定性等備受人們的關(guān)注,尤其是對(duì)電子設(shè)備的在使用過(guò)程中的穩(wěn)定度和精密度最為關(guān)心。想要得到性能良好的電子設(shè)備,肯定離不開(kāi)穩(wěn)定且可靠的電源,想要得到壽命更長(zhǎng)設(shè)備,就需要開(kāi)關(guān)電源的穩(wěn)定性提高?;诖?,高穩(wěn)定性、高精度的開(kāi)關(guān)電源需求也越來(lái)越迫切。 眾所周知,生活中離不開(kāi)電源,并且在實(shí)際應(yīng)用中對(duì)電

8、壓高低、通電時(shí)間、電流大小等有著不同的要求,如今大家生活中所使用的直流電源輸出的精度和穩(wěn)定性都不是很高;在輸出電壓的改變上,傳統(tǒng)的開(kāi)關(guān)電源大多數(shù)都是采用指針式或者是數(shù)碼管來(lái)顯示電壓和電流,使用滑動(dòng)電阻改變電阻值進(jìn)而調(diào)整出所需要的電壓值及電流值。因滑動(dòng)電阻的阻值特性為非線性,如想要得到理想的輸出值,在調(diào)節(jié)時(shí)需要花費(fèi)一些時(shí)間,因此使用起來(lái)非常的不方便。所以,開(kāi)關(guān)電源不只是需要具備較好的輸出質(zhì)量,而且還需要具有一定的智能化和多功能,給生活帶來(lái)不同程度的便捷與高效。1.2開(kāi)關(guān)電源簡(jiǎn)介開(kāi)關(guān)電源是運(yùn)用電力電子技術(shù),通過(guò)控制三極管的打開(kāi)和關(guān)閉的時(shí)間比,達(dá)到穩(wěn)定輸出電壓的一種電源,本畢業(yè)設(shè)計(jì)的開(kāi)關(guān)電源是運(yùn)用脈

9、沖頻率調(diào)制PFM (Pulse frequency modulation)控制三極管的打開(kāi)和關(guān)閉的構(gòu)成,就開(kāi)關(guān)電源與線性電源相比而言,兩者的成本雖然都隨著輸出功率的逐步增加而增長(zhǎng),但是兩者成本的增長(zhǎng)速率各不相同。線性電源成本在某輸出功率點(diǎn)上,反而高于開(kāi)關(guān)電源,這點(diǎn)稱為成本反轉(zhuǎn)點(diǎn),隨著電力電子技術(shù)的發(fā)展和創(chuàng)新,使得開(kāi)關(guān)電源技術(shù)也在不斷地創(chuàng)新,這成本反轉(zhuǎn)點(diǎn)日益向低輸出電力端移動(dòng),這為開(kāi)關(guān)電源提供了廣闊的發(fā)展空間1。2、開(kāi)關(guān)電源DC/DC電路設(shè)計(jì)思路2.1工作原理 脈沖頻率調(diào)制的英文全稱為Pulse frequency modulation,縮寫為PFM,脈沖頻率調(diào)制是一種脈沖調(diào)制技術(shù),調(diào)制信號(hào)的頻

10、率隨著輸入信號(hào)幅值的變化而變化,但其占空比不變,由于調(diào)制信號(hào)通常為頻率變化的方波信號(hào),因此,PFM也叫做方波FM2。脈沖頻率調(diào)制優(yōu)點(diǎn)脈沖頻率調(diào)制相比較脈沖寬度調(diào)制主要優(yōu)點(diǎn)在于效率:在脈沖頻率和脈沖寬度調(diào)制的外圍電路一樣的基礎(chǔ)上,脈沖頻率調(diào)制的峰值效率與脈沖寬度調(diào)制的峰值效率相當(dāng),但是在峰值效率以前,脈沖頻率調(diào)制的效率遠(yuǎn)遠(yuǎn)高于脈沖寬度調(diào)制的效率,這就是脈沖頻率調(diào)制的主要優(yōu)勢(shì)。由于脈沖寬度調(diào)制電路中有放大器的影響,所以回路增益及其響應(yīng)速度受到了限制,但脈沖頻率調(diào)制的電路中沒(méi)有放大器,所以它具有有較快的響應(yīng)速度。2.2 開(kāi)關(guān)電源常見(jiàn)的拓?fù)浣Y(jié)構(gòu)簡(jiǎn)介降壓斬波電路(Buck Chopper) 三極管V受到

11、PFM波的控制,處于導(dǎo)通和截止的兩個(gè)狀態(tài),再經(jīng)過(guò)電感和電容的濾波,在R負(fù)載上得到穩(wěn)定的直流輸出電壓。該電路屬于降壓型電路,所以能夠達(dá)到論文要求的輸出電壓5-24V。如圖2-1所示:圖2-1 降壓斬波電路升壓斬波電路( Boost Chopper)升壓斬波電路原理與降壓斬波電路原理相類似,但是這個(gè)電路是升壓型電路。在三極管導(dǎo)通時(shí)電感儲(chǔ)能,截止時(shí)電感能量輸出。只有在電感繞制合理時(shí),才能達(dá)到論題要求的5-25V輸出電壓。如圖2-2所示:圖2-2 升降壓電路升降壓斬波電路(Boost-Buck Chopper)實(shí)際上此電路是在降壓斬波電路后接入了一個(gè)儲(chǔ)能電感,用電感的儲(chǔ)能來(lái)實(shí)現(xiàn)電能的輸出,但是此電路控

12、制復(fù)雜。如圖2-3所示:圖2-3 升降壓電路2.3 開(kāi)關(guān)電源DC/DC設(shè)計(jì)思路 DC/DC基本設(shè)計(jì)方案本畢業(yè)設(shè)計(jì)由電源、STC89C52單片機(jī)控制等幾部分構(gòu)成,如硬件系統(tǒng)框圖2-4所示:輸入濾波DC/DC變換輸出濾波電阻控制IC控制脈沖電壓反饋二極管微機(jī)調(diào)節(jié)信號(hào)給定電壓采樣-圖2-4 硬件系統(tǒng)框圖2.4 DC/DC電路實(shí)現(xiàn) Q2與Q3組成無(wú)穩(wěn)態(tài)振蕩器(astable multivibrator)。Q2的導(dǎo)通時(shí)間由R7、R5和Q4的集電極電壓決定。Q4起放大作用,信號(hào)由Q4放大后控制Q2的導(dǎo)通時(shí)間。Q2導(dǎo)通Q3截止,Q2截止Q3導(dǎo)通。Q3截止時(shí),Q1導(dǎo)通,通過(guò)Q3的截止時(shí)間控制Q1的導(dǎo)通時(shí)間。Q

13、1導(dǎo)通時(shí)間越長(zhǎng),輸出電壓越高。 Q1輸出的電壓經(jīng)L1和C1濾波變成穩(wěn)定的直流電源輸出。D3為增強(qiáng)二極管,防止L1在Q1截止時(shí)產(chǎn)生的高反壓擊穿Q1。D1為泄流二極管,防止L1產(chǎn)生的感應(yīng)電流損壞Q1。D2為振蕩器和放大取樣電路提供相對(duì)穩(wěn)定一點(diǎn)的工作電壓。R12與R13是Q4的基極偏置電路,R9與R10是輸出電源的取樣電路。如圖2-5 所示:圖2-5 DC-DC回路原理圖2.5 系統(tǒng)供電部分設(shè)計(jì)220V交流50HZ的市電經(jīng)變壓器降至18V交流電,經(jīng)過(guò)整流二極管整流和濾波作為DC-DC部分的輸入24V直流電,24V 直流電經(jīng)7805 降壓穩(wěn)壓,給STC89C52單片機(jī)等提供工作電源。如圖2-6所示:圖

14、2-6 工作電源 整流濾波電路設(shè)計(jì)本畢業(yè)設(shè)計(jì)采用四只整流二極管組成的整流電路將交流電轉(zhuǎn)化為直流電。運(yùn)用電感器、電容器及共模濾波器對(duì)輸出的電壓進(jìn)行進(jìn)一步的處理。如圖2-7所示:圖2-7 橋式整理濾波電路 浪涌電流電壓抑制電路設(shè)計(jì)電路在遭雷擊和在接通、斷開(kāi)電感負(fù)載或大型負(fù)載時(shí)常常會(huì)產(chǎn)生很高的操作過(guò)電壓,這種瞬時(shí)過(guò)電壓(或過(guò)電流)稱為浪涌電壓(或浪涌電流),是一種瞬變干擾,浪涌電壓大大地超過(guò)穩(wěn)態(tài)電源電壓,當(dāng)它襲擊到用電設(shè)備上時(shí),往往造成誤操作和設(shè)備的損壞,可能使整個(gè)系統(tǒng)停頓、通信中止3。由上所述浪涌電流及電壓對(duì)開(kāi)關(guān)電源及用電設(shè)備的破壞性,必須在開(kāi)關(guān)電源的設(shè)計(jì)中考慮到浪涌電流及電壓對(duì)開(kāi)關(guān)電源及用電設(shè)備

15、影響,從而增加有效的防護(hù)措施,設(shè)計(jì)出能夠?qū)擞侩娏骷半妷河行б种频碾娐?,?duì)開(kāi)關(guān)電源本身及用電設(shè)備進(jìn)行保護(hù)。本畢業(yè)設(shè)計(jì)中運(yùn)用氧化鋅(ZnO)壓敏電阻器,該電阻在實(shí)際應(yīng)用中通常并聯(lián)在被保護(hù)設(shè)備的輸入端,抑制浪涌電壓。運(yùn)用NTC熱敏電阻器,NTC熱敏電阻器在電路中通常串聯(lián)在被保護(hù)電器的輸入端,抑制浪涌電電流。如圖2-8所示:圖2-8 浪涌電流電壓抑制電路3、控制系統(tǒng)的設(shè)計(jì)思路3.1 控制系統(tǒng)的基本設(shè)計(jì)方案此設(shè)計(jì)用到STC89C52單片機(jī),通過(guò)按鍵的鍵值來(lái)設(shè)定所需的電壓值,然后單片機(jī)進(jìn)行處理,產(chǎn)生輸出所需相對(duì)電壓值的相對(duì)頻率的方波,使DC-DC部分輸出所需的電壓。ADC0804模數(shù)芯片對(duì)輸出電壓進(jìn)行采

16、樣,然后反饋給單片機(jī),進(jìn)行電壓自動(dòng)調(diào)節(jié)。如圖3-1系統(tǒng)整體框圖。反饋負(fù)載DC/DC微控制單元鍵盤輸入輸入顯示AD轉(zhuǎn)換PFM220V變壓器整流濾波系統(tǒng)供電圖3-1 系統(tǒng)整體框圖3.2 單片機(jī)模塊的設(shè)計(jì) STC89C52性能簡(jiǎn)介STC89C52是由STC公司制造生產(chǎn)的一款低電壓,高性能的8位單片機(jī),片內(nèi)含有可反復(fù)擦寫的4KB只讀程序存儲(chǔ)器和128字節(jié)的隨機(jī)存儲(chǔ)器,2*4KB可編程閃速存儲(chǔ)器;壽命:10萬(wàn)次寫/擦循環(huán);數(shù)據(jù)保留時(shí)間:10年;全靜態(tài)工作:0-24MHz;三級(jí)程序存儲(chǔ)器鎖定;2*128*8B內(nèi)部RAM;32個(gè)可編程I/O口線;3個(gè)16位定時(shí)/計(jì)數(shù)器;5個(gè)中斷源;可編程串行UART通道;片

17、內(nèi)震蕩器和掉電模式4。 最小系統(tǒng)設(shè)計(jì)單片機(jī)在啟動(dòng)時(shí),需要使單片機(jī)和與之相連接的其他部件全部保持在一個(gè)的初始狀態(tài),所以需要制造一個(gè)復(fù)位信號(hào)并從收到這個(gè)復(fù)位信號(hào)后進(jìn)行工作。STC89C52自身帶有一個(gè)復(fù)位引腳RESET,采用施密特觸發(fā)輸入。當(dāng)晶振起振后,只需要復(fù)位腳上產(chǎn)生了2個(gè)機(jī)器周期以上的高電平,這樣就可以保證STC89C52的復(fù)位。復(fù)位完成后,如果RESET復(fù)位端仍然保持在高電平,STC89C52單片機(jī)就會(huì)一直處于復(fù)位進(jìn)行的狀態(tài),只有在RESET復(fù)位端恢復(fù)低電平后,單片機(jī)才能進(jìn)行后續(xù)程序處理。單片機(jī)的復(fù)位方式一般分為兩種,一種是自動(dòng)復(fù)位,另一種是手動(dòng)復(fù)位。圖3-2是STC89C52的復(fù)位電路,

18、采用的是自動(dòng)復(fù)位和手動(dòng)復(fù)位的組合電路形式。 圖3-2 復(fù)位電路時(shí)鐘電路設(shè)計(jì)CPU每執(zhí)行一條指令,都必須在一個(gè)同一時(shí)鐘脈沖控制下運(yùn)行,時(shí)鐘脈沖是由單片機(jī)外圍設(shè)計(jì)的時(shí)序電路產(chǎn)生的。本畢業(yè)設(shè)計(jì)中時(shí)鐘系統(tǒng)采用內(nèi)部時(shí)鐘方式,利用STC89C52內(nèi)部集成的反相放大器,所需的外圍電路簡(jiǎn)單,只需要一只晶振和 兩只電容即可,如圖3-3時(shí)鐘電路所示:圖3-3 時(shí)鐘電路3.3 A/D模塊設(shè)計(jì)芯片介紹ADC0804是 NS公司生產(chǎn)的一款8位、單通道、低價(jià)格A/D轉(zhuǎn)換器。主要特點(diǎn)是:模數(shù)轉(zhuǎn)換時(shí)間需約100us;方便的TTLS標(biāo)準(zhǔn)接口或CMOS標(biāo)準(zhǔn)接口,可以滿足差分電壓的輸入;內(nèi)含時(shí)鐘發(fā)生器;具有參考電壓輸入端;不需要調(diào)

19、零等等5。該芯片的引腳圖見(jiàn)圖3-4所示:圖3-4 ADC0804 引腳頂視圖芯片參數(shù)工作電壓:+5V,即VCC=+5V。模擬轉(zhuǎn)換電壓范圍:0+5V,即0Vin+5V。分辨率:8位。轉(zhuǎn)換時(shí)間:100us(fCK=640KHz時(shí))。轉(zhuǎn)換誤差:±1LSB。參考電壓:2.5V,即Vref=2.5V。各個(gè)引腳名稱及作用Vin(+)、Vin(-):兩個(gè)模擬信號(hào)輸入端,可以接收單極性、雙極性和差模輸入信號(hào)。如圖3-5硬件連接圖:CLKIN:時(shí)鐘信號(hào)輸入端。CS:片選信號(hào)的輸入端,只有低電平有效。WR:寫信號(hào)輸入端,低電平啟動(dòng)AD轉(zhuǎn)換。RD:讀取信號(hào)的輸入端,只有低電平時(shí)輸出有效。VREF/2:參考

20、電平輸入,決定量化單位。VCC:芯片電源5V輸入。AGND:模擬電源地線。DGND:數(shù)字電源地線。圖3-5 ADC0804硬件連接圖 轉(zhuǎn)換原理ADC0804是屬于逐次逼近式(Successive Approximation Method)A/D轉(zhuǎn)換器,這種類型的轉(zhuǎn)換器除了分辨率高轉(zhuǎn)換速度快以外,還有價(jià)格便宜的優(yōu)點(diǎn)。使用二分法的尋址方式,8位的轉(zhuǎn)換器需要8次的尋址,就能完成轉(zhuǎn)換的操作。操作時(shí)序圖及讀取數(shù)據(jù)時(shí)序圖如圖3-6所示:圖3-6 操作時(shí)序圖及讀取數(shù)據(jù)時(shí)序圖3.4 接口電路的設(shè)計(jì)3.4.1按鍵接口電路設(shè)計(jì)本畢業(yè)設(shè)計(jì)就采用矩陣鍵盤,作用是能夠減少按鍵與單片機(jī)連接時(shí)所占用的I/O線的數(shù)量,在按鍵

21、比較多的時(shí)候,采用這樣方法。   由于使用的按鍵是機(jī)械式的按鍵,每當(dāng)按鍵被按下時(shí),按鍵會(huì)震動(dòng)一段時(shí)間才會(huì)穩(wěn)定下來(lái),為了避免STC89C52單片機(jī)誤判為多次輸入同一個(gè)按鍵,所以需要在程序中Delay一段時(shí)間,在鍵盤震動(dòng)停止后,單片機(jī)再進(jìn)行判讀按鍵按下的鍵值,這樣就可以實(shí)現(xiàn)鍵盤的穩(wěn)定輸入。如圖3-7所示:圖3-7 按鍵與單片機(jī)連接圖3.4.2 顯示接口電路設(shè)計(jì) 本畢業(yè)設(shè)計(jì)采用液晶顯示器,簡(jiǎn)稱為L(zhǎng)CD顯示器。 12864 LCD引腳說(shuō)明如表3-1所示:表3-1 12864LCD引腳LCD與單片機(jī)接硬件連接如圖3-8所示:圖3-8 LCD與單片機(jī)連接圖4、程序設(shè)計(jì)4.1

22、主程序流程圖的設(shè)計(jì)系統(tǒng)初始化后,通過(guò)矩陣鍵盤鍵入電壓預(yù)設(shè)值,按確定鍵,系統(tǒng)輸出預(yù)設(shè)值。YY開(kāi)始系統(tǒng)及個(gè)功能模塊初始化調(diào)用鍵盤掃描函數(shù)有鍵按下預(yù)置電壓值記錄行列號(hào),延時(shí)10ms步進(jìn)加一步進(jìn)減一D/A數(shù)值+10超過(guò)預(yù)置改變當(dāng)前值顯示預(yù)置值A(chǔ)/D采樣計(jì)算電壓值顯示各參數(shù)返回NN圖4-1為系統(tǒng)主程序流程圖。圖4-1系統(tǒng)主程序流程圖4.2 鍵盤掃描程序設(shè)計(jì)本畢業(yè)設(shè)計(jì)為了避免STC89C52單片機(jī)誤判為多次輸入同一個(gè)按鍵,所以需要在程序中Delay一段時(shí)間,在鍵盤震動(dòng)停止后,單片機(jī)再進(jìn)行判讀按鍵按下的鍵值,這樣就可以實(shí)現(xiàn)鍵盤的穩(wěn)定輸入。如圖4-2鍵盤掃描程序流程圖。開(kāi)始記錄行號(hào),延時(shí)10mS記錄列號(hào),獲得

23、按鍵位置完成一個(gè)數(shù)字輸入YN按鍵是否按下?按鍵是否按下?YN圖4-2 鍵盤掃描程序流程圖4.3 A/D程序設(shè)計(jì)A/D轉(zhuǎn)換子程序是對(duì)輸出模塊電壓進(jìn)行轉(zhuǎn)換處理,并將相對(duì)應(yīng)的處理值傳輸?shù)綄?duì)應(yīng)的內(nèi)存單元,然后傳輸給單片機(jī),轉(zhuǎn)換流程圖如圖4-3所示:開(kāi)始啟動(dòng)A/D轉(zhuǎn)換(初始化)讀取模擬數(shù)據(jù)量A/D轉(zhuǎn)換發(fā)完數(shù)據(jù)?結(jié)束發(fā)送數(shù)據(jù)YN圖4-3 轉(zhuǎn)換流程圖5、仿真結(jié)果及分析5.1 Proteus仿真軟件 Proteus ISIS是英國(guó)Labcenter公司開(kāi)發(fā)的實(shí)物仿真、電路分析的軟件。它在Windows的操作平臺(tái)上,可以完美的對(duì)各種集成電路和模擬器件進(jìn)行仿真和分析,該程序軟件具有的以下特點(diǎn): 實(shí)現(xiàn)了S

24、PICE電路和仿真單片機(jī)仿真相結(jié)合。具有數(shù)字電路仿真、模擬電路仿真、單片機(jī)及單片機(jī)的外部電路的組成系統(tǒng)的完美仿真、SPI調(diào)試器、鍵盤、LCD系統(tǒng)仿真、I2C調(diào)試器和RS232動(dòng)態(tài)。 支持現(xiàn)在主流單片機(jī)系統(tǒng)的完美仿真。目前支持的單片機(jī)類型有:PIC16系列、8051系列、PIC12系列、68000系列、Z80系列、HC11系列、AVR系列、PIC18系列以及各種外圍芯片。 提供了軟件調(diào)試的功能。在硬件仿真的系統(tǒng)中具有全速、單步及設(shè)置斷點(diǎn)等調(diào)試的功能,同時(shí)還可以觀察各個(gè)寄存器、變量等的當(dāng)前運(yùn)行狀態(tài)。 具有很強(qiáng)大的原理圖的繪制功能??傊撥浖且豢罴疭PICE分析和單片機(jī)仿真于一身的軟件,功能極其

25、強(qiáng)大。5.2 設(shè)計(jì)仿真5.2.1 仿真實(shí)驗(yàn)一 設(shè)定的輸出電壓為2V,仿真中顯示器和電壓表顯示電壓在1.99-2.00V之間波動(dòng),示波器檢測(cè)單片機(jī)輸出引腳顯示為方波,頻率f=350HZ。仿真圖如圖5-1所示:圖5-1 仿真實(shí)驗(yàn)一5.2.2 仿真實(shí)驗(yàn)二 設(shè)定的輸出電壓為4V,仿真中顯示器和電壓表顯示電壓在3.99-4.01V之間波動(dòng),示波器檢測(cè)單片機(jī)輸出引腳顯示為方波,頻率f=725HZ。仿真圖如圖5-2所示:圖5-2 仿真實(shí)驗(yàn)二5.3仿真分析 輸出的電壓值隨單片機(jī)輸出的方波頻率升高而增大。本次設(shè)計(jì)的仿真系統(tǒng)可以實(shí)現(xiàn)設(shè)計(jì)要求,輸出的電壓的可調(diào)并且步進(jìn)可控,輸出的電流電壓值和實(shí)際值保持一致,總的說(shuō)已

26、經(jīng)完成了這本畢業(yè)設(shè)計(jì)的要求。參考文獻(xiàn)1 賴文武,諸小天,李臨東等. 電磁干擾防護(hù)與電磁兼容技術(shù)M. 北京:北京原子能出版社, 2009。2 張紅纓,李華, 高小祥等. 采用雙環(huán)控制的多電平D類功率放大器J. 電工技術(shù)學(xué)報(bào). 2010。3 Jiang X, Akyildiz L F. A novel distributed dynamic location management scheme for minimizing signaling costs in mobile IPJ. IEEE Trans. on Mobile Computing, 2002.4 Khan A, Qadeer M,

27、 Ansari J et al. Next Generation Wireless NetworkA. In:Interna- tional Conference on Future Computer and CommunicationC, Berlin: Springer-Verlag, 2009.5 普利斯曼,比得斯,莫瑞.開(kāi)關(guān)電源設(shè)計(jì)(第三版)M.北京:電子工業(yè)出版社,2009。6/rfc/rfc4861.txt, 2007.7 郭軍華. 電磁干擾防護(hù)與電磁兼容技術(shù)研究D. 上海: 華東師范大學(xué)物理系, 2007,15-20。8 張建生等.電源技術(shù)教程M.北京:電子工業(yè)出版

28、社,2007。9 沈錦飛.電源變換應(yīng)用技術(shù)M.北京:機(jī)械工業(yè)出版社,2007。10 林立等.單片機(jī)原理及應(yīng)用基于Proteus和Keil CM.北京:電子工業(yè)出版社,2009。11 胡乾斌,李光斌,李玲等. 單片微型計(jì)算機(jī)原理與應(yīng)用M. 武漢:華中科技大學(xué)出版社,2005。致 謝在本論文的寫作過(guò)程中,我的導(dǎo)師老師耗費(fèi)了大量的精力,從選題到開(kāi)題,到一遍遍地指出稿中的每一個(gè)問(wèn)題,嚴(yán)格把關(guān),在此我表示由衷感謝。同時(shí)感謝在我大學(xué)學(xué)習(xí)期間給我極大關(guān)心和支持的各位老師以及同學(xué)們。經(jīng)過(guò)十二周的查找參考資料和復(fù)習(xí)以前的課本知識(shí),對(duì)本次畢業(yè)設(shè)計(jì)有了很多的體會(huì)和收獲。 大學(xué)生活即將結(jié)束,內(nèi)心是感慨頗多, 即將離開(kāi)

29、生活所依四年的母校和諄諄教導(dǎo)我的親愛(ài)的老師和互相幫助的同學(xué)們,有些不舍??墒俏彝瑫r(shí)也知道這是必須經(jīng)歷的一個(gè)過(guò)程, 在學(xué)校的這幾年里我學(xué)習(xí)了本專業(yè)基本課程和與老師同學(xué)之間相處方面的知識(shí),這些并些都是我受用終生。 感謝各位專家的批評(píng)指導(dǎo) 附 錄附錄一:系統(tǒng)整體原理圖DC/DC電路原理圖控制系統(tǒng)原理圖附錄二:系統(tǒng)仿真圖附錄三:程序代碼主程序:#include<reg52.h>#include"includes.h"#define uchar unsigned char #define uint unsigned int#define SCANPORT P2#defin

30、e TIME1H 80#define TIME1L 80 sbit wr=P31;sbit rd=P30;sbit P27=P27;unsigned long int shuchu=100; /默認(rèn)的開(kāi)機(jī)電壓/uint zhuhuandata;unsigned long int ch=0;uchar i=0; /按鍵標(biāo)記/uchar uca_LineScan3=0xEF,0xDF,0xBF;void chuli(); /函數(shù)定義/uchar getkey(); /函數(shù)定義/void qiuhe(uchar t) if(i=1) ch=t; vShowOneChar(6,89,ucat); if

31、(i=2) ch=ch*10+t; vShowOneChar(6,103,ucat); if(i=3) ch=ch*10+t; vShowOneChar(6,111,ucat); void key_chuli(uchar x) uchar t; switch(x)case 42: t=0; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'0'case 31: t=1; i+; qiuhe(t

32、); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'1'case 32: t=2; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'2'case 33: t=3; i+; qiuhe(t); if(i=3) vSh

33、owOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'3'case 21: t=4; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'4'case 22: t=5; i+; qiuhe(t); if(i=3) vShowOneChin(2,49

34、,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'5'case 23: t=6; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'6'case 11: t=7; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vSh

35、owOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'7'case 12: t=8; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'8'case 13: t=9; i+; qiuhe(t); if(i=3) vShowOneChin(2,49,uca_que); vShowOneChin(2,64

36、,uca_ding); vShowOneChin(4,59,uca_wenhao); break; /'9'case 41: if(i=3) /'ok' ch=ch*256/512; shuchu=ch; ch=0; TH0=65200; TL0=65200; vShowOneChin(2,49,uca_0); vShowOneChin(2,64,uca_0); vShowOneChin(4,48,uca_SHU); vShowOneChin(4,64,uca_CHU); vShowOneChar(6,88,uca_HEN); vShowOneChar(6,10

37、4,uca_HEN); vShowOneChar(6,112,uca_HEN); i=0; break; void vTimer0(void) interrupt 1 using 2 uchar a,d;unsigned long int c=0;uchar data tab3;a=(zhuhuandata&0xf0)>>4)*100/16); d=(zhuhuandata&0x0f)*100/256); c=(a+d)*5.12; tab0=c%10; tab1=c/10%10; tab2=c/100%10;vShowOneChar(2,89,ucatab2);v

38、ShowOneChar(2,103,ucatab1);vShowOneChar(2,111,ucatab0); TH0=TIME1H;TL0=TIME1L;void main(void) SCANPORT=0x8F;ClearLCD(0x00);vShowOneChar(2,89,uca5);vShowOneChar(2,96,uca_XIAOSHU);vShowOneChar(2,103,uca0);vShowOneChar(2,111,uca0);vShowOneChar(2,120,uca_V); vShowOneChin(0,0,uca_DANG);vShowOneChin(0,16,

39、uca_QIAN);vShowOneChin(0,32,uca_GONG);vShowOneChin(0,48,uca_ZUO);vShowOneChin(0,64,uca_DIAN);vShowOneChin(0,80,uca_YA);vShowOneChin(0,96,uca_MAOHAO);vShowOneChin(4,0,uca_QING);vShowOneChin(4,16,uca_SHE);vShowOneChin(4,32,uca_ZHI);vShowOneChin(4,48,uca_SHU);vShowOneChin(4,64,uca_CHU);vShowOneChin(4,8

40、0,uca_DIAN);vShowOneChin(4,96,uca_YA);vShowOneChin(4,112,uca_MAOHAO);vShowOneChar(6,96,uca_XIAOSHU);vShowOneChar(6,88,uca_HEN);vShowOneChar(6,104,uca_HEN);vShowOneChar(6,113,uca_HEN);vShowOneChar(6,119,uca_V);TMOD=0X01; TH0=TIME1H;TL0=TIME1L;ET0=1;/T/C0開(kāi)中斷TR0=1; /開(kāi)定時(shí)器0中斷IT0=1;/外中斷方式:下降沿。EX0=1;/開(kāi)啟外部中

41、斷。 EA=1; while(1) wr=0; wr=1; chuli(); if(zhuhuandata<=shuchu)P27=0;if(zhuhuandata>shuchu)P27=1; if(zhuhuandata<=shuchu)P27=0; void chuli() rd=0; zhuhuandata=P0;unsigned char getkey() uchar ucTemp=0; /掃描狀態(tài)暫存。uchar ucRow=0,ucLine=0; /行號(hào),列號(hào)。 for(ucLine=0;ucLine<3;ucLine+)/列掃描 SCANPORT=uca_

42、LineScanucLine; ucTemp=SCANPORT&0x8F; if(ucTemp!=0x8F) switch(ucTemp)case 0x8E: ucRow=10;break; case 0x8D: ucRow=20;break;case 0x8B: ucRow=30;break;case 0x87: ucRow=40;break;default: P2=P2; break; break; SCANPORT=0x8F; /恢復(fù)P2口 return (ucRow+ucLine+1);/ void vINT0(void) interrupt 0 EX0=0; key_chul

43、i(getkey(); while(SCANPORT&0x8F)!=0x8f) /等待按鍵松開(kāi)/ ; EX0=1; 鍵盤掃描子程序#include <at89x51.h>#define SCANPORT P1 unsigned char uca_LineScan4=0xEF,0xDF,0xBF,0x7F;/列線掃描電壓unsigned char ucKeyScan()unsigned char ucTemp=0; /掃描狀態(tài)暫存。unsigned char ucRow=0,ucLine=0; /行號(hào),列號(hào)。EX0=0; for(ucLine=0;ucLine<4;uc

44、Line+)/列掃描SCANPORT=uca_LineScanucLine; /輸出掃描電位。ucTemp=SCANPORT&0x0F; /輸入掃描電位 if(ucTemp!=0x0F) switch(ucTemp)case 0x0E: ucRow=10;break; /如果有,則判斷行號(hào)。case 0x0D: ucRow=20;break;case 0x0B: ucRow=30;break;case 0x07: ucRow=40;break;default: ucRow=50;break;break;SCANPORT=0x0F; /恢復(fù)P2口EX0=1;/恢復(fù)按鍵中斷。return

45、ucRow+ucLine+1; /返回按鍵編碼。LCD12864驅(qū)動(dòng)程序#include <reg52.h>#defineLCDPORT P1sbitE= P37;sbitRW= P36;sbitDI= P35;sbitCS1= P33;sbitCS2= P34;sbit BUSYSTATUS= P17;/#define DISONSTATUS P0_5 /#define RSTSTATUS P0_4 /復(fù)位狀態(tài)位。#define LCDSTARTROW 0xC0 /設(shè)置起始行指令。#define LCDPAGE 0xB8 /設(shè)置頁(yè)指令。#define LCDLINE 0x40 /

46、設(shè)置列指令。bit bCheckBusy()LCDPORT=0x00;RW=1;DI=0;E=1;E=0;return BUSYSTATUS; void vWriteData(unsigned char ucData)while(bCheckBusy();LCDPORT=0x00;RW=0;DI=1;LCDPORT=ucData;E=1;E=0;void vWriteCMD(unsigned char ucCMD)while(bCheckBusy();LCDPORT=0x00; RW=0;DI=0;LCDPORT=ucCMD;E=1;E=0;/*void vLCDInitialize()CS1=1;CS2=1

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論