版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
***大學(xué)畢業(yè)設(shè)計(jì)(論文)PAGEPAGE28摘要隨著電子工業(yè)的發(fā)展,電子元器件急劇增加,電子元器件的適用范圍也逐漸廣泛起來(lái)。在應(yīng)用中我們常常要測(cè)定電容,電感的大小。因此,設(shè)計(jì)可靠,安全,便捷的電容,電感測(cè)試儀具有極大的現(xiàn)實(shí)必要性。本測(cè)試儀的主控制器采用Mega16單片機(jī),其集成度高,片內(nèi)資源豐富。在系統(tǒng)硬件設(shè)計(jì)中,以Mega16單片機(jī)為核心的電容、電感測(cè)試儀,通過(guò)使用對(duì)應(yīng)振蕩電路的頻率實(shí)現(xiàn)各個(gè)參數(shù)的測(cè)量。硬件電路主要包括主控制器,LM311震蕩電路和顯示電路。通過(guò)該LC測(cè)試儀的設(shè)計(jì),本人基本了解和掌握了怎樣運(yùn)用單片機(jī)硬件和軟件技術(shù)來(lái)完成一些小設(shè)計(jì)。對(duì)于本人來(lái)說(shuō),如果今后從事相關(guān)技術(shù)的工作,這將是一次極為寶貴的經(jīng)驗(yàn)。關(guān)鍵詞:AVR單片機(jī),Mega16,LM311振蕩電路,LC測(cè)試儀
AbstractWiththedevelopmentofelectronicindustry,electroniccomponentsrapidlyincreased,andthescopeofelectroniccomponentswasbecomingwidegradually.Inapplicationsweoftenneedtomeasurethesizeofcapacitorsandinductors.Therefore,designingareliable,safe,convenientcapacitance,inductancetesterisverynecessarynow.ThemastercontrollerofthistesterusesMega16microcontroller.It’shighintegration,on-chipresources.Inthedesignofhardwaresystem,taketheMega16monolithicintegratedcircuitastheelectriccapacity,theinductancereflectscopereflector,theusecorrespondence'soscillatingcircuittransformsforthefrequencyrealizeseachparametersurvey.Hardwarecircuitincludesmaincontroller,LM311oscillatingcircuitandsystemdesignprocess.IknowandgrasphowtousemicrocontrollertechnologytodeveloptheLCmeasureinstrumentthroughthispractice.It’sanextremelyvaluableexperiencetome.KEYWORDS:AVRmicrocontroller;Mega16;LM311oscillatingcircuit;LCtester
目錄1 緒論 11.1 傳統(tǒng)的電容電感測(cè)量方法 11.1.1 測(cè)量電容 11.1.2 測(cè)量電感 31.2 前景 31.3 本設(shè)計(jì)所做的工作 31.4 設(shè)計(jì)思路 41.4.1 硬件設(shè)計(jì)思路 41.4.2 軟件設(shè)計(jì)思路 42 Mega16微型控制器介紹 62.1 Mega16的系統(tǒng)結(jié)構(gòu) 62.2 存儲(chǔ)器地址分配 62.3 CPU內(nèi)部寄存器 62.4 寄存器概述 92.5 I/O(輸入/輸出)接口引腳 93 1602LCD簡(jiǎn)介 123.1 液晶顯示簡(jiǎn)介 123.1.1 液晶顯示原理 123.1.2 液晶顯示器的分類(lèi) 123.1.3 液晶顯示器各種圖形的顯示原理 123.2 1602LCD的基本參數(shù)及引腳功能 133.2.1 1602LCD主要技術(shù)參數(shù) 133.2.2 1602LCD各引腳接口說(shuō)明 133.3 1602LCD的RAM地址映射及標(biāo)準(zhǔn)字庫(kù)表 143.4 1602LCD的一般初始化(復(fù)位)過(guò)程 154 硬件設(shè)計(jì) 164.1 硬件電路總體設(shè)計(jì) 164.2 總體設(shè)計(jì)框圖 164.3 電路原理圖 174.4 系統(tǒng)組成模塊 175 程序設(shè)計(jì) 195.1 程序設(shè)計(jì)流程 195.2 模塊程序設(shè)計(jì) 215.2.1 按鍵處理程序模塊 215.2.2 電容電感計(jì)算程序模塊 215.2.3 液晶顯示程序模塊 225.3 實(shí)驗(yàn)主要程序代碼 236 結(jié)論與展望 26參考文獻(xiàn) 27致謝 28緒論目前,隨著電子工業(yè)的發(fā)展,電子元器件急劇增加,電子元器件的適用范圍也逐漸廣泛起來(lái),在應(yīng)用中我們常常要測(cè)定電容,電感的大小。因此,設(shè)計(jì)可靠,安全,便捷的電容,電感測(cè)試儀具有極大的現(xiàn)實(shí)必要性。另外,人們對(duì)電子產(chǎn)品智能化的程度要求越來(lái)越高,而在目前,單片機(jī)在實(shí)現(xiàn)電子產(chǎn)品智能化方面扮演著重要的角色[1]。以單片機(jī)為核心制作的電子產(chǎn)品具有電路簡(jiǎn)單、功能強(qiáng)、可靠性高、設(shè)計(jì)彈性大、便于擴(kuò)展、易于形成系列化產(chǎn)品等顯著優(yōu)點(diǎn),所以用單片機(jī)來(lái)制作的LC測(cè)試儀體積小,使用方便,可靠性高,可以滿足人們的要求。本設(shè)計(jì)在眾多的單片機(jī)中選用了ATMEL公司開(kāi)發(fā)的ATmega16AVR單片機(jī)。AVR單片機(jī)繼承了C51和PIC單片機(jī)的優(yōu)點(diǎn),運(yùn)行速度快,功能強(qiáng)大,是一款面向C語(yǔ)言編程的單片機(jī)。使用AVR單片機(jī)制作的數(shù)顯直讀式LC測(cè)試儀,且具有測(cè)量范圍電容(1pF—440uF)、電感(1nHy—100mHy),硬件電路簡(jiǎn)單,能自動(dòng)換擋,使用方便等優(yōu)點(diǎn),因此用AVR單片機(jī)來(lái)制作的電容表具有一定的應(yīng)用前景。傳統(tǒng)的電容電感測(cè)量方法電容電感測(cè)量的原理主要是:將由電容、電感引起的其他物理量變化的參數(shù),如電壓、電流、頻率等通過(guò)相應(yīng)的電路轉(zhuǎn)變成信號(hào),傳給處理電路。最后轉(zhuǎn)換成電容電感數(shù)值顯示出來(lái)。傳統(tǒng)的測(cè)量電容方法有諧振法和電橋法兩種。前者電路簡(jiǎn)單,速度快,但精度低;后者測(cè)量精度高,但速度慢。電感測(cè)量可依據(jù)交流電橋法,這種測(cè)量方法雖然能較準(zhǔn)確的測(cè)量電感但交流電橋的平衡過(guò)程復(fù)雜,而且通過(guò)測(cè)量Q值確定電感的方法誤差較大。以下就來(lái)具體討論電容、電感各自的測(cè)量方法。測(cè)量電容1.利用電容器放電測(cè)電容電容器充電后,所帶電量Q與兩極板間電壓U和電容C之間滿足Q=CU的關(guān)系。U可由直流電壓表測(cè)出,Q可由電容器放電測(cè)量。使電容器通過(guò)高電阻放電,放電電流隨電容器兩極板間的電壓下降而減少,通過(guò)測(cè)出不同時(shí)刻的放電電流值,直至I=0,作出放電電流I隨時(shí)間變化的曲線,曲線下的面積即等于電容器所帶電量。由C=Q/U可求出電容器的電容值。2.利用放電時(shí)間比率測(cè)電容其測(cè)量原理是把被測(cè)電容和基準(zhǔn)電容連接到同一電阻上,構(gòu)成RC網(wǎng)絡(luò)。通過(guò)測(cè)量?jī)蓚€(gè)電容放電時(shí)間的比率,就可以求出被測(cè)電容的電容值。測(cè)量范圍從pF(10-12F)到幾十個(gè)nF(10-9F),并且在寄生電容的抑制和溫度穩(wěn)定性方面具有很大的優(yōu)勢(shì)。3.利用單片機(jī)測(cè)脈沖來(lái)測(cè)時(shí)間常數(shù)RC再計(jì)算電容其測(cè)量原理是把被測(cè)電容和電阻串聯(lián),構(gòu)成RC網(wǎng)絡(luò),做成振蕩器后,調(diào)好振蕩信號(hào)的波形然后開(kāi)始計(jì)數(shù)脈沖值。其周期為,為一個(gè)常數(shù),可通過(guò)周期可以計(jì)算出C的值。4.利用振蕩電路測(cè)頻率再計(jì)算電容為了克服模擬測(cè)量法的缺點(diǎn),可以采用數(shù)字化測(cè)量。數(shù)字化測(cè)量電容傳感器容量,可使信號(hào)在傳感器就地轉(zhuǎn)換為數(shù)字信號(hào)后,進(jìn)行遠(yuǎn)距離傳輸,轉(zhuǎn)換電路簡(jiǎn)單性能穩(wěn)定。數(shù)字測(cè)量可直接用數(shù)字形式表示,通過(guò)模/數(shù)(A/D)轉(zhuǎn)換將模擬形式的信號(hào)轉(zhuǎn)換成數(shù)字形式[2]。數(shù)字測(cè)量的精度高,操作方便,后處理方便,但對(duì)硬件要求高,分辨力有限。制作數(shù)字電容表常用的兩種方法是:用分立元件制作電容表和用單片機(jī)制作電容表。電容的數(shù)字化測(cè)量首先是將電容器的電容量變?yōu)轭l率信號(hào),常用的有LC振蕩和RC振蕩。以555多諧振蕩器為例,若被測(cè)電容為C,則其振蕩頻率為。對(duì)于振蕩器,其線路結(jié)構(gòu)簡(jiǎn)單,受電源等外界因素影響小,振蕩頻率穩(wěn)定。電路原理如圖1.1所示。圖1.1振蕩器電路原理圖測(cè)量電感1.將一個(gè)電阻與被測(cè)電感串連,然后在電路兩端加上交流電,測(cè)量電感上的電壓和通過(guò)的電流,由歐姆定律計(jì)算電感的感抗,然后按照下式推算出電感值。,就是感抗,單位為歐姆,ω是交流發(fā)電機(jī)運(yùn)轉(zhuǎn)的角速度,單位為弧度/秒,是頻率,單位為赫茲,L是線圈電感,單位為亨利。由上式可方便地計(jì)算出被測(cè)電感的值。2.使用電感測(cè)試儀測(cè)試加一個(gè)正弦波電壓,測(cè)通過(guò)它的電流的幅值和相位。矢量除以頻率,就可以得到電感值。3.電感是儲(chǔ)能元件,因此可利用它與電容器組成振蕩回路[3],不同于諧振回路,根據(jù)振蕩頻變化,進(jìn)而推算出電感量的大小。由于振蕩頻率可以設(shè)置的較高,因此可獲得較高的分辨度。振蕩法測(cè)量的基本保證是要求振蕩的頻率相對(duì)穩(wěn)定。我們采用ABX△E振蕩,因?yàn)樗休^寬的頻率范圍,且相對(duì)穩(wěn)定。我們采用Colpitts振蕩器,因?yàn)樗休^寬的頻率范圍且相對(duì)穩(wěn)定。其基本頻率為,假定c不變,令為待定系數(shù),則γ應(yīng)為常數(shù),有,。因此,根據(jù)振蕩頻率值,可得到相應(yīng)的電感L值。前景當(dāng)今電子測(cè)試領(lǐng)域,電容和電感的測(cè)量已經(jīng)在測(cè)量技術(shù)和產(chǎn)品研發(fā)中應(yīng)用的十分廣泛。作為兩個(gè)非常普遍和常用的測(cè)量參數(shù),其對(duì)測(cè)量的精度和速度都有越來(lái)越高的要求。目前教學(xué)實(shí)驗(yàn)中普遍采用的數(shù)字式萬(wàn)用表已不能滿足測(cè)量要求,因此設(shè)計(jì)可靠、安全、便捷、測(cè)量精度高的電容、電感測(cè)量?jī)x具有廣泛的使用和應(yīng)用前景。在目前的生產(chǎn)制造業(yè)中,與傳統(tǒng)的手動(dòng)交流電橋相比,數(shù)字LC測(cè)量?jī)x因其測(cè)量性能穩(wěn)定可靠,無(wú)需進(jìn)行反復(fù)的、復(fù)雜的手動(dòng)平衡,還可以減少測(cè)量誤差和結(jié)果計(jì)算,故已被越來(lái)越多的應(yīng)用于實(shí)時(shí)電容電感的測(cè)量分析。要保證LC測(cè)量?jī)x測(cè)量的準(zhǔn)確度,對(duì)其性能的考核就顯得尤為重要。隨著數(shù)字化測(cè)量技術(shù)的發(fā)展,電容電感測(cè)試儀在測(cè)量速度和精度上有很大的改善。在今后的發(fā)展中,相信更多更先進(jìn)的LC測(cè)量手段會(huì)出現(xiàn)并影響我們的生產(chǎn)、生活和社會(huì)生活的方方面面。本設(shè)計(jì)所做的工作本設(shè)計(jì)是以LM311為核心的振蕩電路,將被測(cè)參數(shù)模擬轉(zhuǎn)化為頻率,并利用Mega16實(shí)現(xiàn)計(jì)算頻率,所以,本次設(shè)計(jì)需要做好以下工作:學(xué)習(xí)Mega16原理等資料[4]學(xué)習(xí)1602LCD原理等資料設(shè)計(jì)測(cè)量電容,電感的振蕩電路設(shè)計(jì)1602LCD動(dòng)態(tài)顯示電路設(shè)計(jì)測(cè)量頻率程序,設(shè)置程序用Protel99SE軟件繪制電原理圖和印刷電路版圖在計(jì)算機(jī)上進(jìn)行模擬測(cè)試,記錄測(cè)試數(shù)據(jù)和結(jié)果撰寫(xiě)項(xiàng)目論文設(shè)計(jì)思路主控制器采用Mega16單片機(jī),這種單片機(jī)具有足夠的空余硬件資源,以便可以實(shí)現(xiàn)其他的擴(kuò)充功能。利用LM311振蕩電路測(cè)量頻率、單片機(jī)處理數(shù)據(jù)、1602LCD顯示數(shù)據(jù)結(jié)果??梢詫?shí)現(xiàn)電容(1pF—440uF)、電感(1nHy—100mHy)的測(cè)量精度。硬件設(shè)計(jì)思路硬件設(shè)計(jì)是整個(gè)系統(tǒng)的基礎(chǔ),要考慮的方方面面很多,除了實(shí)現(xiàn)此設(shè)計(jì)基本功能以外,主要考慮如下幾個(gè)因素:系統(tǒng)穩(wěn)定度器件的通用性或易選購(gòu)性軟件編程的易實(shí)現(xiàn)性系統(tǒng)其它功能及性能指標(biāo)因此硬件設(shè)計(jì)至關(guān)重要。主要設(shè)計(jì)包括以下三部分:?jiǎn)纹瑱C(jī)主控模塊:采用Mega16單片機(jī)作為整個(gè)硬件系統(tǒng)的核心[5],它既是協(xié)調(diào)整機(jī)工作的控制器,又是數(shù)據(jù)處理器。關(guān)于主控芯片的體系結(jié)構(gòu)在第二章會(huì)有詳細(xì)的介紹。LC測(cè)試模塊:LM311是普通的電壓比較器,它和L1、C1組成振蕩器[6]。由測(cè)量原理可以看出電路對(duì)L1、C1的精度無(wú)嚴(yán)格的要求,但是標(biāo)準(zhǔn)電容C2要盡可能的準(zhǔn)確。電路組裝好以后,首先要保證振蕩器工作正常,可以用示波器看一下,正常后再調(diào)試程序,以免走彎路。標(biāo)準(zhǔn)電容器的接入和斷開(kāi)是由單片機(jī)控制繼電器完成的。2×2開(kāi)關(guān)S1用來(lái)切換電容/電感測(cè)試模式,其中的一個(gè)空閑觸點(diǎn)接到單片機(jī)的PB2端口用來(lái)指示當(dāng)前的測(cè)試模式是電感還是電容,這里該觸點(diǎn)接地是測(cè)試電感。顯示模塊:通過(guò)LCD驅(qū)動(dòng)程序?qū)ega16處理的結(jié)果進(jìn)行穩(wěn)定顯示,在測(cè)試期間顯示能夠保持穩(wěn)定狀態(tài),當(dāng)離開(kāi)測(cè)試能夠迅速歸零。軟件設(shè)計(jì)思路程序比較簡(jiǎn)單,主要包括測(cè)頻率和計(jì)算兩部分。測(cè)頻率我這里是用定時(shí)器T0定時(shí)250毫秒,振蕩器輸出接至計(jì)數(shù)器T1端口,在T0溢出中斷中記錄計(jì)數(shù)值,將四次溢出中斷的計(jì)數(shù)值加在一起就是振蕩頻率。主程序按以下順序工作:測(cè)量由L1C1組成的振蕩器的頻率F1控制繼電器將標(biāo)準(zhǔn)電容與C1并聯(lián),測(cè)出由L1和C1+C2組成的振蕩器的頻率F2計(jì)算L1和C1的值斷開(kāi)C2,檢測(cè)PB2PB2=1測(cè)電容,并聯(lián)測(cè)量,由公式求出PB2=0測(cè)電感,串聯(lián)測(cè)量,由公式求出Mega16微型控制器介紹本章就Mega16單片機(jī)作了簡(jiǎn)單介紹。其中,簡(jiǎn)要介紹Mega16的系統(tǒng)結(jié)構(gòu)、存儲(chǔ)器地址分配、CPU內(nèi)部寄存器、寄存器詳述、I/O接口引腳。Mega16的系統(tǒng)結(jié)構(gòu)Mega16單片機(jī)系統(tǒng)結(jié)構(gòu)大致可分為MCU核心與MCU外設(shè)兩部分。(1)MCU核心該部分包括MCU的3中存儲(chǔ)器(FLASH、SRAM、EEPRONM);模擬比較器和數(shù)模轉(zhuǎn)換器;程序存儲(chǔ)器的頁(yè)面模式控制;具有中斷識(shí)別、讀/寫(xiě)控制、工作模式等控制功能的系統(tǒng)綜合模塊(SIM);可用于系統(tǒng)擴(kuò)展的分時(shí)復(fù)用總線端口,其中A口、B口可作為外擴(kuò)展存儲(chǔ)器或接口電路的分時(shí)復(fù)用地址/數(shù)據(jù)總線,D口的部分可作為控制總線。(2)MCU外設(shè)Mega16外設(shè)部分包括:A/D轉(zhuǎn)換器[7],兩線串行接口TWI,串行接口SPI等接口。存儲(chǔ)器地址分配本節(jié)講述Mega16的存儲(chǔ)器。AVR結(jié)構(gòu)具有兩個(gè)主要的存儲(chǔ)器空間:數(shù)據(jù)存儲(chǔ)器空間和程序存儲(chǔ)器空間。此外,Mega16還有EEPROM存儲(chǔ)器以保存數(shù)據(jù)。這三個(gè)存儲(chǔ)器空間都為線性的平面結(jié)構(gòu)。Mega16具有16K字節(jié)的在線編程Flash,用于程序指令代碼。因?yàn)樗械腁VR指令為16位或32位,故而Flash組織成8K*16位的形式。用戶程序的安全性要根據(jù)Flash程序存儲(chǔ)器的兩個(gè)區(qū):引導(dǎo)(Boot)程序區(qū)和應(yīng)用程序區(qū),分開(kāi)來(lái)考慮。Flash存儲(chǔ)器至少可以擦寫(xiě)10,000次。Mega16的程序計(jì)數(shù)器(PC)為13位,因此可以尋址8K字的程序存儲(chǔ)器空間。常數(shù)可以保存于整個(gè)程序存儲(chǔ)器地址空間。CPU內(nèi)部寄存器本節(jié)從總體上討論AVR內(nèi)核的結(jié)構(gòu)。CPU的主要任務(wù)是保證程序的正確執(zhí)行。因此它必須能夠訪問(wèn)存儲(chǔ)器、執(zhí)行運(yùn)算??刂仆庠O(shè)以及處理中斷。圖2.1AVR內(nèi)核的結(jié)構(gòu)為了獲得最高的性能以及并行性,AVR采用了Harvard結(jié)構(gòu),具有獨(dú)立的數(shù)據(jù)和程序總線。程序存儲(chǔ)器里的指令通過(guò)一級(jí)流水線運(yùn)行。CPU在執(zhí)行一條指令的同時(shí)讀取下一條指令(在本文稱(chēng)為預(yù)?。_@個(gè)概念實(shí)現(xiàn)了指令的單時(shí)鐘周期運(yùn)行。程序存儲(chǔ)器是可以在線編程的Flash??焖僭L問(wèn)寄存器文件包括32個(gè)8位通用工作寄存器,訪問(wèn)時(shí)間為一個(gè)時(shí)鐘周期。從而實(shí)現(xiàn)了單時(shí)鐘周期的ALU操作。在典型的ALU操作中,兩個(gè)位于寄存器文件中的操作數(shù)同時(shí)被訪問(wèn),然后執(zhí)行運(yùn)算,結(jié)果再被送回到寄存器文件。整個(gè)過(guò)程僅需一個(gè)時(shí)鐘周期。寄存器文件里有6個(gè)寄存器可以用作3個(gè)16位的間接尋址寄存器指針以尋址數(shù)據(jù)空間,實(shí)現(xiàn)高效的地址運(yùn)算。其中一個(gè)指針還可以作為程序存儲(chǔ)器查詢表的地址指針。這些附加的功能寄存器即為16位的X、Y、Z寄存器。ALU支持寄存器之間以及寄存器和常數(shù)之間的算術(shù)和邏輯運(yùn)算[8]。ALU也可以執(zhí)行單寄存器操作。運(yùn)算完成之后狀態(tài)寄存器的內(nèi)容得到更新以及反映操作結(jié)果。程序流程通過(guò)有無(wú)條件的跳轉(zhuǎn)指令和調(diào)用指令來(lái)控制,從而直接尋址整個(gè)地址空間。大多數(shù)指令長(zhǎng)度位16位,亦即每個(gè)程序存儲(chǔ)器地址都包含一條16位或32位的指令。程序存儲(chǔ)器空間分為兩個(gè)區(qū):引導(dǎo)程序區(qū)(Boot區(qū))和應(yīng)用程序區(qū)。這兩個(gè)區(qū)都有專(zhuān)門(mén)的鎖定位以實(shí)現(xiàn)讀和讀/寫(xiě)保護(hù)。用于寫(xiě)應(yīng)用程序區(qū)的SPM指令必須位于引導(dǎo)程序區(qū)。在中斷和調(diào)用子程序時(shí)返回地址的程序計(jì)數(shù)器(PC)保存于堆棧之中。堆棧位于通用數(shù)據(jù)SRAM,因此其深度僅受限于SRAM的大小。在復(fù)位例程里用戶首先要初始化堆棧指針SP。這個(gè)指針位于I/O空間,可以進(jìn)行讀寫(xiě)訪問(wèn)。數(shù)據(jù)SRAM可以通過(guò)5種不同的尋址模式進(jìn)行訪問(wèn)。AVR存儲(chǔ)器空間為線性的平面結(jié)構(gòu)。AVR有一個(gè)靈活的中斷模塊。控制寄存器位于I/O空間。狀態(tài)寄存器里有全局中斷使能位。每個(gè)終端在終端向量表里都有獨(dú)立的中斷向量。各個(gè)中斷的優(yōu)先級(jí)與其在中斷向量表里的位置有關(guān),中斷向量地址越低,優(yōu)先級(jí)越高。I/O存儲(chǔ)器空間高喊64個(gè)可以直接尋址的地址,作為CPU外設(shè)的控制寄存器、SPI,以及其他I/O功能。映射到數(shù)據(jù)空間即為寄存器文件之后的地址0x20-0x5F。AVR、ALU與32個(gè)通用工作寄存器直接相連。寄存器與寄存器之間、寄存器與立即數(shù)之間的ALU運(yùn)算只需要一個(gè)時(shí)鐘周期。ALU操作分為3類(lèi):算數(shù)、邏輯和位操作。此外還提供了支持無(wú)/有符號(hào)數(shù)和分?jǐn)?shù)乘法的乘法器。AVR中斷寄存器SREG定義如下:圖2.2AVR中段寄存器STEGBit7-I:全局中斷使能I置位時(shí)使能全局中斷。單獨(dú)的中斷使能有其他獨(dú)立的控制寄存器控制。如果I清零,則不論單獨(dú)中斷標(biāo)志置位與否,都不會(huì)產(chǎn)生中斷。任意一個(gè)中斷發(fā)生之后I清零,而執(zhí)行RETI指令后I恢復(fù)置位以使能中斷。I也可以通過(guò)SEI和CLI指令來(lái)置位和清零。Bit6-T:位拷貝存儲(chǔ)位拷貝指令BLD和BST利用T作為目的或源地址。BST把寄存器的某一位拷貝到T,而B(niǎo)LD把T拷貝到寄存器的某一位。Bit5-H:半進(jìn)位標(biāo)志半進(jìn)位標(biāo)志H表示算數(shù)操作發(fā)生了半進(jìn)位。此標(biāo)志對(duì)于BCD運(yùn)算非常有用。Bit4-S:符號(hào)位,S=N+V。S為負(fù)數(shù)標(biāo)志N與2的補(bǔ)碼溢出標(biāo)志V的異或。Bit3-V:2的補(bǔ)碼溢出標(biāo)志支持2的補(bǔ)碼運(yùn)算。詳見(jiàn)指令集的說(shuō)明。Bit2-N:負(fù)數(shù)標(biāo)志表明算數(shù)或邏輯操作結(jié)果為負(fù)。Bit1-Z:零標(biāo)志表明算數(shù)或邏輯操作結(jié)果為零。詳見(jiàn)指令集的說(shuō)明。Bit0-C:進(jìn)位標(biāo)志表明算數(shù)或邏輯操作發(fā)生了進(jìn)位。詳見(jiàn)指令集的說(shuō)明。寄存器概述狀態(tài)寄存器包含了最近執(zhí)行的算數(shù)指令的結(jié)果信息。這些信息可以用來(lái)改變陳旭流程以實(shí)現(xiàn)條件操作。如指令集所述,所有ALU運(yùn)算都建影響狀態(tài)寄存器的內(nèi)容。這樣,在許多情況下就不需要專(zhuān)門(mén)的比較值指令了,從而使系統(tǒng)運(yùn)行更快速,代碼效率更高。在進(jìn)入中斷服務(wù)程序是狀態(tài)寄存器不會(huì)自動(dòng)保存,中斷返回時(shí)也不會(huì)自動(dòng)恢復(fù)。這些工作需要軟件來(lái)處理。I/O(輸入/輸出)接口引腳作為通用數(shù)字I/O使用時(shí),所有AVRI/O端口都具有真正的讀-修改-寫(xiě)功能。這意味著用SBI或CBI指令改變某些管腳的方向(或者是端口電平、禁止/使能上拉電阻)時(shí)不會(huì)無(wú)意的改變其他管腳的方向(或者是端口電平、禁止/使能上拉電阻)。輸出緩沖器具有對(duì)稱(chēng)的驅(qū)動(dòng)能力,可以輸出或吸收大電流,直接驅(qū)動(dòng)LED。所有的端口引腳都具有與電壓無(wú)關(guān)的上拉電阻。并有保護(hù)二極管與VCC和地相連,如圖2.3所示。圖2.3端口引腳本節(jié)所有的寄存器和位以通用格式表示:小寫(xiě)的“x”表示端口寄存器的序號(hào),而小寫(xiě)的“n”代表位的序號(hào)。但是在程序里要寫(xiě)完整。例如,PORTB3表示端口B的第3位,而本節(jié)的通用格式為PORTxn。物理I/O寄存器和位定義列于“I/O端口寄存器的說(shuō)明”。每個(gè)端口都有三個(gè)I/O存儲(chǔ)器地址:數(shù)據(jù)寄存器-PORTx、數(shù)據(jù)方向寄存器-DDRx和端口輸入引腳-PINx。數(shù)據(jù)寄存器和數(shù)據(jù)方向寄存器為讀/寫(xiě)寄存器,而端口輸入引腳為只讀寄存器。但是需要特別注意的是,對(duì)PINx寄存器某一位寫(xiě)入邏輯“1”將造成數(shù)據(jù)寄存器相應(yīng)位的數(shù)據(jù)發(fā)生“0”與“1”的交替變化。當(dāng)寄存器MCUCR的上拉禁止位PUD置位時(shí)所有端口引腳的上拉電阻都被禁止。作為通用數(shù)字I/O時(shí)的端口。請(qǐng)參見(jiàn)各個(gè)模塊的具體說(shuō)明以了解引腳的第二功能。使能某些引腳的第二功能不會(huì)影響其他屬于統(tǒng)一端口的引腳用于通用數(shù)字I/O目的。圖2.4引腳與接口每個(gè)端口引腳都具有三個(gè)寄存器位:DDxn、PORTxn和PINxn,如“I/O端口寄存器的說(shuō)明”所示[9]。DDxn位于DDRx寄存器,PORTxn位于PIRTx寄存器,PINxn位于PINx寄存器DDxn用來(lái)選擇引腳的方向。DDxn為“1”,Pxn配置為輸出,否則配置為輸入。引腳配置為輸入時(shí),若PORTxn為“1”,上拉電阻將使能。如果需要關(guān)閉這個(gè)上拉電阻,可以將PORTxn清零,或者將這個(gè)引腳配置為輸出。復(fù)位時(shí)各引腳為高阻態(tài),即使此時(shí)并沒(méi)有時(shí)鐘在運(yùn)行。當(dāng)引腳配置為輸出時(shí),若PORTxn為“1”,引腳輸出高電平(“1”),否則輸出低電平(“1”)。在(高阻態(tài))三態(tài)({DDxn,PIRTxn}=0b00)輸出高電平({DDxn,PIRTxn}=0b11)兩種狀態(tài)之間進(jìn)行切換時(shí),上拉電阻使({DDxn,PIRTxn}=0b01)或輸出低電平({DDxn,PIRTxn}=0b10)這兩種模式必然會(huì)有一個(gè)發(fā)生。通常,上拉電阻使能是完全可以接受的,因?yàn)楦咦璀h(huán)境不再意是強(qiáng)高電平輸出還是上拉輸出。如果使用情況不是這樣子,可以通過(guò)置位SFIOR寄存器的PUD來(lái)禁止所有端口的上拉電阻。在上拉輸入和輸出低電平之間切換也有同樣的問(wèn)題。用戶必須選擇高阻態(tài)({DDxn,PIRTxn}=0b00)或輸出高電平({DDxn,PIRTxn}=0b10)作為中間步驟。1602LCD簡(jiǎn)介本章主要介紹了1602LCD的相關(guān)知識(shí),包括液晶顯示介紹、1602LCD的基本參數(shù)及引腳功能、1602LCD的RAM地址映射及標(biāo)準(zhǔn)字庫(kù)表、1602LCD的一般初始化(復(fù)位)過(guò)程。液晶顯示簡(jiǎn)介液晶顯示原理液晶顯示的原理是利用液晶的物理特性,通過(guò)電壓對(duì)其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動(dòng)、易于實(shí)現(xiàn)全彩色顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA移動(dòng)通信工具等眾多領(lǐng)域。液晶顯示器的分類(lèi)液晶顯示的分類(lèi)方法有很多種,通??砂雌滹@示方式分為段式、字符式、點(diǎn)陣式等。除了黑白顯示外,液晶顯示器還有多灰度有彩色顯示等。如果根據(jù)驅(qū)動(dòng)方式來(lái)分,可以分為靜態(tài)驅(qū)動(dòng)(Static)、單純矩陣驅(qū)動(dòng)(SimpleMatrix)和主動(dòng)矩陣驅(qū)動(dòng)(ActiveMatrix)三種。液晶顯示器各種圖形的顯示原理線段的顯示點(diǎn)陣圖形式液晶由M×N個(gè)顯示單元組成,假設(shè)LCD顯示屏有64行,每行有128列,每8列對(duì)應(yīng)1字節(jié)的8位,即每行由16字節(jié),共16×8=128個(gè)點(diǎn)組成,屏上64×16個(gè)顯示單元與顯示RAM區(qū)1024字節(jié)相對(duì)應(yīng),每一字節(jié)的內(nèi)容和顯示屏上相應(yīng)位置的亮暗對(duì)應(yīng)。例如屏的第一行的亮暗由RAM區(qū)的000H——00FH的16字節(jié)的內(nèi)容決定,當(dāng)(000H)=FFH時(shí),則屏幕的左上角顯示一條短亮線,長(zhǎng)度為8個(gè)點(diǎn);當(dāng)(3FFH)=FFH時(shí),則屏幕的右下角顯示一條短亮線;當(dāng)(000H)=FFH,(001H)=00H,(002H)=00H,……(00EH)=00H,(00FH)=00H時(shí),則在屏幕的頂部顯示一條由8段亮線和8條暗線組成的虛線。這就是LCD顯示的基本原理。字符的顯示用LCD顯示一個(gè)字符時(shí)比較復(fù)雜,因?yàn)橐粋€(gè)字符由6×8或8×8點(diǎn)陣組成,既要找到和顯示屏幕上某幾個(gè)位置對(duì)應(yīng)的顯示RAM區(qū)的8字節(jié),還要使每字節(jié)的不同位為“1”,其它的為“0”,為“1”的點(diǎn)亮,為“0”的不亮。這樣一來(lái)就組成某個(gè)字符。但由于內(nèi)帶字符發(fā)生器的控制器來(lái)說(shuō),顯示字符就比較簡(jiǎn)單了,可以讓控制器工作在文本方式,根據(jù)在LCD上開(kāi)始顯示的行列號(hào)及每行的列數(shù)找出顯示RAM對(duì)應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對(duì)應(yīng)的代碼即可。漢字的顯示漢字的顯示一般采用圖形的方式,事先從微機(jī)中提取要顯示的漢字的點(diǎn)陣碼(一般用字模提取軟件),每個(gè)漢字占32B,分左右兩半,各占16B,左邊為1、3、5……右邊為2、4、6……根據(jù)在LCD上開(kāi)始顯示的行列號(hào)及每行的列數(shù)可找出顯示RAM對(duì)應(yīng)的地址,設(shè)立光標(biāo),送上要顯示的漢字的第一字節(jié),光標(biāo)位置加1,送第二個(gè)字節(jié),換行按列對(duì)齊,送第三個(gè)字節(jié)……直到32B顯示完就可以LCD上得到一個(gè)完整漢字。1602LCD的基本參數(shù)及引腳功能 1602LCD分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的厚,是否帶背光在應(yīng)用中并無(wú)差別,兩者尺寸差別如下圖3.1所示。圖3.11602LCD概略圖1602LCD主要技術(shù)參數(shù)顯示容量:16×2個(gè)字符芯片工作電壓:4.5—5.5V工作電流:2.0mA(5.0V)模塊最佳工作電壓:5.0V字符尺寸:2.95×4.35(W×H)mm1602LCD各引腳接口說(shuō)明第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對(duì)比度調(diào)整端,接正電源時(shí)對(duì)比度最弱,接地時(shí)對(duì)比度最高,對(duì)比度過(guò)高時(shí)會(huì)產(chǎn)生“鬼影”,使用時(shí)可以通過(guò)一個(gè)10K的電位器調(diào)整對(duì)比度。第4腳:RS為寄存器選擇,高電平時(shí)選擇數(shù)據(jù)寄存器、低電平時(shí)選擇指令寄存器。第5腳:R/W為讀寫(xiě)信號(hào)線,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。當(dāng)RS和R/W共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址,當(dāng)RS為低電平R/W為高電平時(shí)可以讀忙信號(hào),當(dāng)RS為高電平R/W為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時(shí),液晶模塊執(zhí)行命令。第7~14腳:D0~D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負(fù)極。1602LCD的RAM地址映射及標(biāo)準(zhǔn)字庫(kù)表液晶顯示模塊是一個(gè)慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,圖3.2是1602的內(nèi)部顯示地址。圖3.21602內(nèi)部顯示地址例如第二行第一個(gè)字符的地址是40H,那么是否直接寫(xiě)入40H就可以將光標(biāo)定位在第二行第一個(gè)字符的位置呢?這樣不行,因?yàn)閷?xiě)入顯示地址時(shí)要求最高位D7恒定為高平1。所以實(shí)際寫(xiě)入的數(shù)據(jù)應(yīng)該是:01000000B(40H)+10000000B(80H)=11000000B(C0H)。在對(duì)液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時(shí)光標(biāo)是自動(dòng)右移的,無(wú)需人工干預(yù)。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。1602LCD的一般初始化(復(fù)位)過(guò)程圖3.31602初始化過(guò)程以后每次寫(xiě)指令、讀/寫(xiě)數(shù)據(jù)操作均需要檢測(cè)忙信號(hào)。其中寫(xiě)指令38H代表顯示模式設(shè)置;寫(xiě)指令08H代表顯示關(guān)閉;寫(xiě)指令01H代表顯示清屏;寫(xiě)指令06H代表顯示光標(biāo)移動(dòng)設(shè)置;寫(xiě)指令0CH代表顯示開(kāi)及光標(biāo)設(shè)置。硬件設(shè)計(jì)硬件電路總體設(shè)計(jì)本章主要介紹LC測(cè)試儀的硬件設(shè)計(jì),主要包括硬件電路總體設(shè)計(jì)、電容電感測(cè)量電路設(shè)計(jì)、主控制器與接口電路設(shè)計(jì)、LCD液晶顯示器電路設(shè)計(jì)[10]。硬件設(shè)計(jì)是整個(gè)系統(tǒng)的基礎(chǔ),要考慮的方方面面很多,除了實(shí)現(xiàn)此設(shè)計(jì)基本功能以外,主要考慮如下幾個(gè)因素:①系統(tǒng)穩(wěn)定度;②器件的通用性或易選購(gòu)性;③軟件編程的易實(shí)現(xiàn)性;④系統(tǒng)其它功能及性能指標(biāo),因此硬件設(shè)計(jì)至關(guān)重要。本設(shè)計(jì)主控制器采用Mega16單片機(jī),利用LM311振蕩電路來(lái)測(cè)量電容、電感[11],利用1602LCD液晶顯示器來(lái)顯示測(cè)量結(jié)果?,F(xiàn)從各個(gè)功能模塊的實(shí)現(xiàn)逐個(gè)進(jìn)行分析探討??傮w設(shè)計(jì)框圖圖4.1總體設(shè)計(jì)框圖電路原理圖圖4.2電路原理圖系統(tǒng)組成模塊單片機(jī)主控模塊單片機(jī)作為整個(gè)硬件系統(tǒng)的核心[12],它既是協(xié)調(diào)整機(jī)工作的控制器,又是數(shù)據(jù)處理器。Mega16是一款增強(qiáng)型16位微控制器。其集成度高,片內(nèi)資源豐富,接口模塊包括SPI、SCI、I2C、A/D、PWM等。它不僅在汽車(chē)電子、工業(yè)控制、中高檔機(jī)電產(chǎn)品等應(yīng)用領(lǐng)域具有廣泛的用途,而且在FLASH存儲(chǔ)控制及加密方面也有很強(qiáng)的功能。此設(shè)計(jì)的LM311振蕩電路,通過(guò)Mega16單片機(jī)上的PORTB端口與單片機(jī)主控模塊連接,PORTB為Mega16的通用輸入輸出引腳,輸出時(shí)由Mega16的通用輸入輸出引腳PORTA送至液晶顯示器1602LCD。LC測(cè)試模塊本機(jī)的核心電路是一個(gè)由LM311組成的LC震蕩器[13]。LM311是一個(gè)電壓比較器,當(dāng)電源被加上時(shí),LM311的第2腳因?yàn)榉謮弘娐返拇嬖跒?.5V,引起比較器輸出端為5V(此時(shí)由于C4的存在,末充電時(shí)等于短路).比較器的5V輸出電壓通過(guò)R4給C4充電,直到C4兩端即LM311第2腳的電壓等于2.5V.當(dāng)C4兩端電壓達(dá)到2.5V時(shí),LM311的輸出變?yōu)榈?0V),但由C1和L1組成的儲(chǔ)能電路會(huì)產(chǎn)生的個(gè)暫穩(wěn)態(tài).這個(gè)暫穩(wěn)態(tài)會(huì)與LC組成的電路諧振.這樣,一個(gè)與LC電路共振的頻率的方波便在LM311的輸出端產(chǎn)生了.這個(gè)方波通過(guò)R3和C3耦合到諧振電路上以產(chǎn)生連續(xù)的振蕩。再由單片機(jī)測(cè)量LC震蕩回路的頻率,然后再依據(jù)震蕩頻率計(jì)算出對(duì)應(yīng)的電容或電感量。顯示電路模塊本次設(shè)計(jì)中沒(méi)有采用LED數(shù)碼管,是因?yàn)槭褂?602字符型液晶,顯示字母和數(shù)字比較方便,不需要模擬轉(zhuǎn)換,降低功耗,控制簡(jiǎn)單,成本較低。其優(yōu)點(diǎn)有:顯示質(zhì)量高由于液晶顯示器每一個(gè)點(diǎn)在收到信號(hào)后就一直保持那種色彩和亮度,恒定發(fā)光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新新亮點(diǎn)。因此,液晶顯示器畫(huà)質(zhì)高且不會(huì)閃爍。數(shù)字式接口液晶顯示器都是數(shù)字式的,和單片機(jī)系統(tǒng)的接口更加簡(jiǎn)單可靠,操作更加方便。體積小、重量輕液晶顯示器通過(guò)顯示屏上的電極控制液晶分子狀態(tài)來(lái)達(dá)到顯示的目的,在重量上比相同顯示面積的傳統(tǒng)顯示器要輕得多。功耗低相對(duì)而言,液晶顯示器的功耗主要消耗在其內(nèi)部的電極和驅(qū)動(dòng)IC上,因而耗電量比其它顯示器要少得多。液晶顯示器LC1602,接成4線數(shù)據(jù)方式,省幾根數(shù)據(jù)線。LCD與Mega16的連接電路設(shè)計(jì)如圖4.3所示。圖4.31602LCD與Mega16的連接電路圖程序設(shè)計(jì)本章介紹LC測(cè)試儀的軟件部分[14]。該部分主要包括:程序總體設(shè)計(jì)流程、模塊設(shè)計(jì)及測(cè)試。其中,模塊設(shè)計(jì)介紹了LC測(cè)試儀實(shí)現(xiàn)依賴(lài)的三個(gè)功能模塊,它們分別是:按鍵處理程序模塊、電容電感計(jì)算程序模塊、液晶顯示程序模塊。本設(shè)計(jì)中的程序采用自頂向下設(shè)計(jì)。自頂向下設(shè)計(jì)是單片機(jī)系統(tǒng)軟件設(shè)計(jì)中使用較多的一種方法,它首先對(duì)軟件整體進(jìn)行設(shè)計(jì),完成整體設(shè)計(jì)之后,再進(jìn)行下一層的設(shè)計(jì)。在實(shí)際編程中,可以先編制主程序,而將從屬的程序和子程序用符號(hào)來(lái)代替,待主程序編好之后,再逐一編制各個(gè)從屬程序和子程序,最終完成系統(tǒng)軟件的設(shè)計(jì)。采用自頂向下設(shè)計(jì)方法的最大優(yōu)點(diǎn)在于它可以從總體上考慮軟件的功能,可以逐層進(jìn)行實(shí)現(xiàn),并且符合人的正常思維,條理性強(qiáng),也很方便程序查錯(cuò)。但是在這種設(shè)計(jì)方法中,每一級(jí)的錯(cuò)誤都會(huì)對(duì)其他級(jí)的程序產(chǎn)生影響,因此在調(diào)試過(guò)程中也應(yīng)自頂向下逐層進(jìn)行。程序設(shè)計(jì)流程單片機(jī)控制流程不僅擔(dān)負(fù)著量程的識(shí)別與轉(zhuǎn)換[15],而且還負(fù)責(zé)數(shù)據(jù)的修正和傳輸;因此主控制器的工作狀態(tài)直接決定著整個(gè)測(cè)量系統(tǒng)能否正常工作,所以控制測(cè)量程序?qū)φ麄€(gè)測(cè)量來(lái)說(shuō)至關(guān)重要。程序主要包括測(cè)頻率和計(jì)算兩部分。初始化完成后,調(diào)用讀出頻率、頻率測(cè)算及顯示程序,取待測(cè)電容/電感顯示。系統(tǒng)總體設(shè)計(jì)流程如圖5.1所示。圖5.1控制測(cè)量程序流程圖模塊程序設(shè)計(jì)本設(shè)計(jì)的主要模塊有案件處理程序模塊、電容電感計(jì)算程序模塊和液晶顯示程序模塊。按鍵處理程序模塊案件處理程序的主要功能是設(shè)置測(cè)量的類(lèi)型和測(cè)量的檔位,當(dāng)有按鍵被按下時(shí)就執(zhí)行相應(yīng)的按鍵功能,當(dāng)電容按鍵被按下后即進(jìn)行電容測(cè)量,當(dāng)電感按鍵被按下后即進(jìn)行電感測(cè)量。通過(guò)這樣的設(shè)計(jì),使得測(cè)量非常方便。具體流程圖如圖5.2所示。圖5.2按鍵處理程序流程圖電容電感計(jì)算程序模塊單片機(jī)根據(jù)得到的頻率計(jì)算出電容、電感值。首先將從振蕩電路獲得的頻率信號(hào)值存入相應(yīng)變量,再通過(guò)之前推算的電路原理公式設(shè)計(jì)計(jì)算代碼,最后向主程序返回電容、電感值。該程序流程圖如圖5.3所示。圖5.3電容電感計(jì)算程序流程圖液晶顯示程序模塊該程序模塊對(duì)測(cè)量結(jié)果清晰正確地顯示出來(lái),并保持穩(wěn)定。在LCD初始化之后,設(shè)置顯示地址為D0~D7,然后將需要寫(xiě)入的數(shù)據(jù)寫(xiě)入相應(yīng)的系統(tǒng)變量。整個(gè)程序相對(duì)來(lái)說(shuō)簡(jiǎn)單明了。具體程序流程如圖5.4所示。圖5.4液晶顯示程序流程圖實(shí)驗(yàn)主要程序代碼#include<iom16v.h>#include<macros.h>#defineLCD_EN_PORTPORTC#defineLCD_RW_PORTPORTC#defineLCD_RS_PORTPORTC#defineLCD_DATA_PORTPORTA#defineLCD_DATA_DDRDDRA#defineLCD_DATA_PINPINA#defineLCD_EN0x02//portc1out#defineLCD_RS0x01//portc0out#defineLCD_DATA0xf0//porta4/5/6/7out#definextal1#defineC25200constunsignedchartable[]="0123456789";unsignedlongF1,F2,Ct;unsignedintlast_TCNT1;floatC1;/*Publicfunctionprototypes*/voidLCD_init(void);//液晶初始化函數(shù)voidLCD_en_write(void);//液晶使能函數(shù)voidLCD_write_char(unsignedcommand,unsigneddata);//LCD寫(xiě)數(shù)據(jù)voidLCD_set_xy(unsignedcharx,unsignedchary);//寫(xiě)地址函數(shù)voidLCD_write_string(unsignedcharX,unsignedcharY,unsignedchar*s);//寫(xiě)入字符串函數(shù)voiddelay_nus(unsignedintn);//延遲nμS函數(shù)voiddelay_nms(unsignedintn);//延遲nmS函數(shù)#defineinterrupt_handlertimer2_ovf_isr:5voidtimer2_ovf_isr(void){unsignedinttemp;TCCR2=0x00; //停止 last_TCNT1=TCNT1; TCCR1B=0x00;TCNT2=0x0f;//reloadcountervalue Temp=PIND; if(temp==0x9F)//PIND6接低電平,校準(zhǔn)模式,PIND5接低電平,接入C1,不接基準(zhǔn)電容C2 {...} if(temp==0xBF)//PIND6接低電平,校準(zhǔn)模式,PIND5接高電平,接入C1和基準(zhǔn)電容C2 {...} if(temp==0xDF)//PIND6接高電平,測(cè)量模式,PIND5接低電平,接入C1和被測(cè)電容Cx {...} if(temp==0xFF)//PIND6接高電平,測(cè)量模式,PIND5接高電平,接入C1和被測(cè)電感Lx {...}... }voidtimer1_init(void) //voidtimer2_init(void) //voidcalc_C1() //計(jì)算C1voidcalc_Lx() //計(jì)算Lxvoiddisplay_num(unsignedlongi) //顯示數(shù)字ivoidmain(void) //主函數(shù){unsignedinttemp=0,temp1;OSCCAL=0XA9;DDRA|=LCD_DATA;//數(shù)據(jù)為輸出 DDRC|=LCD_RS|LCD_EN;//置位RS.ENDDRD=0x00;LCD_init(); delay_nms(1000); CLI(); //disableallinterruptstimer1_init(); timer2_init();MCUCR=0x00;GICR=0x0
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 關(guān)于臨時(shí)簽訂合同報(bào)告
- 國(guó)企勞動(dòng)派遣合同
- 合同法案例精解
- 鐘點(diǎn)工聘用合同范本
- 大班課件《誰(shuí)是采蜜冠軍》
- 2024正規(guī)的自然人借款合同樣本
- 2024合同信息化管理系統(tǒng)【信息系統(tǒng)合同】
- 2024個(gè)人租房協(xié)議書(shū)合同租房協(xié)議書(shū)(詳細(xì)版)
- 2024標(biāo)準(zhǔn)銷(xiāo)售業(yè)務(wù)員合同范本
- 2024個(gè)體借款合同協(xié)議模板
- 小學(xué)數(shù)學(xué)計(jì)算專(zhuān)項(xiàng)訓(xùn)練之乘法分配律(提公因數(shù))
- 《食物在體內(nèi)的旅行》說(shuō)課稿
- 校園封閉安全管理制度培訓(xùn)
- 律師事務(wù)所章程樣本樣本
- 職規(guī)大賽醫(yī)學(xué)影像成長(zhǎng)賽道
- 親子家書(shū)初中家長(zhǎng)寫(xiě)給孩子的一封信
- 部編版五年級(jí)語(yǔ)文下冊(cè)第五單元大單元教學(xué)設(shè)計(jì)
- 市政工程道路施工主要管理人員及勞動(dòng)力安排
- 細(xì)節(jié)服務(wù)的重要性課件
- 2023年江蘇省事業(yè)單位公開(kāi)招聘考試真題
- 建筑設(shè)計(jì)方法入門(mén)(建筑設(shè)計(jì))
評(píng)論
0/150
提交評(píng)論