STM32數(shù)控電流源畢業(yè)論文_第1頁
STM32數(shù)控電流源畢業(yè)論文_第2頁
STM32數(shù)控電流源畢業(yè)論文_第3頁
STM32數(shù)控電流源畢業(yè)論文_第4頁
STM32數(shù)控電流源畢業(yè)論文_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

畢業(yè)設(shè)計(jì)STM32數(shù)控電流源畢業(yè)論文基于STM32的數(shù)控電流源設(shè)計(jì)摘要電源技術(shù)尤其是數(shù)控電源技術(shù)是一門實(shí)踐性很強(qiáng)的工程技術(shù),服務(wù)于各個(gè)行業(yè)。隨著計(jì)算機(jī)和通訊技術(shù)發(fā)展而帶來的現(xiàn)代信息技術(shù)革命,給電源技術(shù)提供了廣闊的發(fā)展前景,同時(shí)也給電源技術(shù)提出了更高的要求?,F(xiàn)在市場(chǎng)上數(shù)控電流源的存在輸出精度不高,功率密度比較低,帶負(fù)載能力不強(qiáng),體積大,價(jià)格較高,操作繁瑣,工作狀態(tài)不穩(wěn)定等弊端,因此數(shù)控電源的主要發(fā)展方向是針對(duì)上述缺點(diǎn)不斷改善。數(shù)字化智能電源模塊是針對(duì)傳統(tǒng)智能電源模塊的不足提出的,數(shù)字化能夠減少生產(chǎn)過程中的不確定因素和人為參與的環(huán)節(jié)數(shù),有效地解決電源模塊中諸如可靠性、智能化和產(chǎn)品一致性等工程問題,極大地提高生產(chǎn)效率和產(chǎn)品的可維護(hù)性。所以,高精度的數(shù)控直流電流源有很大的發(fā)展空間。在本設(shè)計(jì)中將采用STM32單片機(jī)為系統(tǒng)的主控制器,能夠?qū)崿F(xiàn)多功能、寬范圍、可調(diào)節(jié)等諸多功能,為更好的實(shí)現(xiàn)恒流提供條件,完成數(shù)控電流源的設(shè)計(jì)。STM32片內(nèi)集成的A/D轉(zhuǎn)換器、D/A轉(zhuǎn)換器和PWM發(fā)生模塊降低了系統(tǒng)復(fù)雜程度,使系統(tǒng)簡(jiǎn)單,可靠,低價(jià)。關(guān)鍵字:電源技術(shù);數(shù)控電流源;STM32;數(shù)字化

ABSTRACTPowertechnology,especiallyCNCpowertechnologyisoneengineeringtechnologywithstrongpractice,itservicesforeveryfield.Moderninformationtechnologyrevolution,thatbroughtwiththedevelopmentofcomputerandcommunicationstechnology,providesabroaddevelopmentprospects,butalsomakesahigherdemandsinpowersupplytechnology.AtthepresenttimeCNCcurrentsourceonthemarketexistssomeshortcomings,suchasoutputprecisionisnothigh,thepowerdensityisrelativelylow,capacitywithaloadisnotstrong,bulky,expensive,complicatedoperations,instabilityworkingstateandsoon.SothemajordevelopdirectionofCNCpowerisspecializedfortheseshortcomings,andtoreformthem.Digitalintelligentpowermodulesismadeagainstthelackingoftraditionalintelligentpowermodules,digitizecanreduceuncertaintyandhumanparticipatingquantityoflinksintheproductionprocess,andresolvesomeengineeringproblemseffectively,suchasreliability,intelligence,productconsistencyproblemandsoon,andgreatlyimproveproductionefficiencyandmaintainabilityoftheproduct.Therefore,high-accuracyCNCDCcurrentsourcehasalotofspacetodevelop.Inthisdesign,STM32MCUwillbeusedasthemaincontrollerofthewholesystem,itcanachievethemulti-function,widerange,adjustable,andmanyotherfunctions,providingbetterconditionsforachievingconstantcurrentandcompletingthedesignofCNCcurrentsource.ItintegratesA/Dconverter,D/AconverterandPWMmoduleinSTM32chip,thusreducingcomplexityofthesystem,keepthesystemsimple,reliableandlowprice.Keywords:Powertechnology;Numericalcontrolcurrentsource;STM32;digital目錄摘要 ⅠAbstract Ⅱ第1章 11.1數(shù)控電流源項(xiàng)目的目的和意義 11.2數(shù)控電流源在國內(nèi)外的發(fā)展概況 21.3基于STM32的數(shù)控電流源的設(shè)計(jì)的內(nèi)容 4第2章 52.1數(shù)控電流源的核心技術(shù)原理 52.2方案的總體設(shè)計(jì) 62.2.1數(shù)控電流源的主控芯片的選擇 62.2.2基于STM32的數(shù)控電流源系統(tǒng)結(jié)構(gòu) 82.2.3恒流源模塊電路的方案討論 92.3本章小結(jié) 9第3章基于STM32數(shù)控電流源的硬件電路設(shè)計(jì) 103.1恒流源模塊電路的設(shè)計(jì)方案 103.1.1以LM350A為恒流源模塊的核心元件的恒流源電路 103.1.2數(shù)控寬范圍調(diào)整、大電流輸出恒流源電路 143.2數(shù)控部分 163.3供電電源 183.3.1三端穩(wěn)壓器 183.3.2供電電源電路 193.4本章小結(jié) 20第4章 214.1主程序設(shè)計(jì) 214.2負(fù)載電流取樣子程序設(shè)計(jì) 224.3鍵盤中斷程序設(shè)計(jì) 234.4LCD1062顯示程序設(shè)計(jì) 244.5本章小結(jié) 24結(jié)束語 25參考文獻(xiàn) 26致謝 28附錄 29附錄A. 29附錄B 31 第1章引言1.1數(shù)控電流源項(xiàng)目的目的和意義電源技術(shù)尤其是數(shù)控電源技術(shù)是一門實(shí)踐性很強(qiáng)的工程技術(shù),服務(wù)于各個(gè)行業(yè)。當(dāng)今電源技術(shù)融合了電氣、電子、系統(tǒng)集成、控制理論、材料等諸多科學(xué)領(lǐng)域。隨著計(jì)算機(jī)和通訊技術(shù)發(fā)展而帶來的現(xiàn)代信息技術(shù)革命,給電源技術(shù)提供了廣闊的發(fā)展前景,同時(shí)也給電源技術(shù)提出了更高的要求。隨著數(shù)控電源在電子裝置中的普遍使用,普通電源在工作時(shí)產(chǎn)生的誤差,會(huì)影響整個(gè)系統(tǒng)的精確度,電源在使用時(shí)會(huì)造成許多不良后果。世界各國紛紛對(duì)電源產(chǎn)品提出了不同的要求并制定了一系列產(chǎn)品精度標(biāo)準(zhǔn),達(dá)標(biāo)后才能夠進(jìn)入市場(chǎng)。隨著經(jīng)濟(jì)全球化的發(fā)展,滿足國際標(biāo)準(zhǔn)的電源產(chǎn)品才能夠獲得通行證。數(shù)控電源是從80年代才開始發(fā)展起來的產(chǎn)品,期間系統(tǒng)的電力電子理論開始建立。這些理論為其后來的發(fā)展提供了良好的理論基礎(chǔ),在以后的時(shí)間里,數(shù)控電源技術(shù)開始長足的發(fā)展?,F(xiàn)在市場(chǎng)上數(shù)控電流源的存在輸出精度不高,功率密度比較低,帶負(fù)載能力不強(qiáng),體積大,價(jià)格較高,操作繁瑣,工作狀態(tài)不穩(wěn)定等弊端,因此數(shù)控電源的主要發(fā)展方向是針對(duì)上述缺點(diǎn)不斷改善。所以,高精度的數(shù)控直流電流源有很大的發(fā)展空間。單片機(jī)技術(shù)及電壓轉(zhuǎn)換模塊的出現(xiàn)為高精度數(shù)控電源的發(fā)展提供了有利條件。新的變化技術(shù)和控制理論的不斷發(fā)展,各種類型專用集成電路、數(shù)字信號(hào)處理器件的研制應(yīng)用。電源采用數(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)整即可。(4)系統(tǒng)維護(hù)方便,一旦出現(xiàn)故障,可以很方便地通過RS232接口或RS485接口或USB接口進(jìn)行調(diào)試,故障查詢,歷史記錄查詢,故障診斷,軟件修復(fù),甚至控制參數(shù)的在線修改、調(diào)試;也可以通過MODEM遠(yuǎn)程操作。(5)系統(tǒng)的一致性好,成本低,生產(chǎn)制造方便。由于控制軟件不像模擬器件那樣存在差異,所以,其一致性很好。由于采用軟件控制,控制板的體積將大大減小,生產(chǎn)成本下降。(6)易組成高可靠性的多模塊逆變電源并聯(lián)運(yùn)行系統(tǒng)。為了得到高性能的并聯(lián)運(yùn)行逆變電源系統(tǒng),每個(gè)并聯(lián)運(yùn)行的逆變電源單元模塊都采用全數(shù)字化控制,易于在模塊之間更好地進(jìn)行均流控制和通訊或者在模塊中實(shí)現(xiàn)復(fù)雜的均流控制算法(不需要通訊),從而實(shí)現(xiàn)高可靠性、高冗余度的逆變電源并聯(lián)運(yùn)行系統(tǒng)。本課題主要研究的是基于你單片機(jī)的數(shù)控直流恒流源的設(shè)計(jì),恒流源是能夠向負(fù)載提供恒定電流的電源,因此恒流源的應(yīng)用范圍非常廣泛,并且在許多情況下是必不可少的。例如,在用通常的充電器對(duì)蓄電池充電時(shí),隨著蓄電池端電壓的逐漸升高,充電電流就會(huì)相應(yīng)減少。為了保證恒流充電,必須隨時(shí)提高充電器的輸出電壓,但采用恒流源充電后就可以不必調(diào)整其輸出電壓,從而使勞動(dòng)強(qiáng)度降低,生產(chǎn)效率得到了提高。恒流源還被廣泛用于測(cè)量電路中,例如,電阻器阻值的測(cè)量和分級(jí),電纜電阻的測(cè)量等,且電流越穩(wěn)定,測(cè)量就越準(zhǔn)確。它既可以為各種放大電路提供偏流以穩(wěn)定其靜態(tài)工作點(diǎn),又可以作為其有源負(fù)載,以提高放大倍數(shù),并且在差動(dòng)放大電路、脈沖產(chǎn)生電路中得到了廣泛應(yīng)用。此外,線性掃描鋸齒波的獲得,有線通信遠(yuǎn)供電源、電泳、電解、電鍍等化學(xué)加工裝置電源,電子束加工機(jī)、離子注入機(jī)等電子光學(xué)設(shè)備中的供電電源也都必須應(yīng)用恒流源。隨著電力電子技術(shù)的不斷發(fā)展,數(shù)控電源在以往使用線性電源的場(chǎng)合中也獲得日益廣泛的應(yīng)用。在一些工業(yè)場(chǎng)合需要提供電壓源和電流源,而且要求范圍廣、紋波低。如果采用多臺(tái)功能單一的電源設(shè)備,體積和重量都會(huì)增加很多,不經(jīng)濟(jì),也不能滿足工作的要求。因此研究開發(fā)多功能、寬范圍、可調(diào)節(jié)的數(shù)控電源很有意義。1.2數(shù)控電流源在國內(nèi)外的發(fā)展概況在我國,以電力電子學(xué)為核心技術(shù)的電源產(chǎn)業(yè),從二十世紀(jì)60年代中期開始形成,到了90年代以來,隨著對(duì)系統(tǒng)更高效率和更低功耗的要求,電信與數(shù)據(jù)通信設(shè)備的技術(shù)更新推動(dòng)電源行業(yè)中直流/直流轉(zhuǎn)換器向更高靈活性和智能化的方向發(fā)展,電源產(chǎn)業(yè)進(jìn)入快速發(fā)展期。一方面,電源產(chǎn)業(yè)規(guī)模的發(fā)展在加快;另一方面,在國家自然科學(xué)基金的資助下或創(chuàng)新意識(shí)指導(dǎo)下,我國電力電子技術(shù)的研究從吸收消化和一般跟蹤發(fā)展到前沿跟蹤和基礎(chǔ)創(chuàng)新,電源產(chǎn)業(yè)涌現(xiàn)了一些技術(shù)難度較大,具有國際先進(jìn)水平產(chǎn)品的產(chǎn)品而且還生產(chǎn)了一大批具有代表性的研究成果和產(chǎn)品。目前國內(nèi)還開展了跟蹤國際多方面前沿性課題的研究或基礎(chǔ)創(chuàng)新研究。但是我國電源產(chǎn)業(yè)與發(fā)達(dá)國家相比,存在著很大的差距和不足。在電源產(chǎn)品的質(zhì)量、可靠性、開發(fā)投入、生產(chǎn)規(guī)模、工藝水平、先進(jìn)檢測(cè)設(shè)備、智能化、網(wǎng)絡(luò)化、持續(xù)創(chuàng)新能力等方面的差距為10-15年,尤其在實(shí)現(xiàn)直流恒流的智能化、網(wǎng)絡(luò)化方面的研究不是很多。目前國內(nèi)在這兩方面研究比較多的是城都電子科技大學(xué)和廣州華南理工大學(xué),主要是利用單片機(jī)和可編程系統(tǒng)器件(PSD)來控制開關(guān)直流穩(wěn)壓電源或數(shù)字化電壓?jiǎn)卧_(dá)到數(shù)控的目的,但和國外的比較起來,效果不是很理想,還存在很大的差距和不足?,F(xiàn)今,隨著數(shù)控直流電源技術(shù)的飛躍發(fā)展,整流系統(tǒng)由以前的分路原件和集成電路發(fā)展為微機(jī)控制,從而是直流電源智能化,具有遙測(cè)、遙信和遙控的三遙功能。目前,全國的電源及其配件的生產(chǎn)銷售企業(yè)有4000家以上,產(chǎn)值由300-400億元,但國內(nèi)企業(yè)銷售的數(shù)控直流穩(wěn)壓電源大多是代理日本和臺(tái)灣的產(chǎn)品,國內(nèi)廠家生產(chǎn)的直流穩(wěn)壓電源雖然也在向數(shù)字化方向發(fā)展,但多限于對(duì)輸出顯示實(shí)現(xiàn)數(shù)碼顯示,或?qū)崿F(xiàn)多組數(shù)值預(yù)置。總體來說,國內(nèi)直流恒流源技術(shù)在實(shí)現(xiàn)智能化等方面相對(duì)落后,面對(duì)吉列的國際競(jìng)爭(zhēng),是個(gè)嚴(yán)重的挑戰(zhàn)。上海江柏電子科技有限公司是一家專注生產(chǎn)與研發(fā),精密線性高速可編程直流源,及錳銅分流器取樣電阻,公司全系列可編程直流電源供應(yīng)器具有雙重性能。即是恒壓源,又是恒流源,是國內(nèi)精密直流電源主要生產(chǎn)商與供應(yīng)商之一,可滿足不同用戶電源的要求所需。精密線性高速可編程直流電源采用線性結(jié)構(gòu)方式制作,運(yùn)用高速CPU處理器及16bitAD與DA數(shù)字轉(zhuǎn)換以提供精準(zhǔn)的數(shù)字化測(cè)量,產(chǎn)品性能卓越,是國內(nèi)眾多客戶所需的最佳選擇,能提供高頻場(chǎng)所直流所需之要求,產(chǎn)品穩(wěn)定性高,提供電壓1mV分辨率及電流分辨率為1mA。廣泛應(yīng)用于工業(yè)控制、通訊通信、軍工、科研和教學(xué)及LED照明測(cè)試等領(lǐng)域。分流器廣泛用于擴(kuò)大儀表測(cè)量電流范圍,有固定式定制分流器和精密合金電阻器,均可用于通訊系統(tǒng)、電子整機(jī)、自動(dòng)化控制的電源等回路作限流,均流取樣檢測(cè)。隨著電子技術(shù)的發(fā)展,恒流源已經(jīng)廣泛地應(yīng)用在各個(gè)領(lǐng)域。目前市面上較成熟的恒流源輸出或者在mA量級(jí),或者在百安培量級(jí),不能滿足所有輸出段位的需求。許多輸出電流不是很大、要求穩(wěn)定度和輸出精度較高的恒流源還是由使用者自行研制的。恒流源在現(xiàn)代化工農(nóng)業(yè)及科研生產(chǎn)的運(yùn)用中正朝著體積小、精度高、穩(wěn)定性好、使用靈活的方向發(fā)展。急于功率運(yùn)算放大器的恒流源在理論上具有體積小、精度高、穩(wěn)定性好、可擴(kuò)展等優(yōu)點(diǎn),輸出電流范圍在按培量級(jí)適用于小型電動(dòng)機(jī)、線圈等的驅(qū)動(dòng)。但還需要通過實(shí)驗(yàn)做進(jìn)一步深入的研究,這對(duì)于恒流源的發(fā)展具有相當(dāng)現(xiàn)實(shí)的意義。而且數(shù)字化智能電源模塊是針對(duì)傳統(tǒng)智能電源模塊的不足提出的,數(shù)字化能夠減少生產(chǎn)過程中的不確定因素和認(rèn)為參與的環(huán)節(jié),有效地解決了電源模塊中諸如可靠性、智能化和產(chǎn)品一致性等工程問題,極大地提高了生產(chǎn)效率和產(chǎn)品的可靠性。性能好的電子設(shè)備,首先離不開穩(wěn)定的電源,電源穩(wěn)定度越高,設(shè)備和外圍條件越優(yōu)越,那么設(shè)備的壽命更長?;诖耍藗儗?duì)數(shù)控恒定電流器件的需求越來越迫切。當(dāng)今社會(huì),數(shù)控恒壓技術(shù)已經(jīng)很成熟,但是恒流方面特別是數(shù)控恒流的技術(shù)才剛剛起步,有待發(fā)展,高性能的數(shù)控恒流器件的開發(fā)和應(yīng)用存在巨大的發(fā)展空間。1.3基于STM32的數(shù)控電流源的設(shè)計(jì)的內(nèi)容1、基本內(nèi)容設(shè)計(jì)一個(gè)基于STM32的數(shù)控電流源,該設(shè)計(jì)包括電流源模塊、測(cè)量模塊、供電模塊和數(shù)控模塊等,電流源模塊采用了集成運(yùn)放和大功率復(fù)合管構(gòu)成的閉環(huán)電流深度負(fù)反饋電路。由單片機(jī)控制高精度D/A的輸出電壓送入電流模塊,可完成對(duì)輸出電流的小步進(jìn)控制。測(cè)量模塊是由雙積分型高精度A/D來測(cè)量取樣電阻的電壓值進(jìn)而轉(zhuǎn)化為電流值來完成。2、預(yù)期達(dá)到的目標(biāo)(1)可輸出一路電流,范圍100mA-2000mA,精度1%;(2)具有良好的人機(jī)界面;(3)對(duì)輸出的電流進(jìn)行反饋測(cè)量,以對(duì)其進(jìn)行實(shí)時(shí)校準(zhǔn);(4)V/I轉(zhuǎn)換模塊采用高效MOS管電路。3、擬解決的主要問題(1)如何實(shí)現(xiàn)恒流;(2)輸出電流的步進(jìn)操作和設(shè)定操作的實(shí)現(xiàn);(3)主程序的編寫。第2章基于STM32的數(shù)控電流源的整體方案設(shè)計(jì)2.1數(shù)控電流源的核心技術(shù)原理恒流電源是為電流型負(fù)載提供穩(wěn)定電流的重要儀器。常見的恒流源電路方案有:脈沖調(diào)寬式、線性負(fù)反饋方式等。脈沖調(diào)寬式(開關(guān)式)恒流源通過改變調(diào)整器的工作脈沖寬度達(dá)到恒流的目的。目前廣泛應(yīng)用于空間技術(shù)、計(jì)算機(jī)、通訊、家電等領(lǐng)域中。這種恒流源調(diào)整器工作在開關(guān)狀態(tài)、功率損耗小、效率高達(dá)70%~95%,但紋波電流大,輻射干擾強(qiáng)、恒流精度低。線性負(fù)反饋式恒流源通過改變調(diào)整器的工作電壓,使其輸出電流保持恒定,具有失真小、穩(wěn)定度高、紋波小等特點(diǎn),但功率損耗大、效率較低,主要應(yīng)用于高精度場(chǎng)合。方案一:此方案采用傳統(tǒng)的調(diào)整管方案,主要特點(diǎn)在于使用一套十進(jìn)制計(jì)數(shù)器完成系統(tǒng)的控制功能,一方面完成電壓的譯碼顯示,另一方面其輸出作為EPROM的地址輸入,而由EPROM的輸出經(jīng)D/A變換后去控制誤差放大的基準(zhǔn)電壓,以控制輸出步進(jìn)。方案二:采用STM32系列單片機(jī)作為整機(jī)的控制單元,通過改變輸入數(shù)字量來改變輸出電壓值,從而使輸出功率管的基極電壓發(fā)生變化,間接地改變輸出電流的大小。為了能夠使系統(tǒng)具備檢測(cè)實(shí)際輸出電流值的大小,可以經(jīng)過片內(nèi)ADC進(jìn)行模數(shù)轉(zhuǎn)換,間接用單片機(jī)實(shí)時(shí)對(duì)電流進(jìn)行采樣,然后進(jìn)行數(shù)據(jù)處理及顯示。采用軟件方法來解決數(shù)據(jù)的預(yù)置以及電流的步進(jìn)控制,使系統(tǒng)硬件更加簡(jiǎn)潔,各類功能易于實(shí)現(xiàn)本系統(tǒng)以直流電源為核心,利用STM32系列單片機(jī)為主控制器,通過鍵盤來設(shè)置直流電源的輸出電流,設(shè)置步進(jìn)等級(jí)可達(dá)0.1V,并可由液晶顯示來顯示實(shí)際輸出電流值和電流設(shè)定值。利用單片機(jī)程控輸出數(shù)字信號(hào),經(jīng)過片內(nèi)D/A轉(zhuǎn)換器輸出模擬量,再經(jīng)過運(yùn)算放大器隔離放大,控制輸出功率管的基極,隨著功率管基極電電流的變化而輸出不同的電流。單片機(jī)系統(tǒng)還兼顧對(duì)恒流源進(jìn)行實(shí)時(shí)監(jiān)控,通過A/D轉(zhuǎn)換,實(shí)時(shí)把模擬量轉(zhuǎn)化為數(shù)據(jù)量,經(jīng)單片機(jī)顯示,通過硬件的的反饋和比較環(huán)節(jié),使電流更加穩(wěn)定,構(gòu)成穩(wěn)定的壓控電流源。相比較兩種方案,第一種方案已經(jīng)成熟,但其操作繁瑣復(fù)雜,需要對(duì)EPROM的地址進(jìn)行大量的操作,不利于簡(jiǎn)化操作;第二種方案的控制相對(duì)較為簡(jiǎn)單,用戶操作也較第一種方案簡(jiǎn)單,且STM32的功能強(qiáng)大,有利于進(jìn)行功能的擴(kuò)展。綜上所述,本設(shè)計(jì)的方案即定為第二種方案,將選擇采用STM32單片機(jī)為系統(tǒng)的主控制器的壓控電流方式。2.2方案的總體設(shè)計(jì)2.2.1數(shù)控電流源主控芯片的選擇數(shù)控電流源的主控芯片的性能將決定數(shù)控電流源系統(tǒng)功能優(yōu)劣和能否擴(kuò)展更多功能,本設(shè)計(jì)里將考慮到兩種芯片,一種是較易于掌握的51系列單片機(jī),一種是功能更強(qiáng)更全面的,性能更好的STM32系列單片機(jī)。下面將對(duì)兩種方案進(jìn)行對(duì)比,選擇一種更符合本設(shè)計(jì)的的方案。方案一:AT89S51是一個(gè)低功耗,高性能CMOS8位單片機(jī),片內(nèi)含4kBytesISP(In-systemprogrammable)的可反復(fù)擦寫1000次的Flash只讀程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISPFlash存儲(chǔ)單元,主要特點(diǎn)如下:1、4kBytesFlash片內(nèi)程序存儲(chǔ)器;2、128bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM);3、32個(gè)外部雙向輸入/輸出(I/O)口;4、5個(gè)中斷優(yōu)先級(jí)、2層中斷嵌套中斷;5、6個(gè)中斷源;6、2個(gè)16位可編程定時(shí)器/計(jì)數(shù)器;7、2個(gè)全雙工串行通信口;8、看門狗(WDT)電路;9、片內(nèi)振蕩器和時(shí)鐘電路;10、與MCS-51兼容;11、全靜態(tài)工作:0Hz-33MHz;12、三級(jí)程序存儲(chǔ)器保密鎖定;13、可編程串行通道;14、低功耗的閑置和掉電模式。AT89S51在眾多嵌入式控制應(yīng)用系統(tǒng)中得到廣泛應(yīng)用。作為初學(xué)者是很好的入門工具,被大家所熟悉,上手快,節(jié)約開發(fā)時(shí)間。圖2.1AT89S51芯片方案二:使用基于Cortex-M3處理器內(nèi)核的STM32微處理器,其主要特點(diǎn)如下:1、Thumb-2指令集架構(gòu)(ISA)的子集。2、哈佛處理器架構(gòu),在加載/存儲(chǔ)數(shù)據(jù)的同時(shí)能夠執(zhí)行指令取指。3、三級(jí)流水線。4、32位單周期乘法。5、具備硬件除法。6、Thumb狀態(tài)和調(diào)試狀態(tài)。7、處理模式和線程模式。8、ISR的低延遲進(jìn)入和退出。9、可中斷-可繼續(xù)的LDM/STM,PUSH/POP。10、ARMv6類型BE8/LE支持。11、ARMv6非對(duì)齊訪問。12、分支預(yù)測(cè)功能基于Cortex-M3處理器內(nèi)核的STM32微處理器,以其高性能、低成本在眾多MCU中占有舉足輕重的地位。由于使用嵌入式系統(tǒng)將為整個(gè)硬件電路的設(shè)計(jì)帶來極大簡(jiǎn)化,如不再考慮過壓保護(hù)電路、過流保護(hù)電路。此外,STM32F103不但速度快,內(nèi)部的資源極為豐富,如64引腳STM32F103RC有2個(gè)12位ADC,比單獨(dú)使用一個(gè)ADC要便宜近一半。綜上所述,基于STM32的功能強(qiáng)大,此次設(shè)計(jì)確定使用基于Cortex-M3處理器內(nèi)核的增強(qiáng)型STM32微處理器:STM32F103VET6-LQFP100。該型號(hào)有一百個(gè)引腳,供電電壓為2-3.6V,本設(shè)計(jì)內(nèi)供電電壓為3.3V,片內(nèi)包含三個(gè)A/D(16)和一個(gè)D/A(2)(括號(hào)內(nèi)為通道數(shù)),為本設(shè)計(jì)省去了外設(shè)的A/D和D/A。圖2.2STM32F103VET6-LQFP100芯片2.2.2基于STM32的數(shù)控電流源系統(tǒng)結(jié)構(gòu)整機(jī)系統(tǒng)結(jié)構(gòu)如圖2.1所示。圖2.3數(shù)控電流源系統(tǒng)的結(jié)構(gòu)框圖本方案圍繞STM32芯片,由供電模塊、液晶顯示模塊、報(bào)警模塊、負(fù)載電流檢測(cè)模塊、恒流源模塊、按鍵模塊構(gòu)成。供電電模塊:我采用的是橋式整流結(jié)合三端穩(wěn)壓芯片的處理方法。由此得到單片機(jī)使用的3.3V電源和驅(qū)動(dòng)運(yùn)算放大器的±15V電源,該模塊中還包括為單片機(jī)內(nèi)提供參考電壓的恒定電壓源,其電路由TL431為核心器件。恒流源模塊:這個(gè)系統(tǒng)由精密運(yùn)算放大器和STM32芯片內(nèi)部12位DAC一組成,共同設(shè)定流過場(chǎng)效應(yīng)管的,同時(shí)由恒定電壓源為DAC提供恒定的參考電壓。 負(fù)載電流檢測(cè)模塊:這個(gè)模塊由STM32內(nèi)部12位ADC和自制的0.2Ω康銅電阻組成。液晶顯示模塊:主要有LCD1062組成,負(fù)責(zé)顯示參數(shù)和提供用戶服務(wù)界面。過流報(bào)警模塊:這個(gè)部分由蜂鳴器和紅色的LED指示燈組成。負(fù)責(zé)當(dāng)發(fā)生過流現(xiàn)象時(shí),給用戶報(bào)警。按鍵模塊:這是本系統(tǒng)的用戶控制方式,采用4×4鍵盤模塊。2.2.3恒流源模塊電路的方案討論:恒流源模塊是本設(shè)計(jì)的核心模塊之一,該部分電路的優(yōu)劣直接影響到輸出電流的質(zhì)量,方案有兩種:以LM350A為恒流源的核心部件的恒流源電路數(shù)控寬范圍調(diào)整、大電流輸出恒流源電路方案的具體討論將在第3章進(jìn)行討論。2.3本章小結(jié):綜上所述,通過方案的比較和芯片的比較,本設(shè)計(jì)最終確定,主控芯片采用基于Cortex-M3處理器內(nèi)核的STM32F103VET6-LQFP100微處理器,以壓控電流為控制方式,完成數(shù)控電流源系統(tǒng)的總體設(shè)計(jì)。總體電路包括:供電模塊、液晶顯示模塊、報(bào)警模塊、負(fù)載電流檢測(cè)模塊、恒流源模塊、按鍵模塊。最后完成數(shù)控電流源的系統(tǒng)框圖的設(shè)計(jì)。第3章基于STM32數(shù)控電流源的硬件電路設(shè)計(jì)3.1恒流源模塊電路的設(shè)計(jì)方案數(shù)控電流源的設(shè)計(jì)中,恒流源電路關(guān)系重大,恒流源模塊電路的好壞直接影響到數(shù)控電流源系統(tǒng)輸出電流的質(zhì)量,如果恒流源模塊電路設(shè)計(jì)不當(dāng),將會(huì)得不到穩(wěn)定的準(zhǔn)確的電流值。本節(jié)將就恒流源模塊電路的設(shè)計(jì)方案和細(xì)節(jié)進(jìn)行討論。3.1.1以LM350A為恒流源的核心元件的恒流源電路恒流源部分本身是一個(gè)獨(dú)立的線性負(fù)反饋恒流源,如圖3.1所示。圖3.1數(shù)控電流源的恒流源部分U2(LM350A)為可調(diào)穩(wěn)壓器,依靠外接電阻來調(diào)節(jié)輸出電壓,選擇精度高的電阻可保證輸出電壓的精度和穩(wěn)定性。在本設(shè)計(jì)里,LM350A為調(diào)整器,是恒流源的核心部件。負(fù)載電流經(jīng)采樣電阻R7,產(chǎn)生微弱的采樣電壓,經(jīng)過超低噪聲運(yùn)算放大器U5B同相放大。放大的電壓信號(hào)送往由U3B組成的差分放大器的負(fù)端(同時(shí)送往數(shù)控部分進(jìn)行A/D轉(zhuǎn)換)。差分放大器把負(fù)端采樣電壓與正端的數(shù)控部分設(shè)定電壓的差值進(jìn)行放大,輸出到調(diào)整器的調(diào)整端,形成閉環(huán)反饋。若有某種情況使負(fù)載電流增加,則采樣電阻上的電壓增加,使同相放大器U5B輸出電壓變大,差分放大器輸出電壓減小,調(diào)整器調(diào)整端電壓減小,調(diào)整器輸出電壓變低,使負(fù)載電流減小,從而維持了負(fù)載電流的動(dòng)態(tài)穩(wěn)定,反之亦然。可以看出,差分放大器的正端決定了負(fù)載電流的大小。若U3B正端電壓升高,則調(diào)整器調(diào)整端電壓升高,調(diào)整器輸出電壓升高,負(fù)載電流增加,同相放大器輸出增加,差分放大器負(fù)端電壓升高,直到U3B正負(fù)端電壓相等,系統(tǒng)再次動(dòng)態(tài)穩(wěn)定采樣電阻串聯(lián)在負(fù)載回路內(nèi),并由此檢測(cè)負(fù)載電流變化。因此,采樣電阻的穩(wěn)定性將直接影響到恒流源的性能,且采樣電阻還應(yīng)有足夠大的功率,否則也會(huì)影響恒流源的性能甚至燒壞。綜合以上各因素,在實(shí)際電路中選用大功率錳銅材料制成的精密電阻,其溫度系數(shù)達(dá)到(-3~+20)10-6/℃。采樣放大器U5B選用超低噪聲運(yùn)放AD797。因?yàn)樗幱陂]環(huán)反饋的第一級(jí),所以要盡量減小噪聲的影響。差分放大器U3B選用高精度運(yùn)放OP07,提供高精度的比較結(jié)果。過熱、過流、過壓保護(hù)功能由三端穩(wěn)壓芯片LM350內(nèi)部提供。為了使電路在未加負(fù)載時(shí)仍處于線性工作狀態(tài),還要有一定預(yù)負(fù)載。預(yù)負(fù)載電流一般取:IR0=IOMax/(20-50)預(yù)負(fù)載電阻R6取220Ω,功率為2W。D8是為了防止引線較長使線路中出現(xiàn)反向感應(yīng)電壓而損壞電路。加上D8可使反向感應(yīng)電壓經(jīng)過D8構(gòu)成閉合回路,從而保護(hù)電路。電路中要獲得較高精度的電流值需要有關(guān)鍵元件的精度和電路的合理性來決定,下面將對(duì)電路中關(guān)鍵元器件的選擇進(jìn)行介紹。1、調(diào)節(jié)器LM350的選擇LM350A是可調(diào)節(jié)的三端正電壓穩(wěn)壓器,在輸出電壓范圍為1.2V到33V時(shí)能提供超過3.0A的電流。此穩(wěn)壓器非常易于使用,只需要兩個(gè)外部電阻來設(shè)置輸出電壓。此外可有內(nèi)部限流,熱關(guān)斷和安全區(qū)補(bǔ)償是指基本能防止燒斷保險(xiǎn)絲。LM350服務(wù)于多種應(yīng)用場(chǎng)合,包括局部穩(wěn)壓、卡上穩(wěn)壓。通過在調(diào)節(jié)點(diǎn)和輸出之間接一個(gè)固定電阻,LM350能被用作精密的穩(wěn)流器。(1)確保3.0A輸出電流(2)輸出在1.2V到33V之間可調(diào)節(jié)(3)負(fù)載跳幀率:典型0.1%(4)電源調(diào)整率:典型值0.005%/V(5)內(nèi)部熱過載保護(hù)(6)不隨溫度變化的內(nèi)部短路電流限制(7)輸出晶體管安全區(qū)域補(bǔ)償(8)對(duì)高電壓采取浮空工作(9)標(biāo)準(zhǔn)3引腳晶體封裝(10)避免準(zhǔn)備多種固定電壓LM350A能提供極好的負(fù)載調(diào)整率,但為實(shí)現(xiàn)最優(yōu)性能需要注意幾點(diǎn)。編程電阻(本設(shè)計(jì)為R1)應(yīng)在盡可能靠近穩(wěn)壓器處連接,使與參考電壓有效串聯(lián)的線路壓降最小,避免調(diào)整率變差。本設(shè)計(jì)中LM350A作為恒流源模塊中的核心部件起到穩(wěn)流、確保輸出、調(diào)整電流、過熱、過流、過壓保護(hù)等諸多功能。設(shè)計(jì)中LM350A局部電路如圖3.2所示。圖3.2恒流源電路中LM350A局部電路2、閉環(huán)反饋的第一級(jí)運(yùn)放AD797(U5B)的選擇 作為閉環(huán)反饋的第一級(jí)的運(yùn)放,必須盡量減少噪聲對(duì)恒流源的影響。AD797是模擬器件公司推出的具有優(yōu)良噪聲特性的音頻帶運(yùn)算放大器,AD797的主要特點(diǎn)是低噪聲()、低失真度()和高的轉(zhuǎn)換速度(20V/μS),期滿功率帶寬為280kHz,它還具有輸入失調(diào)電壓為80μV(max),溫漂為1μV/℃的優(yōu)良特性。AD797的第8腳是一個(gè)為了減小失真的補(bǔ)償端,通常在該腳和輸出端之間連接一個(gè)幾十pF的電容。AD797的輸出電流較大,可達(dá)50mA(typ),對(duì)于低負(fù)載電阻和容性負(fù)載具有優(yōu)良的驅(qū)動(dòng)能力。其引腳排列圖如圖3.3所示。圖3.3AD797引腳圖由于AD797具有上述的優(yōu)良特性,相對(duì)比其他的運(yùn)放,更符合本設(shè)計(jì)的設(shè)計(jì)要求。運(yùn)用AD797時(shí)需注意,在無信號(hào)時(shí),其電流消耗稍大,達(dá)8.2mA(typ),且要有效地利用AD797的特性,就必須在低阻抗的情況下(信號(hào)源內(nèi)阻小于1KΩ)使用該運(yùn)算放大器,這是在設(shè)計(jì)中應(yīng)當(dāng)注意的。3、差分放大器OP07(U3B)的選擇恒流源要不斷校準(zhǔn)負(fù)載電流,使之與設(shè)定電流值相符。即需要不斷校準(zhǔn)U5B放大的電壓值,使之與STM32設(shè)定電流值轉(zhuǎn)換的電壓值相符,為電流源提供高精度的比較結(jié)果。高精度運(yùn)放OP07即能滿足設(shè)計(jì)的需要。OP07芯片是一種低噪聲,非斬波穩(wěn)零的雙極性運(yùn)算放大器集成電路。由于OP07具有非常低的輸入失調(diào)電壓(對(duì)于OP07A最大為25μV),所以O(shè)P07在很多應(yīng)用場(chǎng)合不需要額外的調(diào)零措施。OP07同時(shí)具有輸入偏置電流低(OP07A為±2nA)和開環(huán)增益高(對(duì)于OP07A為300V/mV)的特點(diǎn),這種低失調(diào)、高開環(huán)增益的特性使得OP07特別適用于高增益的測(cè)量設(shè)備和放大傳感器的微弱信號(hào)等方面。OP07的特點(diǎn)如下:(1)超低偏移:150μV最大。(2)低輸入偏置電流:1.8nA。(3)低失調(diào)電壓漂移:0.5μV/℃。(4)超穩(wěn)定,時(shí)間:2μV/month最大。(5)高電源電壓范圍:±3V至±22V。OP07的引腳圖如圖3.4所示。圖3.4OP07引腳圖OP07芯片引腳功能說明:

1和8為偏置平衡(調(diào)零端),2為反向輸入端,3為正向輸入端,4接電源負(fù)極,5空腳,6為輸出,7接電源正極。圖3.5OP07輸入失調(diào)電壓調(diào)零電路3.12數(shù)控寬范圍調(diào)整、大電流輸出恒流源電路設(shè)計(jì)中,通過D/A與精密運(yùn)算放大器一起設(shè)定流過場(chǎng)效應(yīng)管的,恒定電壓源為D/A提供恒定的參考電壓,這樣,只要當(dāng)場(chǎng)效應(yīng)管工作在其線性區(qū)域內(nèi),就可根據(jù)所加的柵極電壓來控制負(fù)載電流,原理如下:圖3.6中,相對(duì)于D/A輸出電壓變化而變化,而參考電壓又相對(duì)于地保持穩(wěn)定。通過簡(jiǎn)單計(jì)算可知,調(diào)整D/A輸出即可調(diào)整流過的電流,實(shí)現(xiàn)電流數(shù)控。由原理圖可知,保持恒定電流源的精密度和穩(wěn)定性,主要取決于恒定參考電壓源和的綜合精度和穩(wěn)定性。電路的優(yōu)點(diǎn)就是輸出電流大,采用高分辨率的D/A便于輸出電流的小步進(jìn)調(diào)整,但關(guān)鍵在于場(chǎng)效應(yīng)管的選擇,放大器以及高精度電阻類型的確定和阻值確定。確定上述的因素后完成的設(shè)計(jì)圖如圖3.6所示。如圖所示,電流輸出管對(duì)于電流源要采取場(chǎng)效應(yīng)管,因?yàn)槿龢O管還有一個(gè)基極電流造成集電極和發(fā)射極電流不等,從而產(chǎn)生系統(tǒng)誤差。本設(shè)計(jì)即采用如圖3.6的設(shè)計(jì),為實(shí)現(xiàn)電流的大范圍調(diào)整,的壓降不能太大,采用=1Ω的大功率精密電阻,放大器采用低成本LM324放大器(由正負(fù)電源供電,可實(shí)現(xiàn)從零調(diào)整),場(chǎng)效應(yīng)管采用60N60。當(dāng)流過60N60的電流較大時(shí),其發(fā)熱量可能會(huì)很大,可根據(jù)計(jì)算和實(shí)際情況確定其散熱片,配風(fēng)扇效果會(huì)更好。圖3.6寬范圍調(diào)整、大電流輸出恒流源核心的電路圖要防止由外部寄生參數(shù)引起的驅(qū)動(dòng)電流振蕩,這里的寄生參數(shù)是指場(chǎng)效應(yīng)管柵極電容和回路電感?;芈冯姼惺菛艠O驅(qū)動(dòng)電路中的電流所產(chǎn)生的電感。為消除分布電感引起的寄生振蕩,可以采取以下措施:(1)在印刷電路板上,盡可能縮短放大器輸出極與場(chǎng)效應(yīng)管柵極之間走線的距離,一般要嚴(yán)格控制在1cm以內(nèi),甚至更短。(2)在MOSRET的柵極與驅(qū)動(dòng)電路之間串聯(lián)一個(gè)電阻。能夠衰減柵極上出現(xiàn)的振蕩,以限制驅(qū)動(dòng)電流的峰值,防止柵極振蕩。STM32F103VET6-LQFP100芯片中內(nèi)嵌有12位D/A和A/D,可實(shí)現(xiàn)輸出電流的連續(xù)可調(diào)。由圖中可看到,負(fù)載串聯(lián)了一個(gè)檢測(cè)電阻,通過一級(jí)反饋放大電路與單片機(jī)內(nèi)嵌A/D相連,向單片機(jī)反饋負(fù)載電流,并在液晶顯示上顯示出來。圖3.7緊密基準(zhǔn)電壓源電路前面已經(jīng)描述過,圖3.6的電路的電壓由單片機(jī)設(shè)定,單片機(jī)恒定電壓源就由圖3.7的電路提供。該電路的核心器件為TL431,TL431是一個(gè)有良好的熱穩(wěn)定性能的三端可調(diào)分流基準(zhǔn)電壓源。的輸出電壓用兩個(gè)電阻就可以任意地設(shè)置從Vref(2.5V)到36V范圍內(nèi)的任何值。該器件的典型動(dòng)態(tài)阻抗為0.2Ω,在很多應(yīng)用中可以用它代替齊納二極管。TL431的特性如下:可編程輸出最高電壓為36V;電壓參考誤差:±0.4%,典型值@25℃;地動(dòng)態(tài)輸出阻抗,典型0.22Ω;負(fù)載電流能力1.0mA-100mA;等效全范圍溫度系數(shù)50ppm/℃典型;溫度補(bǔ)償操作全額定工作溫度范圍;低輸出噪聲電壓。TL431內(nèi)部方框圖如圖3.8所示。圖3.8TL431內(nèi)部方框圖數(shù)控電流源中,恒流源電路的設(shè)計(jì)是關(guān)鍵電路之一,對(duì)比兩個(gè)電路可知,第一種電路相對(duì)較復(fù)雜,對(duì)器件的要求更高,采用硬件矯正負(fù)載電流,對(duì)硬件要求更高,但在程序上的復(fù)雜程度較第二種電路簡(jiǎn)單;第二種電路較簡(jiǎn)單,對(duì)器件要求相對(duì)較低,采用軟件矯正負(fù)載電流,對(duì)硬件要求低,但對(duì)芯片和程序以及供電電路的穩(wěn)定性依賴程度非常大。但第一種電路的所輸出的電流范圍和精度都不及第二種電路輸出的電流,第二種電路的D/A如果足夠高,還可以繼續(xù)提高電路的精度,通過STM32的強(qiáng)大擴(kuò)展功能,第二種電路有更大的改進(jìn)和擴(kuò)展的空間。通過實(shí)際的完成效果的對(duì)比,本設(shè)計(jì)采用第二種電路的設(shè)計(jì)。3.2數(shù)控部分?jǐn)?shù)控部分主要由微處理器模塊、鍵盤模塊、顯示模塊。微處理器是整個(gè)數(shù)控部分的處理控制中心;片內(nèi)A/D完成模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)換;片內(nèi)D/A完成數(shù)字信號(hào)到模擬信號(hào)的轉(zhuǎn)換;鍵盤模塊給用戶提供控制接口;顯示模塊根據(jù)需要顯示相應(yīng)的電流值。數(shù)控部分主要完成以下幾個(gè)任務(wù):(1)響應(yīng)用戶的按鍵操作,保存用戶設(shè)定的電流值。(2)控制A/D按照一定的周期將采樣信號(hào)(圖3.5中U5B的輸出)數(shù)字化。(3)在微處理器內(nèi)部根據(jù)用戶設(shè)定值對(duì)采樣數(shù)據(jù)進(jìn)行處理。(4)將處理結(jié)果通過D/A轉(zhuǎn)換為模擬信號(hào),輸出到恒流源差分比較器的正端,完成數(shù)控部分對(duì)恒流源部分的控制。(5)按照用戶的需要顯示相應(yīng)的電流值。微處理器選STM32單片機(jī)。STM32是一種基于cortex-M3處理器內(nèi)核的32位微處理器。STM32處理器內(nèi)包含3個(gè)12位的ADC,滿足取樣精度及轉(zhuǎn)換精度。在輸出2000mA情況下,控制精度可達(dá)2000mA/212≈0.5mA。顯示模塊選用LCD1062液晶顯示。鍵盤模塊直接使用微處理器的通用I/O口。1、STM32的最小系統(tǒng)STM32芯片的外圍電路的優(yōu)劣影響了整個(gè)系統(tǒng)的性能,此電路的設(shè)計(jì)在本設(shè)計(jì)中按照官方典型推薦應(yīng)用設(shè)計(jì)進(jìn)行應(yīng)用,STM32最小系統(tǒng)電路見附錄A。2、鍵盤及液晶顯示1602液晶也叫1602字符型液晶。它是一種專門用來顯示字母、數(shù)字、符號(hào)等的點(diǎn)陣型液晶模塊,它有若干個(gè)5×7或者5×11等點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以顯示一個(gè)字符。每位之間有一個(gè)點(diǎn)距的間隔每行之間也有間隔起到了字符間距和行間距的作用,正因?yàn)槿绱怂运荒茱@示圖形。1602采用標(biāo)準(zhǔn)的16腳接口,各引腳功能如表3.1所列。表3.1LCD1602引腳功能引腳名稱功能說明1GND電源地2VCC5V電源正極3V0V0為液晶顯示器對(duì)比度調(diào)整端4RSRS為寄存器選擇,高電平1時(shí)選擇數(shù)據(jù)寄存器、低電平0時(shí)選擇指令寄存器5RWRW為讀寫信號(hào)線,高電平進(jìn)行讀操作,低電平進(jìn)行寫操作6EN使能端7~14D0~D7D0~D7為8位雙向數(shù)據(jù)端15BLA+背光正極16BLA-背光負(fù)極LCD1062液晶顯示與STM32的接口電路如圖3.9所示。圖3.9LCD1062液晶顯示鍵盤部分采用4×4按鍵。具有功能選擇及輸入數(shù)字等功能。鍵盤部分電路圖如圖3.10所示。圖3.10數(shù)控模塊鍵盤部分電路3.3供電電源供電電源的職能是滿足各個(gè)模塊的供電和穩(wěn)定,需要專門的供電電路,本設(shè)計(jì)的供電電路主要應(yīng)用到了固定集成三端穩(wěn)壓器的典型電路來為系統(tǒng)提供穩(wěn)定的電壓。3.3.1三端穩(wěn)壓器集成穩(wěn)壓器是指將不穩(wěn)定的直流電壓變?yōu)榉€(wěn)定的直流電壓的集成電路。由于集成穩(wěn)壓器具有穩(wěn)壓精度高、工作穩(wěn)定可靠、外圍電路簡(jiǎn)單、體積小、重量輕等顯箸優(yōu)點(diǎn),在各種電源電路中得到了普遍的應(yīng)用。三端穩(wěn)壓器結(jié)構(gòu)如圖3.11所示。圖3.11三端穩(wěn)壓器的內(nèi)部電路這是一個(gè)輸出正5V直流電壓的穩(wěn)壓電源電路。IC采用集成穩(wěn)壓器7805。電路圖如圖3.12所示。圖3.12固定三端穩(wěn)壓電路78xx系列集成穩(wěn)壓器是常用的固定正輸出電壓的集成穩(wěn)壓器,輸出電壓有5V、6V、9V、12V、15V、18V、24V等規(guī)格,最大輸出電流為1.5A。它的內(nèi)部含有限流保護(hù)、過熱保護(hù)和過壓保護(hù)電路,采用了噪聲低、溫度漂移小的基準(zhǔn)電壓源,工作穩(wěn)定可靠。78xx系列集成穩(wěn)壓器為三端器件:1腳為輸入端,2腳為接地端,3腳為輸出端,使用十分方便。3.3.2供電電源電路電源部分使用單輸入三輸出變壓器,將市電(220V/50Hz)轉(zhuǎn)換為兩路17V的交流電源。分別使用通用的三端穩(wěn)壓芯片7815、7805、AN1117將三路交流電源整流為系統(tǒng)所需的三種直流電源:+15V、-15V、+5V、3.3V。其中+15V電源為恒流源、運(yùn)算放大器提供正電源;-15V電源為運(yùn)算放大器提供負(fù)電源;+5V電源為數(shù)控部分提供工作電源。在完成-15V的供電的時(shí)候用到了ICL7660,它的作用是將電橋中產(chǎn)生的+15V電壓轉(zhuǎn)換為-15V電壓,為設(shè)計(jì)中運(yùn)放提供負(fù)電壓。三種電源都設(shè)計(jì)了必要的保護(hù)電路、指示燈及預(yù)負(fù)載電路,以保證其正常、穩(wěn)定地工作。供電電路圖如圖3.13所示。圖3.13基于STM32的電流源系統(tǒng)的電源部分本模塊中為單片機(jī)提供恒定的參考電壓的恒定電壓源已經(jīng)在前面介紹過,此處就不再多介紹了。3.4本章小結(jié)本章主要對(duì)數(shù)控電流源的電路結(jié)構(gòu)和實(shí)現(xiàn)方法做了簡(jiǎn)明的介紹,列出了關(guān)鍵電路的設(shè)計(jì)思想和方案,并完成關(guān)鍵電路方案的確定以及電路模塊中重要元件的選型和電路設(shè)計(jì),并提出了自己的設(shè)計(jì)思想,經(jīng)過實(shí)際操作實(shí)驗(yàn),設(shè)計(jì)的電路達(dá)到設(shè)計(jì)的要求。第4章基于STM32的數(shù)控電流源的程序設(shè)計(jì)一個(gè)應(yīng)用系統(tǒng)要完成各項(xiàng)功能,首先必須有較完善的硬件作保證。同時(shí)還必須得到相應(yīng)設(shè)計(jì)合理的軟件的支持,尤其是微機(jī)應(yīng)用高速發(fā)展的今天,許多由硬件完成的工作,都可通過軟件編程而代替。甚至有些必須采用很復(fù)雜的硬件電路才能完成的工作,用軟件編程有時(shí)會(huì)變得很簡(jiǎn)單,如數(shù)字濾波,信號(hào)處理等。因此充分利用其內(nèi)部豐富的硬件資源和軟件資源。程序設(shè)計(jì)語言有三種:機(jī)器語言、匯編語言和高級(jí)語言。機(jī)器語言是機(jī)器唯一能“懂”的語言,用匯編語言或高級(jí)語言編寫的程序(稱為源程序)最終都必須翻譯成機(jī)器語言的程序(成為目標(biāo)程序),計(jì)算機(jī)才能“看懂”,然后逐一執(zhí)行。高級(jí)語言是面向問題和計(jì)算過程的語言,它可通過于各種不同的計(jì)算機(jī),用戶編程時(shí)不必仔細(xì)了解所用的計(jì)算機(jī)的具體性能與指令系統(tǒng),而且語句的功能強(qiáng),常常一個(gè)語句已相當(dāng)于很多條計(jì)算機(jī)指令,于是用高級(jí)語言編制程序的速度比較快,也便于學(xué)習(xí)和交流。4.1主程序設(shè)計(jì)主程序流程圖如圖4.1所示。圖4.1數(shù)控電流源主程序框圖主程序構(gòu)成無限循環(huán),主要完成單片機(jī)初始化,關(guān)中斷,菜單顯示內(nèi)容初始化,按鍵掃描,功能切換,計(jì)時(shí)等功能。主程序中,首先由初始化默認(rèn)電流,然后顯示系統(tǒng)所處狀態(tài);再判斷鍵盤是否被按下,掃描鍵盤的操作;根據(jù)鍵盤的輸入改變輸出電流值。在程序中,控制的是電壓值,需要通過公式轉(zhuǎn)換成電流值顯示到液晶顯示上。負(fù)載的實(shí)際電流值由單片機(jī)內(nèi)部D/A采集、處理、顯示。4.2負(fù)載電流取樣子程序設(shè)計(jì)圖4.2為取樣中斷子程序流程,該程序段主要實(shí)現(xiàn)采集取樣電阻的電流值,并將數(shù)值送到LCD顯示模塊中顯示“實(shí)際負(fù)載電流值”。電流取樣子程序流程圖如圖4.2所示。圖4.2電流取樣子程序流程圖4.3鍵盤中斷程序設(shè)計(jì)按鍵的觸點(diǎn)在閉合和斷開時(shí)均會(huì)產(chǎn)生抖動(dòng),這時(shí)觸點(diǎn)的邏輯電平是不穩(wěn)定的,如不妥善處理,將會(huì)引起按鍵命令的錯(cuò)誤執(zhí)行或者重復(fù)執(zhí)行。現(xiàn)在用軟件延時(shí)的方法來避開抖動(dòng)階段。在判斷是否有鍵閉合后都延時(shí)5ms,按下鍵后再延時(shí)12ms就可以避免鍵盤的抖動(dòng)。然后鍵碼分析,執(zhí)行相應(yīng)的模塊,顯示后返回。鍵盤程序流程圖如圖4.3所示。圖4.3鍵盤中斷程序流圖4.4LCD1602顯示程序設(shè)計(jì)當(dāng)LCD1602的寄存器選擇信號(hào)RS為1時(shí),選擇數(shù)據(jù)寄存器;當(dāng)LCD1602的讀寫選擇線RW為0時(shí),進(jìn)行寫操作;當(dāng)LCD1602的使能信號(hào)EN置高電平后再過兩個(gè)時(shí)鐘周期至低電平,產(chǎn)生一個(gè)下降沿信號(hào),往LCD寫入顯示數(shù)據(jù),LCD執(zhí)行命令,判斷執(zhí)行是否完畢,如果沒有執(zhí)行完畢,返回到選擇指令寄存器。如果執(zhí)行命令完畢,顯示數(shù)據(jù),子程序返回。寫數(shù)據(jù)到LCD子程序流程圖如圖4.4所示。圖4.4寫數(shù)據(jù)到LCD子程序流程圖4.5本章小結(jié)本章主要完成了設(shè)計(jì)的程序流程,完成主程序、電流取樣、鍵盤和顯示部分的程序流程圖的設(shè)計(jì)。設(shè)計(jì)中程序的設(shè)計(jì)是關(guān)鍵之一,系統(tǒng)的控制和顯示部分都需要系統(tǒng)程序來完成。好的程序能讓系統(tǒng)功能更加完善,運(yùn)行速度更快,操作更加簡(jiǎn)便。完成程序流程后將要繼續(xù)完成系統(tǒng)程序的編寫。結(jié)束語現(xiàn)在市場(chǎng)上數(shù)控電流源的存在輸出精度不高,功率密度比較低,帶負(fù)載能力不強(qiáng),體積大,價(jià)格較高,操作繁瑣,工作狀態(tài)不穩(wěn)定等弊端,因此數(shù)控電源的主要發(fā)展方向是針對(duì)上述缺點(diǎn)不斷改善。本設(shè)計(jì)是基于STM32的數(shù)控電流源的設(shè)計(jì),即是針對(duì)以上的不足進(jìn)行部分的改進(jìn),在設(shè)計(jì)中通過了解電流源的相關(guān)發(fā)展?fàn)顩r知道了數(shù)控電流源研究的目的和意義、數(shù)控電流源在國內(nèi)外的發(fā)展?fàn)顩r等資料的收集;系統(tǒng)方案和主控芯片的確定、模塊電路的設(shè)計(jì)和模塊電路中關(guān)鍵元器件的選型、系統(tǒng)主程序和子程序的設(shè)計(jì)等。實(shí)現(xiàn)了輸出精度為1%范圍100mA-2000mA的直流電流,具有良好的人機(jī)界面,恒流源中可對(duì)輸出的電流進(jìn)行放大、反饋測(cè)量并與設(shè)定值進(jìn)行比較完成恒流控制,在設(shè)計(jì)的過程中,恒流源部分要保證電流的恒流,在電路設(shè)計(jì)和元器件的選擇上都要要求嚴(yán)格,恒流源部分選用LM350A穩(wěn)壓器通過在調(diào)節(jié)點(diǎn)和輸出之間接一個(gè)固定電阻,LM350能被用作精密的穩(wěn)流器來實(shí)現(xiàn)基本的恒流電路,通過小阻值的檢測(cè)電阻完成負(fù)載電流的反饋檢測(cè)經(jīng)過低噪聲運(yùn)放AD797的第一次反饋放大電路和精密運(yùn)放OP07與單片機(jī)設(shè)定值的比較調(diào)節(jié)的電路。這樣就能保證輸出負(fù)載實(shí)際電流與設(shè)定值相符。輸出電流的步進(jìn)操作和設(shè)定操作都由鍵盤操作完成,二者采取分立的方式:通過兩個(gè)鍵的+/-操作完成步進(jìn)/步減的操作;通過鍵盤將數(shù)值輸入到單片機(jī),經(jīng)過轉(zhuǎn)換和片內(nèi)A/D進(jìn)行對(duì)恒流源的電流值設(shè)定操作。這樣就完成對(duì)電流的步進(jìn)和設(shè)定操作。完成系統(tǒng)的全部設(shè)計(jì),硬件電路和主程序的編寫設(shè)計(jì)是兩大重點(diǎn),在本設(shè)計(jì)中都已完成,并已經(jīng)完成檢測(cè),效果良好,系統(tǒng)能夠完成既定目標(biāo),可完成輸出寬范圍的可調(diào)的穩(wěn)定電流。此次設(shè)計(jì)過程中,我對(duì)STM32單片機(jī)的功能有了更深入的了解和認(rèn)識(shí)到精密元器件的功能特性對(duì)電路設(shè)計(jì)的重要性。在完成設(shè)計(jì)任務(wù)之外也讓我系統(tǒng)性地認(rèn)識(shí)和全面地掌握了單片機(jī)相關(guān)技術(shù),從本次畢業(yè)設(shè)計(jì)中我更加深刻地認(rèn)識(shí)到理念來源于實(shí)際的含義。在和同學(xué)以及老師的就相關(guān)問題的互相討論交流中,我認(rèn)識(shí)到自己的很多不足,但在這些不足中我又學(xué)到了很多知識(shí),使我的綜合應(yīng)用能力有了很大提高。

參考文獻(xiàn)[1]羅耀華.電子測(cè)量?jī)x器原理及應(yīng)用(II)智能儀器[M].哈爾濱:哈爾濱工程大學(xué)出版社,2004.[2]歐偉明.電子信息系統(tǒng)設(shè)計(jì)[M].西安:西安電子科技大學(xué)出版社,2005.[3]劉守義.單片機(jī)應(yīng)用技術(shù)[M].西安:西安電子科技大學(xué)出版社,2002.[4]童詩白,華成英.模擬電子技術(shù)基礎(chǔ)[M].高等教育出版社,2003.[5]全國大學(xué)生電子設(shè)計(jì)競(jìng)賽[D].第四屆全國電子設(shè)計(jì)競(jìng)賽獲獎(jiǎng)作品選編.北京理工大學(xué)出版社,2001.[6](美)詹姆斯·比格內(nèi)爾、羅伯特·多諾萬.數(shù)字電子學(xué)(英文版.原書第4版)[M].北京:機(jī)械工業(yè)出版社,2003.[7]康華光.電子技術(shù)基礎(chǔ)(模擬部分)[M].北京:高等教育出版社,2006.[8]蘇文平,任文穎.電子技術(shù)實(shí)踐與制作教程[M].國防工業(yè)出版社,2007.[9]張毅剛,彭喜元.單片機(jī)原理與應(yīng)用設(shè)計(jì)[M].北京:電子工業(yè)出版社2008.[10]張毅剛,彭喜元.單片機(jī)原理與應(yīng)用設(shè)計(jì)[M].北京:電子工業(yè)出版社,2008.[11]何勇.光電傳感器及其應(yīng)用[M].北京:化學(xué)工業(yè)出版社,2004.[12]尚振東.智能儀器工程設(shè)計(jì)[M].西安:西安電子科技大學(xué)出版社,2008.[13]周航慈,朱兆優(yōu).智能儀器原理與設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2005.[14]譚浩強(qiáng).C程序設(shè)計(jì).北京:清華大學(xué)出版社,2006.[15]田澤.嵌入式系統(tǒng)開發(fā)與應(yīng)用.北京:北京航天航空大學(xué)出版社,2005.[16]李英偉,王成儒等.USB2.0原理與工程開發(fā).北京:國防工業(yè)出版社,2007.[17]康華光,陳大欽.電子技術(shù)基礎(chǔ)(模擬部分).北京:高等教育出版社,2004.[18]王英.模擬電子技術(shù)基礎(chǔ).成都:西南交通大學(xué)出版社,2006.[19]馬忠梅,單片機(jī)的C語言應(yīng)用程序設(shè)計(jì),北京航天航空大學(xué)出版社,2006.[20]S.L.Loyka.ASimpleFormulafortheGroundResistanceCalculation.IEEETrans.OnElectromagneticCompatibility,1999,41(2):152-154.[21]MocrochipTechnologyInc..Microchip2006ProductSelectorGuide,2006.[22]Jun-LianZhangandJian-XunJin.AnalysisofDCpowerTransmissionUsingHighT-cSuperconductingCables[J].JournalofElectronicScienceandTechnologyofChina,2008.[23]ARM—based32一bitMCUSTM32FlOlxxandSTM32Fl03xxfirmwarelibraryUsermanual,STMicroelectronics,2008.[24]STM32FlOxxxUSBdevelopmentKit,STMicroelectronics,2008.[25]STM32FlOlxxandSTM32F103xxadvancedARM-based32-bitMCUsReferencemanual,STMicroelectronics,2008.致謝經(jīng)過長時(shí)間的努力,我的畢業(yè)設(shè)計(jì)和說明書的撰寫已經(jīng)接近尾聲,也標(biāo)志著大學(xué)生活尾聲的臨近。在畢業(yè)設(shè)計(jì)的過程中,由于經(jīng)驗(yàn)的缺乏以及知識(shí)的局限性,有許多考慮不周全的地方,在選題、設(shè)計(jì)等方面,如果沒有導(dǎo)師的指導(dǎo),沒有同學(xué)們的支持和幫助,單獨(dú)完成這個(gè)設(shè)計(jì),是不可能的。在說明書撰寫完稿之際,我想借此機(jī)會(huì)對(duì)在完成畢業(yè)設(shè)計(jì)期間關(guān)心、幫助、支持和鼓勵(lì)過我的老師、同學(xué)以及朋友們致以最誠摯的謝意和最衷心的祝福!首先我要感謝的是我的指導(dǎo)老師,在完成整個(gè)畢業(yè)設(shè)計(jì)的過程中,張老師給我提供了很大的幫助,在選題、設(shè)計(jì)以及修改說明書的各個(gè)環(huán)節(jié)里老師給我指出了很多錯(cuò)誤,提出了很多寶貴意見,對(duì)于設(shè)計(jì)中存在的問題也是耐心的回答和指導(dǎo),讓我能夠順利的完成畢業(yè)設(shè)計(jì)。在此謹(jǐn)向張老師致以誠摯的謝意和崇高的敬意。其次要感謝的是所有在大學(xué)四年中教育指導(dǎo)過我的所有老師,你們傳授給我的專業(yè)知識(shí)是我完成本設(shè)計(jì)的基礎(chǔ),也是日后踏入工作崗位的重要基石,對(duì)于老師們一絲不茍,兢兢業(yè)業(yè)的精神表示衷心的感謝。最后我還要向所有關(guān)心和支持我學(xué)習(xí)的朋友和同學(xué)們表示真摯的謝意!感謝你們對(duì)我的關(guān)心、關(guān)注和支持。附錄附錄A.STM32F103VET6-LQFP100芯片的最小系統(tǒng)電路圖圖A1STM32F103VET6-LQFP100芯片最小系統(tǒng)電路圖圖A2數(shù)控電流源的核心電路和供電電路附錄A3數(shù)控電流源的鍵盤和液晶顯示電路附錄B.數(shù)控電流源的主程序(部分)while(1)//主循環(huán){DAC->DHR12R1=0;STM32F103VET6_Chinese_str((320-16*17)/2,50,17,Chinese_Table_16x16_nan,charColor,Blue);STM32F103VET6_Chinese_str(70,90,3,Chinese_Table_16x16_ti,charColor,Blue);STM32F103VET6_Chinese_str(140,90,8,Chinese_Table_16x16_shu,charColor,Blue);STM32F103VET6_Chinese_str((320-16*15)/2,200,15,Chinese_Table_16x16_zun,charColor,Blue);if(!GPIO_ReadInputDataBit(GPIOG,GPIO_Pin_5)){ Delay_ARMJISHU(100); while(!GPIO_ReadInputDataBit(GPIOG,GPIO_Pin_5)); STM32F103VET6_Clear(Blue); exit_2=1; while(exit_2) //按*鍵進(jìn)入功能循環(huán){DAC->DHR12R1=0;STM32F103VET6_Chinese_str(0,10,6,Chinese_Table_16x16_1,charColor,Blue);STM32F103VET6_Chinese_str(0,40,6,Chinese_Table_16x16_2g,charColor,Blue);STM32F103VET6_Chinese_str(0,70,6,Chinese_Table_16x16_3,charColor,Blue);STM32F103VET6_Chinese_str(0,100,3,Chinese_Table_16x16_4,charColor,Blue);//STM32F103VET6_Chinese_str(0,130,2,Chinese_Table_16x16_5,charColor,Blue);//功能一:手動(dòng)加減電壓值if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_12)) { Delay_ARMJISHU(200);if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_12)){while(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_12)); STM32F103VET6_Clear(Blue); exit=1; while(exit) {STM32F103VET6_Chinese_str(110,55,4,Chinese_Table_16x16_d,charColor,Blue); STM32F103VET6_PutStr_16x24(248,50,c4,1,charColor,Blue); a1=(vol+1)%10; a2=(vol+1-a1)/10;STM32F103VET6_PutChar_num(176,50,a2,charColor,Blue);STM32F103VET6_DrawPoint(200,50,charColor,Blue);//畫一個(gè)點(diǎn)STM32F103VET6_PutChar_num(224,50,a1,charColor,Blue);if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)) //+ {Delay_ARMJISHU(300);if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)) { if(vol<99){ vol=vol+1; } while(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)); } }if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)) //- { Delay_ARMJISHU(300); if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)) { if(vol>3) { vol=vol-1; while(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)); } } }DAC->DHR12R1=(vol*40950-230)/1304;//檢測(cè)過流 ADCConvertedValueLocal=ADCConvertedValue; Precent=(ADCConvertedValueLocal*100/0x1000); //算出百分比 Voltage=Precent*33; while(Voltage>500) { STM32F103VET6_Clear(Blue); while(1) {STM32F103VET6_Chinese_str(110,55,4,Chinese_Table_16x16_d,charColor,Blue);DAC->DHR12R1=0; a1=0; a2=0;STM32F103VET6_PutChar_num(176,50,a2,charColor,Blue);STM32F103VET6_DrawPoint(200,50,charColor,Blue);//畫一個(gè)點(diǎn)STM32F103VET6_PutChar_num(224,50,a1,charColor,Blue);STM32F103VET6_PutStr_16x24(248,50,c4,1,charColor,Blue);STM32F103VET6_Chinese_str((320-16*10)/2,200,10,Chinese_Table_16x16_x,charColor,Blue);GPIO_SetBits(GPIO_DAC,DS1_PIN|DS2_PIN); //所有引腳置高電平 } } //退出按鍵,在所有的功能中都使用這種退出方法 if(!GPIO_ReadInputDataBit(GPIOG,GPIO_Pin_5)) {Delay_ARMJISHU(300);if(!GPIO_ReadInputDataBit(GPIOG,GPIO_Pin_5)) { while(!GPIO_ReadInputDataBit(GPIOG,GPIO_Pin_5)); exit=0; vol=0; ili9320_Clear(Blue); } } }}} //功能2:自動(dòng)加減電壓值 (6號(hào)按鍵) if(!GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_6)) { Delay_ARMJISHU(200); if(!GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_6)) { exit=1; while(!GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_6));/*功能2的定時(shí)器初始化*/ Timer_Config(); NVIC_Config();TIM_Cmd(TIM2,DISABLE); //起初是關(guān)閉的,當(dāng)進(jìn)入功能2后打開 STM32F103VET6_Clear(Blue);while(exit) { vol=vol_21;STM32F103VET6_Chinese_str(110,55,4,Chinese_Table_16x16_d,charColor,Blue);STM32F103VET6_PutStr_16x24(248,50,c4,1,charColor,Blue); a1=(vol+1)%10; a2=(vol+1-a1)/10; STM32F103VET6_PutChar_num(176,50,a2,charColor,Blue); STM32F103VET6_DrawPoint(200,50,charColor,Blue);//畫一個(gè)點(diǎn)STM32F103VET6_PutChar_num(224,50,a1,charColor,Blue);//自加掃描 if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)&counter21) { flag2=1; Delay_ARMJISHU(200); if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)) { TIM_Cmd(TIM2,ENABLE); counter21=0; while(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)); }} if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)&!counter21) { Delay_ARMJISHU(200); if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)) { TIM_Cmd(TIM2,DISABLE); counter21=1; while(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)); } }//自減掃描 if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)&counter22) { flag2=0; Delay_ARMJISHU(200); if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)) { TIM_Cmd(TIM2,ENABLE); counter22=0; while(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)); } }if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)&!counter22) { Delay_ARMJISHU(200); if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)) { TIM_Cmd(TIM2,DISABLE); counter22=1; while(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)); } }DAC->DHR12R1=(vol*40950-230)/1304; //檢測(cè)過流 ADCConvertedValueLocal=ADCConvertedValue;Precent=(ADCConvertedValueLocal*100/0x1000); //算出百分比 Voltage=Precent*33; while(Voltage>500) { STM32F103VET6_Clear(Blue); while(1) {STM32F103VET6_Chinese_str(110,55,4,Chinese_Table_16x16_d,charColor,Blue); DAC->DHR12R1=0; a1=0; a2=0; STM32F103VET6_PutChar_num(176,50,a2,charColor,Blue);STM32F103VET6_DrawPoint(200,50,charColor,Blue);//畫一個(gè)點(diǎn)STM32F103VET6_PutChar_num(224,50,a1,charColor,Blue);STM32F103VET6_PutStr_16x24(248,50,c4,1,charColor,Blue);STM32F103VET6_Chinese_str((320-16*10)/2,200,10,Chinese_Table_16x16_x,charColor,Blue);GPIO_SetBits(GPIO_DAC,DS1_PIN|DS2_PIN); //所有引腳置高電平 } } //退出按鍵,在所有的功能中都使用這種退出方法 if(!GPIO_ReadInputDataBit(GPIOG,GPIO_Pin_5)) { Delay_ARMJISHU(100); if(!GPIO_ReadInputDataBit(GPIOG,GPIO_Pin_5)) {while(!GPIO_ReadInputDataBit(GPIOG,GPIO_Pin_5)); exit=0; TIM_Cmd(TIM2,DISABLE); vol=0; vol_22=0; ili9320_Clear(Blue); }} }}} //功能3:輸入電壓數(shù)值7號(hào)功能鍵 if(!GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_7)) { Delay_ARMJISHU(100); if(!GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_7)) { exit=1; while(!GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_7)); ili9320_Clear(Blue); while(exit) { num31=num33; num32=num34; STM32F103VET6_Chinese_str(10,12,12,Chinese_Table_16x16_q,charColor,Blue);STM32F103VET6_Chinese_str(110,55,4,Chinese_Table_16x16_d,charColor,Blue);STM32F103VET6_DrawPoint(200,50,charColor,Blue);//畫一個(gè)點(diǎn)STM32F103VET6_PutStr_16x24(248,50,c4,1,charColor,Blue);//顯示單位:vSTM32F103VET6_PutChar_num(176,50,num32,charColor,Blue); //顯示十位STM32F103VET6_PutChar_num(224,50,num31,charColor,Blue); //顯示個(gè)位 DAC->DHR12R1=(vol*40950-230)/1304; //先輸入十位上的數(shù)鍵位,切換鍵,個(gè)位按鍵,確認(rèn)鍵if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)) {Delay_ARMJISHU(300);if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)) { while(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_9)); counter_3++; } } if((!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8))) { Delay_ARMJISHU(300);if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)) {while(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8)); if(!(counter_3%2)) { if(num33<10)num33=num33+1; if(num33>=10)num33=0; } if(counter_3%2) {if(num34<10)num34=num34+1;if(num34>=10) num34=0; } } }if(!GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_10)) //確認(rèn)鍵 { Delay_ARMJISHU(300); if(!GPIO_ReadInputDataB

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論