基于單片機(jī)的直流穩(wěn)壓電源畢業(yè)設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的直流穩(wěn)壓電源畢業(yè)設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的直流穩(wěn)壓電源畢業(yè)設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的直流穩(wěn)壓電源畢業(yè)設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的直流穩(wěn)壓電源畢業(yè)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩26頁(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、精選優(yōu)質(zhì)文檔-傾情為你奉上畢業(yè)設(shè)計(jì)論文任務(wù)書姓名 XXXX 班號(hào) 院系 同組姓名 指導(dǎo)教導(dǎo) 一、 課題名稱(論文標(biāo)題)基于單片機(jī)的直流穩(wěn)壓電源二、 課題內(nèi)容本次設(shè)計(jì)的課題采用廉價(jià)適用型單片機(jī)主控(c8051系列)通過(guò)其SPI單元 發(fā)送SPI總線信號(hào)控制10位精度DAC產(chǎn)生05V可調(diào)電壓輸出,由于許多工業(yè)現(xiàn)場(chǎng)需要的電壓范圍比較高,后級(jí)需要發(fā)大其信號(hào)到010V ,最后級(jí)放大根據(jù)輸出功率,輸出精度,輸出紋波,零漂大小,選用ADI公司的高精密,大功率,低零漂放大器。 該直流穩(wěn)壓電源可以用于高精度,低紋波需求場(chǎng)合。這篇論文是經(jīng)我國(guó)現(xiàn)行的各有關(guān)規(guī)范,規(guī)程和技術(shù)標(biāo)準(zhǔn)為依據(jù)。此設(shè)計(jì)是一個(gè)初步設(shè)計(jì),在參考有關(guān)資

2、料和書籍的基礎(chǔ)上,完成設(shè)計(jì)任務(wù)書上的所有要求,并且在指導(dǎo)老師的指導(dǎo)下,力爭(zhēng)使設(shè)計(jì)方案達(dá)到最優(yōu)狀況。三、課題任務(wù)要求1、系統(tǒng)的設(shè)計(jì)要求和方案選擇。 2、系統(tǒng)硬件設(shè)計(jì)。 3、系統(tǒng)軟件設(shè)計(jì)。四、同組設(shè)計(jì)者無(wú)五、主要參考文獻(xiàn)1 李朝青.單片機(jī)原理及接口技術(shù)M.北京:北京航空航天大學(xué)出版社,2005年.2 白雪冰,張延林,等.單片機(jī)原理及應(yīng)用M.哈爾濱:東北林業(yè)大學(xué)出版社,2006年.3 謝運(yùn)祥,歐陽(yáng)森,等.電力電子單片機(jī)控制技術(shù)M.北京:機(jī)械工業(yè)出版社.2007年.4 王昊,李昕.集成運(yùn)放應(yīng)用電路設(shè)計(jì)360例M.北京:電子工業(yè)出版社,2007年.5 王洪業(yè).傳感器技術(shù)M.長(zhǎng)沙:湖南科學(xué)技術(shù)出版社,19

3、95年.6 鄭爭(zhēng)兵,基于單片機(jī)與AD590的溫度測(cè)量報(bào)警系統(tǒng)J.國(guó)外電子測(cè)量技術(shù) 2007.21(6):64 - 667 鐘曉偉,宋蟄存.基于單片機(jī)的實(shí)驗(yàn)室溫濕度控制系統(tǒng)設(shè)計(jì)J.林業(yè)機(jī)械與木工設(shè)備.2010,38(1).39 428 劉寶元,張玉虹,等.基于單片機(jī)的溫濕度監(jiān)控系統(tǒng)設(shè)計(jì)J.中國(guó)科技核心期刊.2009,28(12).77 83 指導(dǎo)教師簽字 教研室主任簽字 年 月 日摘 要數(shù)控直流穩(wěn)壓源就是能用數(shù)字來(lái)控制電源輸出電壓的大小,而且能使輸出的直流電壓能保持穩(wěn)定、精確的直流電壓源;數(shù)控電源是針對(duì)傳統(tǒng)電源的不足設(shè)計(jì)的,數(shù)字化能夠減少生產(chǎn)過(guò)程中的不確定因素和人為參與的環(huán)節(jié)數(shù),有效地解決電源模

4、塊中諸如可靠性、智能化和產(chǎn)品一致性等工程問(wèn)題,極大地提高生產(chǎn)效率和產(chǎn)品的可維護(hù)性,市場(chǎng)前景廣闊。在本文中控制部分主要以8051單片機(jī)為核心制作控制電路,穩(wěn)壓部分主要以LM117為核心制作三端穩(wěn)壓電路,顯示部分采用數(shù)碼管顯示,輸入采用鍵盤式輸入再加一個(gè)驅(qū)動(dòng)電路;通過(guò)軟件編程有效的實(shí)現(xiàn)可控、可顯的電源輸出。關(guān)鍵詞:直流穩(wěn)壓電源;8051單片機(jī);數(shù)碼管顯示目 錄設(shè)計(jì)任務(wù)書.1摘要 .31 引言.5 數(shù)控電源的發(fā)展史5 數(shù)控電源的應(yīng)用范圍5 數(shù)控電源的優(yōu)點(diǎn)62 系統(tǒng)的設(shè)計(jì)要求和方案選擇.72.1 設(shè)計(jì)要求72.2 方案論證與比較73 系統(tǒng)硬件設(shè)計(jì).83.1 系統(tǒng)設(shè)計(jì).93.2 微控制器模塊.93.3

5、電源模塊.103.4 調(diào)壓電阻網(wǎng)絡(luò).113.5 顯示電路.123.6 鍵盤電路.134 系統(tǒng)軟件設(shè)計(jì).144.1 主程序.144.2 掃描鍵盤程序.204.3 顯示驅(qū)動(dòng)程序.215 總結(jié).266 致謝.277 參考文獻(xiàn).281.引 言1.1. 數(shù)控電源的發(fā)展史電源技術(shù)尤其是數(shù)控電源技術(shù)是一門實(shí)踐性很強(qiáng)的工程技術(shù),服務(wù)于各行各業(yè)。電力電子技術(shù)是電能的最佳應(yīng)用技術(shù)之一。當(dāng)今電源技術(shù)融合了電氣、電子、系統(tǒng)集成、控制理論、材料等諸多學(xué)科領(lǐng)域。隨著計(jì)算機(jī)和通訊技術(shù)發(fā)展而來(lái)的現(xiàn)代信息技術(shù)革命,給電力電子技術(shù)提供了廣闊的發(fā)展前景,同時(shí)也給電源提出了更高的要求。隨著數(shù)控電源在電子裝置中的普遍使用,普通電源在工

6、作時(shí)產(chǎn)生的誤差,會(huì)影響整個(gè)系統(tǒng)的精確度。電源在使用時(shí)會(huì)造成很多不良后果,世界各國(guó)紛紛對(duì)電源產(chǎn)品提出了不同要求并制定了一系列的產(chǎn)品精度標(biāo)準(zhǔn)。只有滿足產(chǎn)品標(biāo)準(zhǔn),才能夠進(jìn)入市場(chǎng)。隨著經(jīng)濟(jì)全球化的發(fā)展,滿足國(guó)際標(biāo)準(zhǔn)的產(chǎn)品才能獲得進(jìn)出的通行證。數(shù)控電源是從80年代才真正的發(fā)展起來(lái)的,期間系統(tǒng)的電力電子理論開(kāi)始建立。這些理論為其后來(lái)的發(fā)展提供了一個(gè)良好的基礎(chǔ)。在以后的一段時(shí)間里,數(shù)控電源技術(shù)有了長(zhǎng)足的發(fā)展。但其產(chǎn)品存在數(shù)控程度達(dá)不到要求、分辨率不高、功率密度比較低、可靠性較差的缺點(diǎn)。因此數(shù)控電源主要的發(fā)展方向,是針對(duì)上述缺點(diǎn)不斷加以改善。單片機(jī)技術(shù)及電壓轉(zhuǎn)換模塊的出現(xiàn)為精確數(shù)控電源的發(fā)展提供了有利的條件。

7、新的變換技術(shù)和控制理論的不斷發(fā)展,各種類型專用集成電路、數(shù)字信號(hào)處理器件的研制應(yīng)用。到90年代,己出現(xiàn)了數(shù)控精度達(dá)到0.05V的數(shù)控電源,功率密度達(dá)到每立方英寸50W的數(shù)控電源。從組成上,數(shù)控電源可分成器件、主電路與控制等三部分。目前在電力電子器件方面,幾乎都為旋紐開(kāi)關(guān)調(diào)節(jié)電壓,調(diào)節(jié)精度不高,而且經(jīng)常跳變,使用麻煩。數(shù)字化智能電源是針對(duì)傳統(tǒng)電源的不足設(shè)計(jì)的,數(shù)字化能夠減少生產(chǎn)過(guò)程中的不確定因素和人為參與的環(huán)節(jié)數(shù),有效地解決電源模塊中諸如可靠性、智能化和產(chǎn)品一致性等工程問(wèn)題,極大地提高生產(chǎn)效率和產(chǎn)品的可維護(hù)性。1.2. 數(shù)控電源的應(yīng)用范圍在家用電器和其他各類電子設(shè)備中,通常都需要電壓穩(wěn)定的直流電

8、源供電。但在實(shí)際生活中,都是由220V 的交流電網(wǎng)供電。這就需要通過(guò)變壓、整流、濾波、穩(wěn)壓電路將交流電轉(zhuǎn)換成穩(wěn)定的直流電。濾波器用于濾去整流輸出電壓中的紋波,一般傳統(tǒng)電路由濾波扼流圈和電容器組成,若由晶體管濾波器來(lái)替代,則可縮小直流電源的體積,減輕其重量,且晶體管濾波直流電源不需直流穩(wěn)壓器就能用作家用電器的電源,這既降低了家用電器的成本,又縮小了其體積,使家用電器小型化。傳統(tǒng)的直流穩(wěn)壓電源通常采用電位器和波段開(kāi)關(guān)來(lái)實(shí)現(xiàn)電壓的調(diào)節(jié),并由電壓表指示電壓值的大小. 因此,電壓的調(diào)整精度不高,讀數(shù)欠直觀,電位器也易磨損.而基于單片機(jī)控制的直流穩(wěn)壓電源能較好地解決以上傳統(tǒng)穩(wěn)壓電源的不足。從上世紀(jì)九十年代

9、末起,隨著對(duì)系統(tǒng)更高效率和更低功耗的需求,電信與數(shù)據(jù)通訊設(shè)備的技術(shù)更新推動(dòng)電源行業(yè)中直流/直流電源轉(zhuǎn)換器向更高靈活性和智能化方向發(fā)展。整流系統(tǒng)由以前的分立元件和集成電路控制發(fā)展為微機(jī)控制, 從而使直流電源智能化, 基本實(shí)現(xiàn)了直流電源的無(wú)人值守 。直流穩(wěn)壓電源是最常用的儀器設(shè)備, 在科研及實(shí)驗(yàn)中都是必不可少的。數(shù)控電源采用按鍵盤,可對(duì)輸出電壓進(jìn)行設(shè)置, 輸出由單片機(jī)通過(guò)D/A,控制驅(qū)動(dòng)模塊輸出一個(gè)穩(wěn)定電壓。同時(shí)穩(wěn)壓方法采用單片機(jī)控制, 單片機(jī)通過(guò)A/D 采樣輸出電壓, 與設(shè)定值進(jìn)行比較, 若有偏差則調(diào)整輸出, 越限則輸出報(bào)警信號(hào)并截流。工作過(guò)程中, 穩(wěn)壓電源的工作狀態(tài)(輸出電壓、電流等

10、各種工作狀態(tài)) 均由單片機(jī)輸出驅(qū)動(dòng)LCD顯示, 由鍵盤控制進(jìn)行動(dòng)態(tài)邏輯切換。以單片機(jī)為核心的智能化高精度簡(jiǎn)易直流電源的設(shè)計(jì),電源采用數(shù)字調(diào)節(jié)、輸出精度高, 特別適用于各種有較高精度要求的場(chǎng)合。1.3. 數(shù)控電源的優(yōu)點(diǎn)(1)易于采用先進(jìn)的控制方法和智能控制策略,使電源模塊的智能化程度更高,性能更完美。(2)控制靈活,系統(tǒng)升級(jí)方便,甚至可以在線修改控制算法,而不必改動(dòng)硬件線路。(3)控制系統(tǒng)的可靠性提高,易于標(biāo)準(zhǔn)化,可以針對(duì)不同的系統(tǒng)(或不同型號(hào)的產(chǎn)品),采用統(tǒng)一的控制板,而只是對(duì)控制軟件做一些調(diào)整即可。2.系統(tǒng)的設(shè)計(jì)要求和方案選擇2.1. 設(shè)計(jì)要求系統(tǒng)電壓調(diào)節(jié)范圍為012V,最大輸出電流1A,具

11、有過(guò)載和短路保護(hù)功能。輸出電壓可用1602LCD液晶顯示。鍵盤設(shè)有6個(gè)鍵,復(fù)位鍵,步進(jìn)增減1V兩個(gè)鍵,步進(jìn)增減0.1V兩個(gè)鍵以及確認(rèn)鍵。復(fù)位鍵用于啟動(dòng)參數(shù)設(shè)定狀態(tài)(5V),步進(jìn)增減鍵用于設(shè)定參數(shù)數(shù)值,確認(rèn)鍵用于確認(rèn)輸出設(shè)定值.電源開(kāi)機(jī)設(shè)定電壓輸出默認(rèn)值為5V。通過(guò)步進(jìn)增減按鍵功能選擇可在不同的設(shè)定參數(shù)之間切換,再按確認(rèn)鍵進(jìn)入設(shè)定電壓輸出狀態(tài)。若按復(fù)位鍵,則電壓輸出恢復(fù)5V。系統(tǒng)設(shè)有自動(dòng)識(shí)別功能,將不接受超出使用范圍(012V)的設(shè)定值2.2. 方案論證與比較2.2.1穩(wěn)壓電源的選擇方案一:簡(jiǎn)單的并聯(lián)型穩(wěn)壓電源并聯(lián)型穩(wěn)壓電源的調(diào)整元件與負(fù)載并聯(lián),因而具有極低的輸出電阻,動(dòng)態(tài)特性好,電路簡(jiǎn)單,并具

12、有自動(dòng)保護(hù)功能;負(fù)載短路時(shí)調(diào)整管截止,可靠性高,但效率低,尤其是在小電流時(shí)調(diào)整管需承受很大的電流,損耗過(guò)大。方案二:串聯(lián)型穩(wěn)壓電源并聯(lián)穩(wěn)壓電源有效率低、輸出電壓調(diào)節(jié)范圍小和穩(wěn)定度不高這三個(gè)缺點(diǎn)。而串聯(lián)穩(wěn)壓電源可以避免這些缺點(diǎn),同時(shí)串聯(lián)穩(wěn)壓電源可以通過(guò)三端穩(wěn)壓實(shí)現(xiàn),而且這類芯片內(nèi)部都有過(guò)流和過(guò)熱的保護(hù)電路,例如W117,其額定電流可達(dá)1.5A,輸出電壓的調(diào)節(jié)范圍為1.2-37V,內(nèi)部有過(guò)流和過(guò)熱保護(hù)電路,而且價(jià)格也的相當(dāng)便宜如圖2.1所示,所以綜合考慮采用方案二。圖2.1三端穩(wěn)壓器2.2.2 數(shù)字顯示方案方案一:液晶顯示器顯示利用單片機(jī)的軟硬件資源實(shí)現(xiàn)高精度高速A/D轉(zhuǎn)換,轉(zhuǎn)換精度和轉(zhuǎn)換速度可以

13、通過(guò)軟件來(lái)改變。但是對(duì)軟件部分要求非常高不易實(shí)現(xiàn)。方案二:數(shù)碼管顯示數(shù)碼管顯示分為靜態(tài)顯示和動(dòng)態(tài)顯示兩種,但是不管哪種顯示都具有結(jié)構(gòu)簡(jiǎn)單、易于實(shí)現(xiàn)等優(yōu)點(diǎn)。同時(shí)采用3位數(shù)碼管完全可以滿足本設(shè)計(jì)的要求。在用8051控制的同時(shí),可以簡(jiǎn)化軟件程序,快速實(shí)現(xiàn)。所以本設(shè)計(jì)中采用數(shù)碼管顯示。3.系統(tǒng)硬件設(shè)計(jì)3.1. 系統(tǒng)設(shè)計(jì)由于本設(shè)計(jì)的輸入為220V的交流電電壓,所以必須先經(jīng)過(guò)整流濾波電路然后經(jīng)過(guò)三端穩(wěn)壓器的處理輸出直流穩(wěn)定的電壓,當(dāng)然在輸出前還得有單片機(jī)的控制才可以輸出。在控制中單片機(jī)通過(guò)接受來(lái)自鍵盤的指令信號(hào),并且通過(guò)數(shù)碼顯示器顯示當(dāng)前值,然后由單片機(jī)發(fā)出控制信號(hào)控制接口和驅(qū)動(dòng)電路來(lái)控制穩(wěn)壓器的輸出,通

14、過(guò)數(shù)碼顯示器顯示輸出值。具體的系統(tǒng)圖如圖3.1所示。整流濾波三端穩(wěn)壓W117電阻網(wǎng)絡(luò)模擬開(kāi)關(guān)接口和驅(qū)動(dòng)電路輸出顯示8051單片機(jī)數(shù)碼顯示鍵盤顯示器接口鍵盤220v交流電圖3.1系統(tǒng)流程圖3.2. 微控制器模塊3.2.1 8051單片機(jī)的性能AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單

15、個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。主要特性為:(1)與MCS-51 兼容 (2)4K字節(jié)可編程閃爍存儲(chǔ)器 (3)壽命:1000寫/擦循環(huán)(4)數(shù)據(jù)保留時(shí)間:10年(5)全靜態(tài)工作:0Hz-24Hz(6)三級(jí)程序存儲(chǔ)器鎖定(7)128*8位內(nèi)部RAM(8)32可編程I/O線(9)兩個(gè)16位定時(shí)器/計(jì)數(shù)器(10)5個(gè)中斷源 (11)可編程串行通道(12)低功耗的閑置和掉電模式(13)片內(nèi)振蕩器和時(shí)鐘電路3.2.2 8051單片機(jī)的最小系統(tǒng)對(duì)于一個(gè)完整的電子設(shè)計(jì)來(lái)講,首要問(wèn)題就是為整個(gè)系統(tǒng)提供電源供電模塊,電源模塊的穩(wěn)定可靠是

16、系統(tǒng)平穩(wěn)運(yùn)行的前提和基礎(chǔ)。51單片機(jī)雖然使用時(shí)間最早、應(yīng)用范圍最廣,但是在實(shí)際使用過(guò)程中,一個(gè)和典型的問(wèn)題就是相比其他系列的單片機(jī),51單片機(jī)更容易受到干擾而出現(xiàn)程序跑飛的現(xiàn)象,克服這種現(xiàn)象出現(xiàn)的一個(gè)重要手段就是為單片機(jī)系統(tǒng)配置一個(gè)穩(wěn)定可靠的電源供電模塊。在次最小系統(tǒng)中包含了復(fù)位電路、振蕩電路和供電電路。如圖3.2所示。圖3.2單片機(jī)最小系統(tǒng)3.3. 電源模塊3.3.1單片機(jī)供電模塊為了滿足單片機(jī)的正常工作,必須給其提供+5v的直流電源,所以設(shè)計(jì)一個(gè)可以使用usb的5v直流供電電路,具體電路如圖3.3所示。圖3.3單片機(jī)供電圖3.3.2整流濾波電路和+5v供電模塊整流電路采用橋式電路,整流管采

17、用普遍使用橋堆。根據(jù)使用手冊(cè)可知W7805的輸入端電壓為9V,W117的輸入電壓為25V,具體電路如圖3.4所示。圖3.4輔助電源模塊3.4. 調(diào)壓電阻網(wǎng)絡(luò)3.4.1W117的調(diào)壓電阻網(wǎng)絡(luò)根據(jù)w117的基本功能,調(diào)壓電阻網(wǎng)絡(luò)可采用如圖3.4所示電路。這里的電阻網(wǎng)絡(luò)采用分立元件組成的8為權(quán)電阻串聯(lián)式網(wǎng)絡(luò),而開(kāi)關(guān)采用舌簧式繼電器的觸點(diǎn)。為了使W117正常工作,要求流過(guò)R1的電流不小于5mA,而R1兩端的電壓為恒定的1.25v,所以若取流過(guò)R1的電流為5mA,則R1=1.25V/5mA=250,為了滿足調(diào)節(jié)單位為0.1v,故R=0.1/5mA=20,則可以求得該網(wǎng)絡(luò)的其他電阻值。 圖3.5 W117

18、的調(diào)壓電阻網(wǎng)絡(luò)3.4.2繼電器的驅(qū)動(dòng)電路由于要驅(qū)動(dòng)8個(gè)繼電器,而繼電器的吸合電流可達(dá)10mA,觸點(diǎn)吸合時(shí)間為12ms,所以每個(gè)繼電器可采用一個(gè)晶體管來(lái)驅(qū)動(dòng),不再詳細(xì)計(jì)算,具體電路如圖3.5所示。圖3.6繼電器驅(qū)動(dòng)電路3.4.3 顯示電路在顯示電路中分為靜態(tài)顯示和動(dòng)態(tài)顯示,由于本設(shè)計(jì)是要求采用三位數(shù)碼管,而靜態(tài)顯示無(wú)法滿足設(shè)計(jì)的需要,故在本設(shè)計(jì)中采用并聯(lián)動(dòng)態(tài)顯示。圖3.5是動(dòng)態(tài)顯示的原理圖,只要有一位接通過(guò)單片機(jī)的掃描讓每位選線輪流選通,同時(shí)在段選線上送出該位要顯示的段位碼。圖3.7系統(tǒng)顯示電路3.5 鍵盤電路鍵盤控制電路分為獨(dú)立式和矩陣式,由于本設(shè)計(jì)的要求不是特別的高,加上獨(dú)立式按鍵結(jié)構(gòu)電路簡(jiǎn)

19、單易于實(shí)現(xiàn)的特點(diǎn),所以在本設(shè)計(jì)中采用獨(dú)立式按鍵結(jié)構(gòu)。電路結(jié)構(gòu)如圖3.6。圖3.8獨(dú)立按鍵式結(jié)構(gòu)圖2. 系統(tǒng)軟件設(shè)計(jì)4.1. 主程序開(kāi)始初始化端口,輸出預(yù)設(shè)值掃描鍵盤端口,判斷是否有操作讀取按鍵情況,執(zhí)行電壓設(shè)置程序顯示當(dāng)前輸出電壓返回C語(yǔ)言程序如下:#include <REGX51.H>Unsigned charled15=0x6f,0x7f,0x07,0x7d,0x6d,0x66,0x4f,0x5b,0x06,0x3f,0x39,0x52,0x64,0x37,0x0e;/ 9 8 76 5 4 32 1 0 void main()/主函數(shù)void ledout(unsigned

20、char ATA,char add,char j);void delays(unsigned char t);unsigned char odata,key,temp;unsigned int F,f=0x100; /初始頻率char add=0,j=1; odata = 155; /電壓初值為5v j=1; while(1) for(F=f;F<0x110;F+) P3=0xff; key=P3; if (key!=0xff) unsigned char i; for(i=0;i<10;i+) ledout(odata,add,j); delays(10); ledout(oda

21、ta,add,-j); delays(10); key=P3; if (key=0xff) break; for(i=0;i<10;i+) ledout(odata,add,j); delays(10); ledout(odata,add,-j); delays(10); if(add=0) temp=odata; /記錄當(dāng)前電壓值switch(key) case 0x7f: if (add=0) if(odata>57) odata=odata-2; /電壓加0.1V break; case 0xbf: if (add=0) if(odata<255) odata=odat

22、a+2; break; case 0xdf: if(add=0) /三角波 f=0x100; /1時(shí)為頻率最高,最大允許256 odata=155; add=1; else if(add=1) /方波 /f=f*200; /頻率跟隨 f=0x100; odata=55; add=200; else if(add=-1) /f=f*200; f=0x100; odata=55; add=200; else if(add=200) /直流電壓 add=0; odata=temp;/電壓記憶恢復(fù) else add=0; odata=temp; break;case 0xef: if(add!=0)

23、f=f/2; /頻率頻率加 if (f=1) if(add=1) f=0x100; else f=0x3200; break; if(odata=255) add=-add; odata=odata+add; if(odata=55) add=-add; P0=odata; /送數(shù)據(jù) ledout(odata,add,j); /送顯示 j=-j; void ledout(unsigned char ATA,char add,char j)unsigned char DH,DL,temp;switch(add) case 0: temp=(ATA-55)/2)-1; /十進(jìn)制轉(zhuǎn)換 DH=temp

24、/10; DL=temp%10; break; case 1: DH=11; DL=12; break; case -1: DH=11; DL=12; break; case 200: DH=13; DL=14; break; case -200: DH=13; DL=14; break; switch(j) case 1: P1=ledDH; /送數(shù)碼管高位顯示 P1_7=1; /動(dòng)態(tài)顯示 break; case -1: P1=ledDL; /送數(shù)碼管低位顯示 break; void delays(unsigned char t) unsigned char s; for(;t>0;t

25、-) for(s=0;s<255;s+); 4.2. 掃描鍵盤程序開(kāi)始將P1.0和P1.1設(shè)置成功能輸入口讀取p1口輸入狀態(tài)P1口屏蔽高5位,賦值key_valu=?若key_valu=6S1鍵按下若key_valu=5S2鍵按下若key_valu=4S3鍵按下否則檢查錯(cuò)誤退出S1件對(duì)應(yīng)子程序S2件對(duì)應(yīng)子程序S3件對(duì)應(yīng)子程序結(jié)束C語(yǔ)言程序如下:#include <reg51.h>void key_deal(void)unsigned char Key_value; / 按鍵鍵值P1 |= 0x07;/ P1.0P1.2為輸入端口Key_value = P1 & 07;

26、/ 屏蔽P1口高5位,取鍵值switch (Key_value)case 6: Sub_S1();break;/ S1按鍵按下,執(zhí)行對(duì)應(yīng)子程序 case 5: Sub_S2();break;/ S2按鍵按下,執(zhí)行對(duì)應(yīng)子程序 case 3: Sub_S3();break;/ S3按鍵按下,執(zhí)行對(duì)應(yīng)子程序 default: break;4.3. 顯示驅(qū)動(dòng)程序開(kāi)始程序初始化是否是狀態(tài)s1是否是狀態(tài)s2啟動(dòng)狀態(tài)s2是否是狀態(tài)s3啟動(dòng)狀態(tài)s3啟動(dòng)狀態(tài)s1按鍵處理按鍵是否按下返回K1按鍵K2按鍵S2+,S3-進(jìn)入時(shí)間調(diào)整返回K3按鍵循環(huán)執(zhí)行S2循環(huán)執(zhí)行S1C語(yǔ)言程序如下:#include <reg5

27、1.h>#include <absacc.h>#include <Adc_Temp.h>code uchar disp_seg=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7c,0x39,0x5f,0x79,0x71,0x40,0x00,0xff,0xf3;/ 0 1 2 3 4 5 6 7 8 9 a b c d e f - 全滅, 全亮, P./定義顯示緩沖區(qū)(由定時(shí)中斷程序自動(dòng)掃描)uchar DispBuf8; /8位數(shù)碼管顯示的數(shù)字碼(顯示段碼的偏移量)uchar bdata key_

28、flag=0; /定義鍵盤狀態(tài)標(biāo)志位sbit key_first_flag = key_flag0;sbit key_delay_flag = key_flag1;sbit key_valid_flag = key_flag2;uchar key_value; /key_value=0: no key, or key_value=1-8 stand for key1-key8void DispInit(); /數(shù)碼管掃描顯示初始化void DispClear(); /清除數(shù)碼管的所有顯示void DispP(); /顯示"P. "/在數(shù)碼管位置x(07)處顯示字符c(僅限十

29、進(jìn)制數(shù)字和減號(hào))/void DispChar(unsigned char x, unsigned char y);/顯示指定位置x(07)處的小數(shù)點(diǎn)/void DispDotOn(unsigned char x);/*函數(shù):T1INTSVC()功能:定時(shí)器T0的中斷服務(wù)函數(shù) */void T1INTSVC() interrupt 1 using 1 / interrupt 3 for T1 code uchar com = 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80; static uchar key_value_temp, n = 0; uchar key

30、_in,i; TR0 = 0; TH0 = 0xf8; / 0xfc66:1ms for 11.0592MHz, oxf8cd:2ms, 0xB800:20ms, 0x4C00:50ms TL0 = 0xcd; P1 = 0xFF; /暫停顯示 if ( (DispBufn&0x80) = 0x80 ) /帶小數(shù)點(diǎn)顯示 DispBufn = DispBufn&0x7f; LED_OUT = (disp_segDispBufn | 0x80);/更新掃描數(shù)據(jù) else LED_OUT = disp_segDispBufn;/更新掃描數(shù)據(jù) P1 = comn; /重新顯示 if(k

31、ey_first_flag=0) key_in = KEY_IN; if(key_in!=0xff) /初次檢測(cè)到有鍵按下 for(i=0; i<n; i+) /n:當(dāng)前掃描鍵 key_in = key_in>>1; if( (key_in&0x01)=0x00 )/若鍵按下,對(duì)應(yīng)KEY_IN的輸入口讀入狀態(tài)位為0 key_first_flag = 1;/置標(biāo)志 key_value_temp = i;/暫存 else if(key_delay_flag=0 && n=key_value_temp) key_in = KEY_IN; for(i=0; i

32、<n; i+) key_in = key_in>>1; if( (key_in&0x01)=0x00 ) /經(jīng)過(guò)一輪掃描后(8*2ms=16ms),第一次按下的鍵仍被按下 key_delay_flag = 1; else if(key_delay_flag=1 && n=key_value_temp) key_in = KEY_IN; for(i=0; i<n; i+) key_in = key_in>>1; if( (key_in&0x01)=0x01 ) /再經(jīng)過(guò)一輪掃描后,按鍵已釋放:則為有效鍵 key_valid_fl

33、ag = 1; key_value = key_value_temp+1; n+; n &= 0x07; -/-; TR0 = 1;/*函數(shù):DispClear()功能:清除數(shù)碼管的所有顯示*/void DispClear() unsigned char i; for ( i=0; i<8; i+ ) DispBuf = 0x11; /0x00; /*函數(shù):DispP()功能:顯示"P. ",即最高為顯示"P.",其余顯示滅*/void DispP() DispClear(); DispBuf7 = 0x13; /0xf3;/*函數(shù):Dis

34、pChar()功能:在數(shù)碼管上顯示字符參數(shù): x:數(shù)碼管的坐標(biāo)位置(07,0為高位,7為低位) y:要顯示的字符,c=019(僅限十進(jìn)制數(shù)字和減號(hào))*/*void DispChar(unsigned char x, unsigned char y) /,-,全滅,全亮的數(shù)碼管字型數(shù)據(jù)/ code unsigned char Tab = 0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x40,0x00,0xff; DispBufx = disp_segy; /Tabx;*/*函數(shù):DispDotOn()功能:顯示指定位的小數(shù)點(diǎn)參數(shù):x為數(shù)碼管

35、坐標(biāo)*/*void DispDotOn(unsigned char x) DispBuf7-x |= 0x80;*/*函數(shù):DispInit()功能:數(shù)碼管掃描顯示初始化*/void DispInit() DispClear(); EA = 0; TMOD &= 0xf0; /0x0F; TMOD |= 0x01; /0x10; TH0 = 0xf8; / 0xfc66:1ms for 11.0592MHz, oxf8cd:2ms, 0xB800:20ms, 0x4C00:50ms TL0 = 0xcd; TR0 = 1; ET0 = 1; EA = 1;3. 總 結(jié)在本次設(shè)計(jì)的過(guò)程中

36、,我發(fā)現(xiàn)很多的問(wèn)題,給我的感覺(jué)就是很難,很不順手,看似很簡(jiǎn)單的電路,要?jiǎng)邮职阉o設(shè)計(jì)出來(lái),是很難的一件事,主要原因是我沒(méi)有經(jīng)常動(dòng)手設(shè)計(jì)過(guò)電路,還有資料的查找也是一大難題,這就要求我在以后的學(xué)習(xí)中,應(yīng)該注意到這一點(diǎn),更重要的是我要學(xué)會(huì)把從書本中學(xué)到的知識(shí)和實(shí)際的電路聯(lián)系起來(lái),這不論是對(duì)我以后就業(yè)還是學(xué)習(xí),都會(huì)起到很大的促進(jìn)和幫助,我相信,通過(guò)這次的畢業(yè)設(shè)計(jì),在以后的學(xué)習(xí)中我會(huì)更加努力,力爭(zhēng)把這專業(yè)學(xué)好,學(xué)精。在本次設(shè)計(jì)過(guò)程中,對(duì)紋波也沒(méi)有提出嚴(yán)格要求,所以常用的穩(wěn)壓集成電路就可以滿足要求。在電路中采用了模擬器件和數(shù)字器件所以需要+5V、和-15V 電源供電。本設(shè)計(jì)輸出的電壓穩(wěn)壓精度高,可以用在對(duì)直流電壓要求較高的設(shè)備上,或在科研實(shí)驗(yàn)室中當(dāng)作實(shí)驗(yàn)電源使用。同時(shí),通過(guò)本次畢業(yè)設(shè)計(jì),鞏固了我學(xué)習(xí)過(guò)的專業(yè)知識(shí),也使我把理論與實(shí)踐從真正意義上相結(jié)合了起來(lái);考驗(yàn)了我借助互聯(lián)網(wǎng)絡(luò)搜集、查閱相關(guān)文獻(xiàn)資料和組織材料的綜合能力;從中可以自我測(cè)驗(yàn),認(rèn)識(shí)到自己哪方面有欠缺、不足,以便于在日后的學(xué)習(xí)中得以改進(jìn)、提高;通過(guò)使用電路CAD 軟件Multisim , 也讓我了解到計(jì)算機(jī)輔助設(shè)計(jì)

溫馨提示

  • 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)論