

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 1 引言</b></p><p> 傳統(tǒng)的電工量(電壓、電流、頻率、功率因數(shù)、各種功率、紋波系數(shù)等)測(cè)量使用各種各樣的測(cè)量?jī)x表,但計(jì)算機(jī)技術(shù)的發(fā)展已經(jīng)為新型電工測(cè)量系統(tǒng)的設(shè)計(jì)提供了可能。對(duì)用戶負(fù)載的電壓、電流進(jìn)行取樣,應(yīng)用數(shù)據(jù)采集與數(shù)據(jù)處理技術(shù)可以方便地給出電壓(電流)的各次諧波成分的幅度、頻率與相位,從而利用計(jì)算方式可以一次性地給出前述眾多電工量,實(shí)現(xiàn)一機(jī)
2、多用。</p><p> 1.1 課題研究的背景</p><p> 電學(xué)參數(shù)測(cè)量技術(shù)涉及范圍廣,特別是微電壓、微電流、高電壓以及待測(cè)信號(hào)強(qiáng)弱相差極大的情況下,既要保證弱信號(hào)的測(cè)量精度又要兼顧強(qiáng)信號(hào)的測(cè)量范圍,在技術(shù)上有一定的難度。傳統(tǒng)的低成本儀表在測(cè)量電壓、電流時(shí)都采用手動(dòng)選擇檔位的方法來(lái)轉(zhuǎn)換量程。在使用中,當(dāng)忘記轉(zhuǎn)換檔位時(shí),會(huì)造成儀表測(cè)量精度下降或損壞。 現(xiàn)代電子測(cè)量對(duì)系統(tǒng)的精度要
3、求越來(lái)越高且智能化程度也越來(lái)越高。</p><p> 近十幾年來(lái),單片機(jī)作為微計(jì)算機(jī)一個(gè)很重要的分支,應(yīng)用廣泛,發(fā)展迅速,已經(jīng)對(duì)人類社會(huì)產(chǎn)生了深遠(yuǎn)的影響。單片機(jī)在生產(chǎn)過(guò)程控制、自動(dòng)檢測(cè)、數(shù)據(jù)采集及處理、科技計(jì)算、商業(yè)管理及辦公室自動(dòng)化等方面獲得了廣泛的應(yīng)用。單片機(jī)具有體積小、重量輕、耗能省、價(jià)格低可靠性和通用靈活性等特點(diǎn),尤其是美國(guó)Intel公司生產(chǎn)的MCS-51系列單片機(jī),由于其具有集成度高、處理功能強(qiáng)、可靠
4、性好、結(jié)構(gòu)簡(jiǎn)單、價(jià)格低廉、易于使用等優(yōu)點(diǎn),在我國(guó)已經(jīng)得到廣泛的應(yīng)用。由于MCS-51單片機(jī)易于學(xué)習(xí)、掌握、性能價(jià)格比高,另外以MCS-51單片機(jī)的基本內(nèi)核為核心的各種擴(kuò)展型、增強(qiáng)型的單片機(jī)不斷推出,所以在今后若干年內(nèi),MCS-51系列單片機(jī)仍是我國(guó)在單片機(jī)應(yīng)用領(lǐng)域中首選機(jī)型。單片機(jī)技術(shù)在自動(dòng)控制領(lǐng)域中有著十分廣泛的應(yīng)用。如汽車、航空、電話、傳真、視頻等,很多行業(yè)設(shè)計(jì)自動(dòng)控制情況下,通常會(huì)涉及單片機(jī)技術(shù)。</p><p
5、> 1.2 課題研究的意義</p><p> 電壓、電流是基本的物理量,對(duì)電壓、電流進(jìn)行測(cè)量的要求是普遍存在的,無(wú)論在科學(xué)研究生產(chǎn)實(shí)踐,或是在日常生活中,人們都需要對(duì)電壓進(jìn)行測(cè)量。不僅電量,即使是非電量也常常是借助電壓、電流測(cè)量的方法來(lái)進(jìn)行研究。本設(shè)計(jì)的最基本的功能就是實(shí)現(xiàn)一定范圍內(nèi)的電壓、電流的測(cè)量。</p><p> 功率因數(shù)是交流電路的重要技術(shù)數(shù)據(jù)之一。功率因數(shù)的高低,
6、對(duì)于電氣設(shè)備的利用率和分析、研究電能消耗等問(wèn)題都有十分重要的意義。因此,在電力系統(tǒng)和工業(yè)生產(chǎn)中,功率因數(shù)的在線精確檢測(cè)對(duì)電量計(jì)算及無(wú)功功率補(bǔ)償計(jì)算十分重要。所謂功率因數(shù),是指任意二端網(wǎng)絡(luò)(與外界有二個(gè)接點(diǎn)的電路)兩端電壓U與其中電流I之間的位相差的余弦。在二端網(wǎng)絡(luò)中消耗的功率是指平均功率,也稱為有功功率,它等于</p><p> 由此可以看出,電路中消耗的功率P,不僅取決于電壓V與電流I的大小,還與功率因數(shù)有關(guān)
7、。電路的功率因數(shù)定義為有功功率P與視在功率功率S的比值,即:</p><p> 其中,角表示功率因數(shù)角,代表了電壓U與電流I之間的夾角。功率因數(shù)也就是功率因數(shù)角的余弦,因此,測(cè)出電壓與電流間的相位差,就可以計(jì)算出功率因數(shù)。功率因數(shù)的大小,取決于電路中負(fù)載的性質(zhì)。對(duì)于電阻性負(fù)載,其電壓與電流的位相差為0,因此,電路的功率因數(shù)最大();而純電感電路,電壓與電流的位相差為,并且是電壓超前電流;在純電容電路中,電壓與電
8、流的位相差則為,即電流超前電壓。在后兩種電路中,功率因數(shù)都為0。對(duì)于一般性負(fù)載的電路,功率因數(shù)就介于0與1之間。功率因素的測(cè)量是本課題設(shè)計(jì)的一個(gè)比較重要的功能。</p><p> 在交流電路中,由電源供給負(fù)載的電功率有兩種:一種是有功功率,一種是無(wú)功功率。有功功率是保持用電設(shè)備正常運(yùn)行所需的電功率,也就是將電能轉(zhuǎn)換為其他形式能量(機(jī)械能、光能、熱能)的電功率。無(wú)功功率比較抽象,它是用于電路內(nèi)電場(chǎng)與磁場(chǎng)的交換,并
9、用來(lái)在電氣設(shè)備中建立和維持磁場(chǎng)的電功率。它不對(duì)外做功,而是轉(zhuǎn)變?yōu)槠渌问降哪芰俊7彩怯须姶啪€圈的電氣設(shè)備,要建立磁場(chǎng),就要消耗無(wú)功功率。無(wú)功功率決不是無(wú)用功率,它的用處很大。電動(dòng)機(jī)需要建立和維持旋轉(zhuǎn)磁場(chǎng),使轉(zhuǎn)子轉(zhuǎn)動(dòng),從而帶動(dòng)機(jī)械運(yùn)動(dòng),電動(dòng)機(jī)的轉(zhuǎn)子磁場(chǎng)就是靠從電源取得無(wú)功功率建立的。變壓器也同樣需要無(wú)功功率,才能使變壓器的一次線圈產(chǎn)生磁場(chǎng),在二次線圈感應(yīng)出電壓。因此,沒(méi)有無(wú)功功率,電動(dòng)機(jī)就不會(huì)轉(zhuǎn)動(dòng),變壓器也不能變壓,交流接觸器不會(huì)吸合。在
10、正常情況下,用電設(shè)備不但要從電源取得有功功率,同時(shí)還需要從電源取得無(wú)功功率。如果電網(wǎng)中的無(wú)功功率供不應(yīng)求,用電設(shè)備就沒(méi)有足夠的無(wú)功功率來(lái)建立正常的電磁場(chǎng),那么,這些用電設(shè)備就不能維持在額定情況下工作,用電設(shè)備的端電壓就要下降,從而影響用電設(shè)備的正常運(yùn)行。無(wú)功功率對(duì)供、用電產(chǎn)生一定的不良影響,主要表現(xiàn)在:</p><p> (1)降低發(fā)電機(jī)有功功率的輸出。</p><p> (2)降低輸
11、、變電設(shè)備的供電能力。</p><p> (3)造成線路電壓損失增大和電能損耗的增加。</p><p> (4)造成低功率因數(shù)運(yùn)行和電壓下降,使電氣設(shè)備容量得不到充分發(fā)揮。</p><p> 從發(fā)電機(jī)和高壓輸電線供給的無(wú)功功率,遠(yuǎn)遠(yuǎn)滿足不了負(fù)荷的需要,所以在電網(wǎng)中要設(shè)置一些無(wú)功補(bǔ)償裝置來(lái)補(bǔ)充無(wú)功功率,以保證用戶對(duì)無(wú)功功率的需要,這樣用電設(shè)備才能在額定電壓下工作
12、。這就是電網(wǎng)需要裝設(shè)無(wú)功補(bǔ)償裝置的道理。由此可見(jiàn)通過(guò)儀器測(cè)量電路中的有用功率和無(wú)用功率,從而改變電路中的有用功率和無(wú)用功率的比例,對(duì)于電器設(shè)備的正常工作顯得十分的重要。</p><p> 1.3 智能儀表國(guó)內(nèi)外發(fā)展概況</p><p> 智能儀器/儀表是計(jì)算機(jī)技術(shù)向測(cè)量?jī)x器移植的產(chǎn)物。是含有微計(jì)算機(jī)或微處理器的測(cè)量?jī)x器。由于它擁有對(duì)數(shù)據(jù)的存儲(chǔ)、運(yùn)算、邏輯判斷及自動(dòng)化操作等功能,有著智
13、能的作用(表現(xiàn)為智能的延伸或加強(qiáng)等),因而被稱之為智能儀器。這一觀點(diǎn)已逐漸被國(guó)內(nèi)外學(xué)術(shù)界所接受。如我國(guó)電磁測(cè)量信息處理儀器學(xué)會(huì)于1988年正式成立“自動(dòng)測(cè)試與智能儀器專業(yè)學(xué)組”,1986年IMECO(InternationalM easurementConfederation,國(guó)際測(cè)量聯(lián)合會(huì))以“智能儀器”為主題召開(kāi)了專門(mén)的討論會(huì),IFAC (InternationalFederation of Automatic Control,國(guó)際
14、自動(dòng)控制聯(lián)合會(huì))1988年的理事會(huì)正式確立“智能元件及儀器”(In telligentC omponentsa ndI nstruments)(TC25)( C&I)為其系列學(xué)術(shù)委員會(huì)之一。此外,1989年5月在我國(guó)武漢召開(kāi)了第一界測(cè)試技術(shù)與智能儀器國(guó)際學(xué)術(shù)討論會(huì)(ISMT 1189),自從 1971年世界上出現(xiàn)了第一種微處理器(美國(guó)Intel公司4004型4位微處理器芯片)以來(lái),微計(jì)算機(jī)技術(shù)得到了迅猛的發(fā)展</p>
15、<p> 1.4 本課題的主要工作</p><p> 隨著電子技術(shù)的飛速發(fā)展,以前的機(jī)械式的電壓、電流、功率因素、有用功率和無(wú)用功率測(cè)量?jī)x表已經(jīng)漸漸的被電子儀表所替代。而且現(xiàn)在的電子產(chǎn)品的一個(gè)顯著的特點(diǎn)是:體積越來(lái)越小,功能越來(lái)越多元化,性能越來(lái)越好。鑒于目前的電子產(chǎn)品的發(fā)展趨勢(shì),本課題設(shè)計(jì)一個(gè)電工測(cè)量復(fù)用系統(tǒng),該系統(tǒng)可以同時(shí)完成電壓、電流、功率因素角、有用功率、無(wú)用功率等物理參數(shù)的測(cè)量和計(jì)算
16、。同時(shí)可以通過(guò)按鍵的選擇在LED數(shù)碼管上面顯示的參數(shù)值。</p><p> 本課題的主要工作和設(shè)計(jì)內(nèi)容如下:</p><p> 1.查閱電工測(cè)量?jī)x表的相關(guān)資料;</p><p> 2.檢索復(fù)用表資料;</p><p> 3.掌握多通道信號(hào)的取樣與數(shù)據(jù)采集技術(shù);</p><p> 4.掌握各種電工量的概
17、念;</p><p> 5.設(shè)計(jì)完成此復(fù)用表;</p><p> 6.復(fù)用表程序設(shè)計(jì);</p><p> 2 總體方案的設(shè)計(jì)及組成</p><p> 2.1 系統(tǒng)的基本功能</p><p> 一般來(lái)說(shuō),電子測(cè)量?jī)x器的硬件組成包括:模擬信號(hào)輸入部分、信號(hào)處理部分、模數(shù)轉(zhuǎn)換部分和人機(jī)交互部分。但每一部分的
18、具體實(shí)現(xiàn)方法應(yīng)結(jié)合儀器所需完成的功能、成本及相關(guān)技術(shù)的發(fā)展與成熟程度等因素綜合考慮。本課題考慮設(shè)計(jì)一個(gè)系統(tǒng),該系統(tǒng)能完成電壓測(cè)量、電流測(cè)量、功率因素測(cè)量、有用功率測(cè)量和無(wú)用功率測(cè)量的要求。主要的設(shè)計(jì)思路是對(duì)用戶負(fù)載的電壓、電流模擬量進(jìn)行取數(shù)字樣,應(yīng)用數(shù)據(jù)采集與數(shù)據(jù)處理技術(shù)可以方便地給出電壓(電流)的各次諧波成分的幅度、頻率與相位,通過(guò)比較電壓、電流的相位差,計(jì)算出功率因素角,最后利用計(jì)算方式可以得到有用功率和無(wú)用功率,從而實(shí)現(xiàn)一個(gè)儀器測(cè)
19、量眾多電工量。</p><p> 2.2 設(shè)計(jì)方案比較</p><p> 根據(jù)以上系統(tǒng)所需完成的功能和特點(diǎn),本設(shè)計(jì)提出方案1和方案2,并進(jìn)行比較最后得出方案1比較適合這次的畢業(yè)設(shè)計(jì)。</p><p> 2.2.1 設(shè)計(jì)方案一</p><p> 在方案1中,電工測(cè)量復(fù)用表系統(tǒng)設(shè)計(jì)的核心芯片采用的MCS-51系列單片機(jī)。本電工測(cè)量系統(tǒng)
20、選用AT89C51單片機(jī)作為系統(tǒng)的核心。該單片機(jī)具有兩個(gè)外部中斷,兩個(gè)定時(shí)中斷,方波輸入接入其中一個(gè)中斷,當(dāng)用低脈沖到來(lái),觸發(fā)外部中斷0,同時(shí)定時(shí)器0開(kāi)始計(jì)數(shù),通過(guò)計(jì)算得到功率因素角。模擬數(shù)字轉(zhuǎn)換芯片采用的是8位串行AD轉(zhuǎn)換芯片ADC0832,利用該芯片實(shí)現(xiàn)把電壓和電流模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。通過(guò)前面得到的電壓、電流和功率因素角等值,然后計(jì)算得到有用功率和無(wú)用功率,最后通過(guò)按鍵選擇顯示內(nèi)容。系統(tǒng)主要分為:電源部分、模擬數(shù)字轉(zhuǎn)換部分、方波
21、輸入電路、晶振電路、顯示電路、復(fù)位等電路。圖1為基于MSC-51單片機(jī)的設(shè)計(jì)框圖。</p><p> 圖1 基于MSC-51單片機(jī)設(shè)計(jì)框圖</p><p> 2.2.2 設(shè)計(jì)方案二</p><p> 在方案2中,電工測(cè)量復(fù)用表系統(tǒng)設(shè)計(jì)的核心芯片采用的PIC系列單片機(jī)。選用PIC16C74單片機(jī)作為系統(tǒng)的核心。該單片機(jī)內(nèi)置具有8路10 位 A/D轉(zhuǎn)換,3個(gè)硬件
22、定時(shí)器,方波輸入接入其中一個(gè)中斷,當(dāng)用低脈沖到來(lái),觸發(fā)外部中斷0,同時(shí)定時(shí)器0開(kāi)始計(jì)數(shù),通過(guò)計(jì)算得到功率因素角。外部電壓和電流接入到其中的兩個(gè)AD轉(zhuǎn)換AN0和AN1。通過(guò)前面得到的電壓、電流和功率因素角等值,然后計(jì)算得到有用功率和無(wú)用功率,最后通過(guò)按鍵選擇顯示內(nèi)容。系統(tǒng)主要分為:電源部分、電壓輸入、電流輸入、方波輸入電路、晶振電路、顯示電路、復(fù)位等電路。圖2為基于PIC單片機(jī)的設(shè)計(jì)框圖。</p><p> 圖2
23、基于PIC單片機(jī)設(shè)計(jì)框圖</p><p> 2.2.3 方案比較</p><p> 方案1采用的是MSC-51系列單片機(jī),該系列單片機(jī)沒(méi)有集成AD轉(zhuǎn)換的功能,所以需要外接一個(gè)AD轉(zhuǎn)換芯片,這樣硬件電路比較復(fù)雜,但是由于MSC-51是大多數(shù)高校的單片機(jī)的入門(mén)課程,而且其開(kāi)發(fā)工具也比較多,也有很多人已經(jīng)自制出一套免費(fèi)的開(kāi)發(fā)工具,所以開(kāi)發(fā)成本比較低廉,比較適合學(xué)生畢業(yè)設(shè)計(jì)選用。</p
24、><p> 方案2采用的是PIC系列單片機(jī),該系列單片機(jī)集成了8路10位AD轉(zhuǎn)換的功能,不需要外接AD轉(zhuǎn)換芯片,這樣硬件電路十分簡(jiǎn)單,但是由于PIC系列單片機(jī)的開(kāi)發(fā)工具費(fèi)用比較昂貴,前期一次性投入比較大,比較適合公司的選用。</p><p> 綜合分析,本次畢業(yè)設(shè)計(jì)采用方案1進(jìn)行設(shè)計(jì)。</p><p> 2.3 系統(tǒng)的設(shè)計(jì)原則</p><p&
25、gt; 電工測(cè)量復(fù)用表是科學(xué)研究生產(chǎn)實(shí)踐,日常生活的重要保證,其功能、測(cè)量設(shè)備和技術(shù)都應(yīng)遵循以下原則:</p><p> 系統(tǒng)設(shè)計(jì)滿足現(xiàn)行《電子儀表技術(shù)規(guī)范》的要求。</p><p> 先進(jìn)性。系統(tǒng)將在了解國(guó)內(nèi)外發(fā)展動(dòng)態(tài),吸收其經(jīng)驗(yàn)和成果的基礎(chǔ)上進(jìn)行方案設(shè)計(jì),使系統(tǒng)的技術(shù)性能和水平具有明顯的先進(jìn)性。</p><p> 可靠性。系統(tǒng)運(yùn)行安全可靠,性能穩(wěn)定,可以
26、在惡劣環(huán)境下長(zhǎng)期工作。</p><p> 通用性。在設(shè)計(jì)時(shí),應(yīng)充分考慮其應(yīng)用對(duì)象的共性,使系統(tǒng)具有較強(qiáng)的通用性。</p><p> 擴(kuò)展性。系統(tǒng)的設(shè)計(jì)容量要足夠大,滿足系統(tǒng)今后擴(kuò)充需要。</p><p> 經(jīng)濟(jì)性。系統(tǒng)的造價(jià)經(jīng)濟(jì)合理,性能價(jià)格高。</p><p> 操作維護(hù)方便。在軟件方面,要求人機(jī)界面友好,操作簡(jiǎn)便;在硬件方面,要求
27、維護(hù)檢修方便。</p><p> 3 硬件結(jié)構(gòu)與設(shè)計(jì)</p><p> 電工測(cè)量復(fù)用表設(shè)計(jì)分為硬件設(shè)計(jì)部分和軟件設(shè)計(jì)部分,硬件是軟件的基礎(chǔ),軟件是硬件的靈魂,下面我們對(duì)硬件設(shè)計(jì)進(jìn)行簡(jiǎn)單的描述。</p><p> 3.1 AT89C51單片機(jī)簡(jiǎn)介</p><p> 單片機(jī)是一個(gè)單芯片形態(tài),面向控制對(duì)象的嵌入式應(yīng)用計(jì)算機(jī)系統(tǒng)。它的出現(xiàn)
28、及發(fā)展使計(jì)算機(jī)技術(shù)從通用型數(shù)值計(jì)算領(lǐng)域進(jìn)入到智能化的控制領(lǐng)域。從此,計(jì)算機(jī)技術(shù)在兩個(gè)重要領(lǐng)域—通用計(jì)算機(jī)領(lǐng)域和嵌入式計(jì)算機(jī)領(lǐng)域都得到了極其重要的發(fā)展,并正在深深地改變著我們的社會(huì)。</p><p> AT89C51 是美國(guó) ATMEL公司生產(chǎn)的低電壓,高性能 CMOS8位單片機(jī),片內(nèi)含4 k bytes 的可反復(fù)擦寫(xiě)的只讀程序存儲(chǔ)器(PEROM)和128bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATME
29、L公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和Flash存儲(chǔ)單元,支持ISP在線下載程序,功能強(qiáng)大AT89C51單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域。 </p><p><b> 主要性能參數(shù):</b></p><p> 與MCS-51產(chǎn)品指令系統(tǒng)完全兼容</p>
30、<p> 4k字節(jié)可重擦寫(xiě)Flash閃速存儲(chǔ)器</p><p><b> 1000次擦寫(xiě)周期</b></p><p> 全靜態(tài)操作:0Hz-24MHz</p><p><b> 三級(jí)加密程序存儲(chǔ)器</b></p><p> 128×8字節(jié)內(nèi)部RAM</p>
31、<p> 32個(gè)可編程I/O口線</p><p> 2個(gè)16位定時(shí)/計(jì)數(shù)器</p><p><b> 6個(gè)中斷源</b></p><p> 可編程串行UART通道</p><p> 低功耗空閑和掉電模式</p><p> AT89C51的引腳圖如圖3所示,各引腳的主要功能為
32、:</p><p> 圖3 AT89C51的引腳圖</p><p><b> VCC: 提供電源</b></p><p><b> GND: 地</b></p><p> P0口:P0 口是一組8 位漏極開(kāi)路型雙向 I/O 口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能吸收電流的方式
33、驅(qū)動(dòng)8個(gè)TTL邏輯門(mén)電路,對(duì)端口寫(xiě)“1”可作為高阻抗輸入端用。在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問(wèn)期間激活內(nèi)部上拉電阻。在FIash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。</p><p> P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1
34、”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(ILI)。Flash 編程和程序校驗(yàn)期間,P1 接收低 8 位地址。</p><p> P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口,作輸入口
35、使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(ILI)。在訪問(wèn)外部程序存儲(chǔ)器或16位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX@DPTR指令)時(shí),P2口送出高8位地址數(shù)據(jù)。在訪問(wèn) 8 位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行MOVX@RI指令)時(shí),P2 口線上的內(nèi)容(也即特殊功能寄存器(SFR)區(qū)中R2寄存器的內(nèi)容),在整個(gè)訪問(wèn)期間不改變。Flash 編程或校驗(yàn)時(shí),P2 亦接收高位地址和其它控制信號(hào)。</p>&
36、lt;p> P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。對(duì)P3 口寫(xiě)入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。作輸入端時(shí),被外部拉低的P3 口將用上拉電阻輸出電流(ILI)。</p><p> P3 口除了作為一般的 I/O 口線外,更重要的用途是它的第二功能,如表1所示:</p><p> 表
37、1 P3口的第二功能</p><p> P3 口還接收一些用于 Flash 閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)。</p><p> RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。</p><p> ALE/PROG: 當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問(wèn)
38、外部存儲(chǔ)器,ALE 仍以時(shí)鐘振蕩頻率的 l/6 輸出固定的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。對(duì)Flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖。如有必要,可通過(guò)對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的DO位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令A(yù)LE才會(huì)被激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無(wú)效。<
39、;/p><p> EA/VPP:外部訪問(wèn)允許。欲使CPU僅訪問(wèn)外部程序存儲(chǔ)器(地址為0000H—FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平(接VCC端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。Flash 存儲(chǔ)器編程時(shí),該引腳加上+12V 的編程允許電源 Vpp,當(dāng)然這必須是該器件是使用 12V 編程電壓 Vpp。</p>
40、<p> XTAL1:振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸入端。</p><p> XTAL2:振蕩器反相放大器的輸出端。</p><p> 3.2 電路設(shè)計(jì)工具選擇</p><p> 隨著計(jì)算機(jī)在國(guó)內(nèi)的逐漸普及,EDA(Electronic Design Automatic,電路設(shè)計(jì)自動(dòng)化)軟件在電路行業(yè)的應(yīng)用也越來(lái)越廣泛,目前國(guó)內(nèi)最為常用的
41、EDA軟件有:PROTEL、ORCAD、PSPICE、EWB和Proteus等。</p><p><b> PROTEL</b></p><p> PROTEL是PORTEL公司在20世紀(jì)80年代末推出的電路行業(yè)的CAD軟件,它當(dāng)之無(wú)愧地排在眾多EDA軟件的前面,是電路設(shè)計(jì)者的首選軟件。它較早在國(guó)內(nèi)使用,普及率也最高,有些高校的電路專業(yè)還專門(mén)開(kāi)設(shè)了課程來(lái)學(xué)習(xí)它。幾
42、乎所有的電路公司都要用到它。早期的PROTEL主要作為印刷板自動(dòng)布線工具使用,運(yùn)行在DOS環(huán)境,對(duì)硬件的要求很低,在無(wú)硬盤(pán)286機(jī)的1M內(nèi)存下就能運(yùn)行。它的功能較少,只有電原理圖繪制與印刷板設(shè)計(jì)功能,印刷板自動(dòng)布線的布通率也低。在PROTEL99成為經(jīng)典至今仍然廣泛被人使用之后,現(xiàn)在的PROTEL已發(fā)展到PROTELDXP,是個(gè)龐大的EDA軟件,它包含了電原理圖繪制、模擬電路與數(shù)字電路混合信號(hào)仿真、多層印刷電路板設(shè)計(jì)(包含印刷電路板自動(dòng)
43、布線)、可編程邏輯器件設(shè)計(jì)、圖表生成、電路表格生成、支持宏操作等功能,并具有Client/Server (客戶/服務(wù)器)體系結(jié)構(gòu),同時(shí)還兼容一些其它設(shè)計(jì)軟件的文件格式,如ORCAD、PSPICE、EXCEL等。使用多層印制線路板的自動(dòng)布線,可實(shí)現(xiàn)高密度PCB的100%布通率。</p><p><b> ORCAD</b></p><p> ORCAD是由ORCAD
44、公司于20世紀(jì)80年代末推出的EDA軟件。它是世界上使用最廣的EDA軟件,每天都有上百萬(wàn)的電路工程師在使用它,相對(duì)于其它EDA軟件而言,它的功能也是最強(qiáng)大的,由于ORCAD軟件使用了軟件狗防盜版,因此在國(guó)內(nèi)它并不普及,知名度也比不上PROTEL,只有少數(shù)的電路設(shè)計(jì)者使用它。早在工作于DOS環(huán)境的ORCAD 4.0,它就集成了電原理圖繪制、印制電路板設(shè)計(jì)、數(shù)字電路仿真、可編程邏輯器件設(shè)計(jì)等功能,而且它的界面友好且直觀。它的元器件庫(kù)也是所有
45、EDA軟件中最豐富的,在世界上它一直是EAD軟件中的首選。它集成了電原理圖繪制,印刷電路板設(shè)計(jì)、模擬與數(shù)字電路混合仿真等功能。它的電路仿真的元器件庫(kù)更達(dá)到了8500個(gè),收入了幾乎所有的通用型電路元器件模塊但同時(shí)它的售價(jià)也不菲。</p><p><b> PSPICE</b></p><p> PSPICE是較早出現(xiàn)的EDA軟件之一,1985年就由MICROSIM公
46、司推出。在電路仿真方面,它的功能可以說(shuō)是最為強(qiáng)大,在國(guó)內(nèi)被普遍使用。整個(gè)軟件由原理圖編輯、電路仿真、激勵(lì)編輯、元器件庫(kù)編輯、波形圖等幾個(gè)部分組成,使用時(shí)是一個(gè)整體,但各個(gè)部分各有各的窗口。</p><p> PSPICE發(fā)展至今,已被并入ORCAD,成為ORCAD-PSPICE,但PSPICE仍然單獨(dú)銷售和使用,是功能強(qiáng)大的模擬電路和數(shù)字電路混合仿真EDA軟件。它可以進(jìn)行各種各樣的電路仿真、激勵(lì)建立、溫度與噪聲
47、分析、模擬控制、波形輸出、數(shù)據(jù)輸出、并在同一個(gè)窗口內(nèi)同時(shí)顯示模擬與數(shù)字的仿真結(jié)果。無(wú)論對(duì)哪種器件哪些電路進(jìn)行仿真,包括IGBT、脈寬調(diào)制電路、模/數(shù)轉(zhuǎn)換、數(shù)/模轉(zhuǎn)換等,都可以得到精確的仿真結(jié)果。對(duì)于庫(kù)中沒(méi)有的元器件模塊,還可以自已編輯。它在INTERNET上的網(wǎng)址與ORCAD公司一樣。 </p><p><b> EWB</b></p><p> EWB(ELEC
48、TRONICS WORKBENCH EDA)軟件是交互圖像技術(shù)有限公司(INTERACTIVE IMAGE TECHNOLOGIES Ltd)在20世紀(jì)90年代初推出的EDA軟件,但在國(guó)內(nèi)開(kāi)始使用卻是近幾年的事。相對(duì)其它EDA軟件而言,它是個(gè)較小巧的軟件,功能也比較單一,就是進(jìn)行模擬電路和數(shù)字電路的混合仿真,但你絕對(duì)不可小瞧它,它的仿真功能十分強(qiáng)大,幾乎100%地仿真出真實(shí)電路的結(jié)果,而且它在桌面上提供了萬(wàn)用表、示波器、信號(hào)發(fā)生器、掃頻
49、儀、邏輯分析儀、數(shù)字信號(hào)發(fā)生器、邏輯轉(zhuǎn)換器等工具,它的器件庫(kù)中則包含了許多大公司的晶體管元器件、集成電路和數(shù)字門(mén)電路芯片,器件庫(kù)中沒(méi)有的元器件,還可以由外部模塊導(dǎo)入。在眾多的電路仿真軟件中,EWB是最容易上手的,它的工作界面非常直觀,原理圖和各種工具都在同一個(gè)窗口內(nèi),未接觸過(guò)它的人稍加學(xué)習(xí)就可以很熟練地使用該軟件。對(duì)于電路設(shè)計(jì)工作者來(lái)說(shuō),它是個(gè)極好的EDA工具,許多電路你無(wú)須動(dòng)用烙鐵就可得知它的結(jié)果,而且若想更換元器件或改變?cè)骷?shù),
50、只須點(diǎn)點(diǎn)鼠標(biāo)即可,它也可以作為電學(xué)知識(shí)的輔助教學(xué)軟件使用,利用它可以直接從屏幕上看到各種電路的輸出波形。</p><p><b> Proteus</b></p><p> Proteus ISIS是英國(guó)Labcenter公司開(kāi)發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路,該軟件的特點(diǎn)是:1.實(shí)現(xiàn)
51、了單片機(jī)仿真和SPICE電路仿真相結(jié)合。具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤(pán)和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。2.支持主流單片機(jī)系統(tǒng)的仿真。目前支持的單片機(jī)類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。3.提供軟件調(diào)試功
52、能。在硬件仿真系統(tǒng)中具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、寄存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C51 uVision2等軟件。4.具有強(qiáng)大的原理圖繪制功能。總之,該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大。</p><p> 由于本次畢業(yè)設(shè)計(jì)不僅需要原理分析,還需要進(jìn)行硬件設(shè)計(jì)和調(diào)試,故本次畢
53、業(yè)設(shè)計(jì)采用的比較常用的設(shè)計(jì)工具Protell 99 SE。</p><p><b> 3.3 電源部分</b></p><p> 對(duì)于現(xiàn)在一個(gè)電子系統(tǒng)來(lái)說(shuō),電源部分的設(shè)計(jì)也越來(lái)越重要。對(duì)于一個(gè)實(shí)際的電子系統(tǒng),要認(rèn)真的分析它的電源需求。不僅僅是關(guān)心輸入電壓,輸出電壓和電流,還要仔細(xì)考慮到總的功耗,電源實(shí)現(xiàn)的效率,電源部分對(duì)負(fù)載變化的瞬態(tài)響應(yīng)能力,關(guān)鍵器件對(duì)電源波動(dòng)
54、的容忍范圍以及相應(yīng)的允許的電源紋波,還有散熱問(wèn)題等等。本次電工測(cè)量復(fù)用表設(shè)計(jì)系統(tǒng)中使用到了+5V的電源,電源設(shè)計(jì)的原理圖如圖4,輸入是+12V的直流電源。電路中使用到穩(wěn)壓的芯片是7805,7805是5伏的穩(wěn)壓芯片,這種芯片的好處是應(yīng)用比較的簡(jiǎn)單,只需要接上幾個(gè)電容就可以使用了。而且如果前段如果電源有輕微的波動(dòng)幾乎對(duì)后面的輸出沒(méi)有影響,這種芯片具有自己調(diào)節(jié)功能,電路中1N5819的作用是防止電源接反,C1、C2、C3、C4、C5、C6的作
55、用是電源濾波。</p><p> 圖4 電源基于MSC-51單片機(jī)設(shè)計(jì)框圖實(shí)現(xiàn)原理圖</p><p> 3.4 ADC0832模數(shù)轉(zhuǎn)換</p><p> 本次畢業(yè)設(shè)計(jì)的電壓、電流模擬量的采集是通過(guò)串行AD轉(zhuǎn)換芯片來(lái)實(shí)現(xiàn)。串行AD轉(zhuǎn)換芯片選用ADC0832,ADC0832是是美國(guó)國(guó)家半導(dǎo)體公司生產(chǎn)的一種8 位分辨率、雙通道A/D轉(zhuǎn)換 芯片。由于它體積小,兼容性
56、強(qiáng),性價(jià)比高而深受單片機(jī)愛(ài)好者及企業(yè)歡迎, 其目前已經(jīng)有很高的普及率。</p><p> 3.4.1 ADC0832 具有以下特點(diǎn)</p><p><b> 8位分辨率;</b></p><p><b> 雙通道A/D轉(zhuǎn)換;</b></p><p> 輸入輸出電平與TTL/CMOS相兼容;
57、</p><p> 5V電源供電時(shí)輸入電壓在0~5V之間;</p><p> 工作頻率為250KHZ,轉(zhuǎn)換時(shí)間為32μS;</p><p> 一般功耗僅為15mW; </p><p> 8P、14P—DIP(雙列直插)、PICC 多種封裝;</p><p> 商用級(jí)芯片溫寬為0°C to +70
58、176;C,工業(yè)級(jí)芯片溫寬為.40°C to +85°C;</p><p> 3.4.2 芯片接口說(shuō)明</p><p> CS_ 片選使能,低電平芯片使能。</p><p> CH0 模擬輸入通道0,或作為IN+/-使用。</p><p> CH1 模擬輸入通道1,或作為IN+/-使用。 </p>
59、<p> GND 芯片參考0 電位(地)。</p><p> DI 數(shù)據(jù)信號(hào)輸入,選擇通道控制。</p><p> DO 數(shù)據(jù)信號(hào)輸出,轉(zhuǎn)換數(shù)據(jù)輸出。</p><p> CLK 芯片時(shí)鐘輸入。 </p><p> Vcc/REF 電源輸入及參考電壓輸入(復(fù)用)。</p><p> ADC0832
60、為8位分辨率A/D轉(zhuǎn)換芯片,其最高分辨可達(dá)256級(jí),可以適應(yīng)一般的模擬量轉(zhuǎn)換要求。其內(nèi)部電源輸入與參考電壓的復(fù)用,使得芯片的模擬電壓輸入在0~5V之間。芯片轉(zhuǎn)換時(shí)間僅為32μS,據(jù)有雙數(shù)據(jù)輸出可作為數(shù)據(jù)校驗(yàn),以減少數(shù)據(jù)誤差,轉(zhuǎn)換速度快且穩(wěn)定性能強(qiáng)。獨(dú)立的芯片使能輸入,使多器件掛接和處理器控制變的更加方便。通過(guò)DI 數(shù)據(jù)輸入端,可以輕易的實(shí)現(xiàn)通道功能的選擇。 </p><p> 3.4.3 單片機(jī)對(duì)ADC083
61、2 的控制原理</p><p> 正常情況下ADC0832 與單片機(jī)的接口應(yīng)為4條數(shù)據(jù)線,分別是CS、CLK、DO、DI。但由于DO端與DI端在通信時(shí)并未同時(shí)有效并與單片機(jī)的接口是雙向的,所以電路設(shè)計(jì)時(shí)可以將DO和DI 并聯(lián)在一根數(shù)據(jù)線上使用。當(dāng)ADC0832未工作時(shí)其CS輸入端應(yīng)為高電平,此時(shí)芯片禁用,CLK 和DO/DI 的電平可任意。當(dāng)要進(jìn)行A/D轉(zhuǎn)換時(shí),須先將CS使能端置于低電平并且保持低電平直到轉(zhuǎn)換完
62、全結(jié)束。此時(shí)芯片開(kāi)始轉(zhuǎn)換工作,同時(shí)由處理器向芯片時(shí)鐘輸入端CLK 輸入時(shí)鐘脈沖,DO/DI端則使用DI端輸入通道功能選擇的數(shù)據(jù)信號(hào)。在第1 個(gè)時(shí)鐘脈沖的下沉之前DI端必須是高電平,表示啟始信號(hào)。在第2、3個(gè)脈沖下沉之前DI端應(yīng)輸入2 位數(shù)據(jù)用于選擇通道功能。圖5為ADC0832與單片機(jī)AT89C51的連接電路圖。</p><p> 圖5 ADC0832應(yīng)用電路圖</p><p><
63、b> 3.5 復(fù)位電路</b></p><p> 隨著測(cè)量技術(shù)的發(fā)展和微處理器的廣泛應(yīng)用,單片機(jī)系統(tǒng)的電路越來(lái)越復(fù)雜,而系統(tǒng)的可靠性問(wèn)題也越來(lái)越突出,一般的單片機(jī)系統(tǒng)在工業(yè)現(xiàn)場(chǎng)等惡劣的環(huán)境下容易死機(jī),要求系統(tǒng)在這些場(chǎng)合可靠穩(wěn)定的工作,就必須外加監(jiān)視電路。MCS-51的復(fù)位是由外部的復(fù)位電路來(lái)實(shí)現(xiàn)的。MCS-51單片機(jī)片內(nèi)復(fù)位為,復(fù)位引腳RST通過(guò)一個(gè)斯密特觸發(fā)器用來(lái)抑制噪聲,在每個(gè)機(jī)器周期
64、的S5P2,斯密特觸發(fā)器的輸出電平由復(fù)位電路采樣一次,然后才能得到內(nèi)部復(fù)位操作所需要的信號(hào)。</p><p> 復(fù)位電路通常采用上電自動(dòng)復(fù)位和按鈕復(fù)位兩種方式。上電自動(dòng)復(fù)位是通過(guò)外部復(fù)位電路的電容充電來(lái)實(shí)現(xiàn)的。只要Vcc的上升時(shí)間不超過(guò)1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位。除了上電復(fù)位外,有時(shí)還需要按鍵手動(dòng)復(fù)位。按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。其中電平復(fù)位是通過(guò)RST端經(jīng)電阻與電源Vcc接通而實(shí)現(xiàn)的。按鍵脈沖復(fù)
65、位則是利用RC微分電路產(chǎn)生的正脈沖來(lái)實(shí)現(xiàn)的,圖6兼有上電復(fù)位和按鈕復(fù)位的電路。復(fù)位電路軟件程序跑飛或者硬件發(fā)生錯(cuò)誤的時(shí)候產(chǎn)生一個(gè)復(fù)位信號(hào),控制MCS-51單片機(jī)從0000H單元開(kāi)始執(zhí)行程序,重新執(zhí)行軟件程序。</p><p><b> 圖6 上電復(fù)位電路</b></p><p> 在單片機(jī)設(shè)計(jì)中,若有外部擴(kuò)展的I/O接口電路需初始復(fù)位,如果它們的復(fù)位端和MCS-5
66、1單片機(jī)的復(fù)位端相連,復(fù)位電路中的R、C參數(shù)要受到影響,這時(shí)復(fù)位電路中的R、C參數(shù)要統(tǒng)一考慮以保證可靠的復(fù)位。如果單片機(jī)MCS-51單片機(jī)與外圍I/O接口電路的復(fù)位電路和復(fù)位時(shí)間不完全一致,使單片機(jī)初始化程序不能正常運(yùn)行,外圍I/O接口電路的復(fù)位也可以不和MCS-51單片機(jī)復(fù)位端相連,僅采用獨(dú)立的上電復(fù)位電路。一般來(lái)說(shuō),單片機(jī)的復(fù)位速度比外圍I/O快些。若RC上電復(fù)位電路接MCS-51單片機(jī)和外圍電路復(fù)位端,則能時(shí)系統(tǒng)可靠地同步復(fù)位。為
67、保證系統(tǒng)可靠復(fù)位,在初始化程序中應(yīng)用到一定的復(fù)位延遲時(shí)間。</p><p><b> 3.6 晶振電路</b></p><p> 時(shí)鐘在單片機(jī)中非常重要,單片機(jī)各功能部件的運(yùn)行都是以時(shí)鐘頻率為基準(zhǔn)。時(shí)鐘頻率直接影響單片機(jī)的速度,時(shí)鐘電路的質(zhì)量也直接影響單片機(jī)系統(tǒng)的穩(wěn)定性。常用的時(shí)鐘電路有兩種方式,一種是內(nèi)部時(shí)鐘方式,另一種為外部時(shí)鐘方式。</p>
68、<p> 內(nèi)部時(shí)鐘方式電路圖如下圖7所示:</p><p><b> 圖7 內(nèi)部時(shí)鐘電路</b></p><p> MCS-51單片機(jī)內(nèi)部有一個(gè)用與構(gòu)成振蕩器的高增益反相放大器,該高增益反相放大器的輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。這兩個(gè)引腳接石英晶體振蕩器和微調(diào)電容,就構(gòu)成一個(gè)穩(wěn)定的自激振蕩器電路。</p><p
69、> 電路中的電容C1和C2典型值通常選擇為30PF左右。對(duì)外接電容的值雖然沒(méi)有嚴(yán)格的要求,但是電容的大小會(huì)影響振蕩器頻率的高低、振蕩器的穩(wěn)定性和起振的快速性。晶體的振蕩頻率的范圍通常是在1.2MHz-12MHz之間。晶體的頻率越高,則系統(tǒng)的時(shí)鐘頻率也就越高,單片機(jī)的運(yùn)行速度也就越快。為了提高溫度穩(wěn)定性,應(yīng)采用溫度穩(wěn)定性能好的NPO高頻電容。MCS-51單片機(jī)常選擇振蕩頻率6MHz或12MHz的石英晶體。</p>&
70、lt;p><b> 外部時(shí)鐘方式:</b></p><p> 外部時(shí)鐘方式電路圖如下圖8所示,外部時(shí)鐘方式是使用外部振蕩脈沖信號(hào),常用于多片MCS-51單片機(jī)同時(shí)工作,以便于同步。對(duì)外部脈沖信號(hào)只要求高電平的持續(xù)時(shí)間大于20us,一般為低于12MHz的方波。外部的時(shí)鐘源直接接到XTAL2端,直接輸入到片內(nèi)的時(shí)鐘發(fā)生器上。由于XTAL2的邏輯電平不是TTL的,因此要外接一個(gè)4.7k-
71、10k的上拉電阻。</p><p><b> 圖8 外部時(shí)鐘電路</b></p><p> 這次的設(shè)計(jì)采用MCS-51的內(nèi)部時(shí)鐘方式。因?yàn)橥獠繒r(shí)鐘方式是用外部振蕩脈沖信號(hào),用于多片MCS-51單片機(jī)同時(shí)工作。在這次設(shè)計(jì)中只用一個(gè)MCS-51單片機(jī),不需要振蕩脈沖信號(hào)。</p><p> 3.7 單片機(jī)基本工作電路</p>
72、<p> 本設(shè)計(jì)的核心是單片機(jī)電路,考慮到我們需要兩個(gè)中斷輸入,存儲(chǔ)容量、外部接口對(duì)單片機(jī)端口的需要以及兼顧到節(jié)約成本的原則,我們選用了常用的AT89C51單片機(jī)。AT89C51是低功耗、高性能、經(jīng)濟(jì)的8位CMOS微處理器,工作頻率為0-24MHz,內(nèi)置4K字節(jié)可編程只讀閃存,128x8位的內(nèi)部RAM,32位可編程I/O總線。它采用Atmel公司的非易儲(chǔ)器制造技術(shù),與MCS51的指令設(shè)置和芯片引腳可兼容。AT89S51可以按
73、照常規(guī)方法進(jìn)行編程,也可以在線編程。其將通用的微處理器和Flash存儲(chǔ)器結(jié)合在一起,特別是可反復(fù)擦寫(xiě)的Flash存儲(chǔ)器可有效地降低開(kāi)發(fā)成本。</p><p> AT89C51工作的最簡(jiǎn)單的電路是其外圍接一個(gè)晶振和一個(gè)復(fù)位電路,給單片機(jī)接上電源和地,單片機(jī)就可以工作了。單片機(jī)正常工作的條件:</p><p><b> 1、+5V電源;</b></p>
74、<p><b> 2、晶振電路;</b></p><p><b> 3、復(fù)位電路;</b></p><p><b> 4、上拉電阻;</b></p><p> 其最簡(jiǎn)單的工作原理圖如圖9:</p><p> 圖9 AT89S51單片機(jī)工作電路</p&g
75、t;<p><b> 3.8 顯示電路</b></p><p> 8段數(shù)碼管屬于LED發(fā)光器件的一種。LED發(fā)光器件一般常用的有兩類:數(shù)碼管和點(diǎn)陣。8段數(shù)碼管又稱為8字型數(shù)碼管,分為8段:A、B、C、D、E、F、G、P。其中P為小數(shù)點(diǎn)。數(shù)碼管常用的有10根管腳,每一段有一根管腳,另外兩根管腳為一個(gè)數(shù)碼管的公共端,兩根之間相互連通,如圖所示:</p><
76、p> 圖10 LED的管腳和電路原理</p><p> 從電路上,數(shù)碼管又可分為共陰和共陽(yáng)兩種。</p><p> 用單片機(jī)驅(qū)動(dòng)LED數(shù)碼管有很多方法,按顯示方式分,有靜態(tài)顯示和動(dòng)態(tài)顯示。</p><p><b> 圖11 顯示電路</b></p><p> 靜態(tài)顯示就是顯示驅(qū)動(dòng)電路具有輸出鎖存功能,單
77、片機(jī)將所有要顯示的數(shù)據(jù)送出后就不再控制LED,直到下一次顯示時(shí)再傳送一次新的顯示數(shù)據(jù)。靜態(tài)顯示的數(shù)據(jù)穩(wěn)定,占用的CPU時(shí)間少。靜態(tài)顯示中,每一個(gè)顯示器都要占用單獨(dú)的具有鎖存功能的I/O接口,該接口用于筆劃段字型代碼。這樣單片機(jī)只要把要顯示的字形代碼發(fā)送到接口電路,該字段就可以顯示發(fā)送的字形。要顯示新的數(shù)據(jù)時(shí),單片機(jī)在發(fā)送新的字形碼。另一種方法是動(dòng)態(tài)掃描顯示。動(dòng)態(tài)掃描方法是用其接口電路把所有顯示器的8個(gè)筆畫(huà)段a-h同名端連在一起,而每一個(gè)
78、顯示器的公共極COM各自獨(dú)立的受I/O線控制。CPU向字段輸出口送出字形碼時(shí),所有顯示器接收到相同的字形碼,但究竟是哪個(gè)顯示器亮,則取決于COM段,而這一段是由I/O控制的,由單片機(jī)決定何時(shí)顯示哪一位了。動(dòng)態(tài)掃描用分時(shí)的方法輪流控制各個(gè)顯示器的COM端,使各個(gè)顯示器輪流點(diǎn)亮。在輪流點(diǎn)亮掃描過(guò)程中,每位顯示器的點(diǎn)亮?xí)r間極為短暫,但由于人的視覺(jué)暫留現(xiàn)象及發(fā)光二極管的余暉效應(yīng),給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù)。</p><
79、p> 本次畢業(yè)設(shè)計(jì)需要4個(gè)數(shù)碼管,所以采用動(dòng)態(tài)的顯示的方式。</p><p><b> 3.9 按鍵電路</b></p><p> 按鍵是實(shí)現(xiàn)人機(jī)對(duì)話的比較直觀的接口,可以通過(guò)按鍵實(shí)現(xiàn)人們想讓單片機(jī)做的不同的工作。鍵盤(pán)是一組按鍵的集合,鍵是一種常開(kāi)型開(kāi)關(guān),平時(shí)按鍵的兩個(gè)觸點(diǎn)處于斷開(kāi)狀態(tài),按下鍵是它們閉合。鍵盤(pán)分編碼鍵盤(pán)和非編碼鍵盤(pán),案件的識(shí)別由專用的硬件
80、譯碼實(shí)現(xiàn),并能產(chǎn)生鍵編號(hào)或鍵值的稱為編碼鍵盤(pán),而缺少這種鍵盤(pán)編碼電路要靠自編軟件識(shí)別的稱為非編碼鍵盤(pán)。在單片機(jī)組成的電路系統(tǒng)及智能化儀器中,用的更多的是非編碼鍵盤(pán)。圖12就是一種比較典型的按鍵電路,在按鍵沒(méi)有按下的時(shí)候,輸出的是高電平,當(dāng)按鍵按下去的時(shí)候,輸出的低電平。</p><p><b> 圖12 按鍵電路</b></p><p> 按鍵消抖:通常的按鍵所用
81、開(kāi)關(guān)為機(jī)械彈性開(kāi)關(guān),當(dāng)機(jī)械觸點(diǎn)斷開(kāi)、閉合時(shí),電壓信號(hào)小型如下圖。由于機(jī)械觸點(diǎn)的彈性作用,一個(gè)按鍵開(kāi)關(guān)在閉合時(shí)不會(huì)馬上穩(wěn)定地接通,在斷開(kāi)時(shí)也不會(huì)一下子斷開(kāi)。因而在閉合及斷開(kāi)的瞬間均伴隨有一連串的抖動(dòng),如下圖13。抖動(dòng)時(shí)間的長(zhǎng)短由按鍵的機(jī)械特性決定,一般為5ms~10ms。這是一個(gè)很重要的時(shí)間參數(shù),在很多場(chǎng)合都要用到。</p><p><b> 圖13 按鍵過(guò)程</b></p>
82、<p> 按鍵穩(wěn)定閉合時(shí)間的長(zhǎng)短則是由操作人員的按鍵動(dòng)作決定的,一般為零點(diǎn)幾秒至數(shù)秒。鍵抖動(dòng)會(huì)引起一次按鍵被誤讀多次。為確保CPU對(duì)鍵的一次閉合僅作一次處理,必須去除鍵抖動(dòng)。在鍵閉合穩(wěn)定時(shí)讀取鍵的狀態(tài),并且必須判別到鍵釋放穩(wěn)定后再作處理。按鍵的抖動(dòng),可用硬件或軟件兩種方法。 硬件消抖:在鍵數(shù)較少時(shí)可用硬件方法消除鍵抖動(dòng)。下圖所示的RS觸發(fā)器為常用的硬件去抖。</p><p> 圖14 RS觸
83、發(fā)器</p><p> 圖14中兩個(gè)“與非”門(mén)構(gòu)成一個(gè)RS觸發(fā)器。當(dāng)按鍵未按下時(shí),輸出為1;當(dāng)鍵按下時(shí),輸出為0。此時(shí)即使用按鍵的機(jī)械性能,使按鍵因彈性抖動(dòng)而產(chǎn)生瞬時(shí)斷開(kāi)(抖動(dòng)跳開(kāi)B),中要按鍵不返回原始狀態(tài)A,雙穩(wěn)態(tài)電路的狀態(tài)不改變,輸出保持為0,不會(huì)產(chǎn)生抖動(dòng)的波形。也就是說(shuō),即使B點(diǎn)的電壓波形是抖動(dòng)的,但經(jīng)雙穩(wěn)態(tài)電路之后,其輸出為正規(guī)的矩形波。這一點(diǎn)通過(guò)分析RS觸發(fā)器的工作過(guò)程很容易得到驗(yàn)證。</p&
84、gt;<p> 軟件消抖:如果按鍵較多,常用軟件方法去抖,即檢測(cè)出鍵閉合后執(zhí)行一個(gè)延時(shí)程序,產(chǎn)生5ms~10ms的延時(shí),讓前沿抖動(dòng)消失后再一次檢測(cè)鍵的狀態(tài),如果仍保持閉合狀態(tài)電平,則確認(rèn)為真正有鍵按下。當(dāng)檢測(cè)到按鍵釋放后,也要給5ms~10ms的延時(shí),待后沿抖動(dòng)消失后才能轉(zhuǎn)入該鍵的處理程序。</p><p><b> 4 軟件設(shè)計(jì)</b></p><p
85、> 4.1 軟件設(shè)計(jì)概述</p><p> 軟件設(shè)計(jì)是一個(gè)創(chuàng)造性的過(guò)程,對(duì)一些設(shè)計(jì)者來(lái)說(shuō)需要一定的資質(zhì),而最后設(shè)計(jì)通常都是由一些初步設(shè)計(jì)演變而來(lái)的。從書(shū)本上學(xué)不會(huì)設(shè)計(jì),只能經(jīng)過(guò)實(shí)踐,通過(guò)對(duì)實(shí)際系統(tǒng)的研究和實(shí)踐才能學(xué)會(huì)。對(duì)于高效的軟件工程,良好的設(shè)計(jì)是關(guān)鍵,一個(gè)設(shè)計(jì)得好的軟件系統(tǒng)應(yīng)該是可直接實(shí)現(xiàn)和易于維護(hù)、易懂和可靠的。設(shè)計(jì)得不好的系統(tǒng),盡管可以工作,但很可能維護(hù)起來(lái)費(fèi)用昂貴、測(cè)試?yán)щy和不可靠,因此,設(shè)計(jì)
86、階段是軟件開(kāi)發(fā)過(guò)程中最重要的階段。</p><p> 直到最近,軟件設(shè)計(jì)在很大程度上仍是一個(gè)特定過(guò)程。一般用自然語(yǔ)言給定一個(gè)需求集,預(yù)先作非正式設(shè)計(jì),常常用流程圖的形式說(shuō)明,接著開(kāi)始編碼,當(dāng)系統(tǒng)實(shí)現(xiàn)時(shí)設(shè)計(jì)還需修改。當(dāng)實(shí)現(xiàn)階段完成后,設(shè)計(jì)往往已與起初形式相去甚遠(yuǎn)以至于設(shè)計(jì)的原始文檔完全不適合對(duì)系統(tǒng)的描述。</p><p> 4.1.1 軟件設(shè)計(jì)的步驟</p><p&
87、gt; 大型的軟件設(shè)計(jì)是一個(gè)龐大的系統(tǒng)工程,需要前期的市場(chǎng)調(diào)查、需求分析,還需要各個(gè)行業(yè)的支持。本次畢業(yè)設(shè)計(jì)的程序是一個(gè)很簡(jiǎn)單的過(guò)程,所以步驟也相對(duì)應(yīng)的簡(jiǎn)單了許多。</p><p> 第一步:分析整個(gè)系統(tǒng)可以由幾個(gè)子系統(tǒng)組成,并考慮幾個(gè)子系統(tǒng)之間的內(nèi)在的關(guān)系。</p><p> 第二步:編寫(xiě)各個(gè)子系統(tǒng)的程序,最后組合在一起,得到整個(gè)系統(tǒng)。</p><p>
88、第三步:編譯,查錯(cuò),改錯(cuò)(包括語(yǔ)法錯(cuò)誤、邏輯錯(cuò)誤)</p><p> 第四步:把編譯,看是否得到我們需要的結(jié)果,如果得不到結(jié)果就回到第三步,直到最后得到我們想要的結(jié)果。</p><p> 4.1.2 軟件設(shè)計(jì)任務(wù)</p><p> 軟件設(shè)計(jì)主要是針對(duì)硬件設(shè)計(jì)里面的控制部分的,這里指AT89C51單片機(jī),一般的單片機(jī)均可用匯編語(yǔ)言和C語(yǔ)言進(jìn)行編程。C語(yǔ)言直觀,
89、相對(duì)比較的簡(jiǎn)單,但占用的程序存儲(chǔ)器的內(nèi)存比較大,匯編語(yǔ)言是針對(duì)硬件設(shè)計(jì)的語(yǔ)言,如果想用匯編語(yǔ)言設(shè)計(jì)的話必須要對(duì)硬件有很大的了解,相對(duì)C語(yǔ)言就比較的復(fù)雜,但是比較的精簡(jiǎn),占用的程序存儲(chǔ)器的空間比較的小。</p><p> 本次畢業(yè)設(shè)計(jì)采用匯編語(yǔ)言編程,軟件部分需要完成的任務(wù):?jiǎn)纹瑱C(jī)初始化、ADC0832電壓、電流采樣,功率因素角測(cè)量、功率因素計(jì)算、有用功率計(jì)算、無(wú)用功率計(jì)算、顯示參數(shù)、按鍵處理、外部中斷、延時(shí)程序
90、、定時(shí)程序。</p><p> 4.2 單片機(jī)編程集成環(huán)境Keil C51</p><p> 本次畢業(yè)所選用Keil C51中的編譯/連接器軟件Keil uVision2作為編譯器/連接工具,使用萬(wàn)利公司Medwin軟件作為集成開(kāi)發(fā)環(huán)境。Medwin是萬(wàn)利電子有限公司的軟件,Medwin是一個(gè)具有Microsoft Visual Studio窗口風(fēng)格的集成開(kāi)發(fā)環(huán)境。支持帶語(yǔ)法分析的彩色
91、文本顯示、源程序斷點(diǎn)設(shè)置記憶、實(shí)時(shí)程序計(jì)數(shù)器、PC顯示、仿真器斷電自動(dòng)重載、自適應(yīng)連接仿真器等功能,并且支持全空間程序代碼和數(shù)據(jù)空間的模擬仿真、Trace Buffer跟蹤器。</p><p> Keil C51是美國(guó)Keil Software公司出品的51系列兼容單片機(jī)C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開(kāi)發(fā),體會(huì)更加深
92、刻。</p><p> Keil C51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。</p><p> 4.2.1 Keil C51單片機(jī)軟件開(kāi)發(fā)系統(tǒng)的整體結(jié)構(gòu)</p&g
93、t;<p> C51工具包的整體結(jié)構(gòu),如圖所示,其中uVision與Ishell分別是C51 for Windows和for Dos的集成開(kāi)發(fā)環(huán)境(IDE),可以完成編輯、編譯、連接、調(diào)試、仿真等整個(gè)開(kāi)發(fā)流程。開(kāi)發(fā)人員可用IDE本身或其它編輯器編輯C或匯編源文件。然后分別由C51及A51編譯器編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成庫(kù)文件,也可以與庫(kù)文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)
94、。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行源代碼級(jí)調(diào)試,也可由仿真器使用直接對(duì)目標(biāo)板進(jìn)行調(diào)試,也可以直接寫(xiě)入程序存貯器如EPROM中。</p><p> 圖15 C51工具包整體結(jié)構(gòu)圖</p><p> 4.2.2 Keil C51功能介紹</p><p> 4.2.2.1 8051開(kāi)發(fā)工具&
95、lt;/p><p> KEILC51標(biāo)準(zhǔn)C編譯器為8051微控制器的軟件開(kāi)發(fā)提供了C語(yǔ)言環(huán)境,同時(shí)保留了匯編代碼高效,快速的特點(diǎn)。C51編譯器的功能不斷增強(qiáng),使你可以更加貼近CPU本身,及其它的衍生產(chǎn)品。C51已被完全集成到uVision2的集成開(kāi)發(fā)環(huán)境中,這個(gè)集成開(kāi)發(fā)環(huán)境包含:編譯器,匯編 器,實(shí)時(shí)操作系統(tǒng),項(xiàng)目管理器,調(diào)試器。uVision2 IDE可為它們提供單一而靈活的開(kāi)發(fā)環(huán)境。C51&
96、#160;V7版本是目前最高效、靈活的8051開(kāi)發(fā)平臺(tái)。它可以支持所有8051的衍生產(chǎn)品,也可以支持所有兼容的仿真器,同時(shí)支持其它第三方開(kāi)發(fā)工具。因此,C51 V7版本無(wú)疑是8051開(kāi)發(fā)用戶的最佳選擇。</p><p> 5.2.2.2 uVision2集成開(kāi)發(fā)環(huán)境 </p><p> 項(xiàng)目管理 :工程(project)是由源文件、開(kāi)發(fā)工具選項(xiàng)以及編程說(shuō)明
97、三部分組成的。一個(gè)單一的uVision2工程能夠產(chǎn)生一個(gè)或多個(gè)目標(biāo)程序。產(chǎn)生目標(biāo)程序的源文件構(gòu)成“組”。開(kāi)發(fā)工具選項(xiàng)可以對(duì)應(yīng)目標(biāo),組或單個(gè)文件。 </p><p> uVision2包含一個(gè)器件數(shù)據(jù)庫(kù)(device database),可以自動(dòng)設(shè)置匯編器、編譯器、連接定位器及調(diào)試器選項(xiàng),來(lái)滿足用戶充分利用特定 微控制器的要求。此數(shù)據(jù)庫(kù)包含:片上存儲(chǔ)器和外圍設(shè)備的信息,擴(kuò)展數(shù)據(jù)指針(
98、extra data pointer)或者加速器(math accelerator)的特性。 </p><p> uVision2可以為片外存儲(chǔ)器產(chǎn)生必要的連接選項(xiàng):確定起始地址和規(guī)模。 集成功能:</p><p> uVision2的強(qiáng)大功能有助于用戶按期完工。</p><p> a.集成源極瀏覽器利用符
99、號(hào)數(shù)據(jù)庫(kù)使用戶可以快速瀏覽源文件。用詳細(xì)的符號(hào)信息來(lái)優(yōu)化用戶變數(shù)存儲(chǔ)器。</p><p> b.文件尋找功能:在特定文件中執(zhí)行全局文件搜索。</p><p> c.工具菜單:允許在V2集成開(kāi)發(fā)環(huán)境下啟動(dòng)用戶功能。</p><p> d.可配置SVCS接口:提供對(duì)版本控制系統(tǒng)的入口。</p><p> e.PC-LINT接口:對(duì)應(yīng)用程序
100、代碼進(jìn)行深層語(yǔ)法分析。</p><p> f.Infineon的EasyCase接口:集成塊集代碼產(chǎn)生。</p><p> g.Infineon的DAVE功能:協(xié)助用戶的CPU和外部程序。DAVE工程可被直接輸入uVision2</p><p> 4.2.2.2 編輯器和調(diào)試器</p><p> 源代碼編輯器 :uVisio
101、n2編輯器包含了所有用戶熟悉的特性。彩色語(yǔ)法顯像和文件辯識(shí)都對(duì)C源代碼進(jìn)行和優(yōu)化??梢栽诰庉嬈鲀?nèi)調(diào)試程序,它能提供一種自然的調(diào)試環(huán)境,使你更快速地檢查和修改程序。 </p><p> 斷點(diǎn):uVision2允許用戶在編輯時(shí)設(shè)置程序斷點(diǎn)(甚至在源代碼未經(jīng)編譯和匯編之前)。用戶啟動(dòng)V2調(diào)試器之后,斷點(diǎn)即被激活。斷點(diǎn)可設(shè)置為條件表達(dá)式,變量或存儲(chǔ)器訪問(wèn),斷點(diǎn)被觸發(fā)后,調(diào)試器命令或調(diào)試功能即可執(zhí)行。在屬性框(
102、attributes column)中可以快速瀏覽斷點(diǎn)設(shè)置情況和源程序行的位置。代碼覆蓋率信息可以讓你區(qū)分程序中已執(zhí)行和未執(zhí)行的部分。</p><p> 調(diào)試函數(shù)語(yǔ)言:uVision2中,你可以編寫(xiě)或使用類似C的數(shù)語(yǔ)言進(jìn)行調(diào)試。 </p><p> a.內(nèi)部函數(shù):如printf, memset, rand及其它功能的函數(shù)。</p>
103、<p> b.信號(hào)函數(shù):模擬產(chǎn)生CPU的模擬信號(hào)和脈沖信號(hào)(simulate analog and digital inputs to CPU )。</p><p> c.用戶函數(shù):擴(kuò)展指令范圍,合并重復(fù)動(dòng)作。</p><p><b> 變量和存儲(chǔ)器: </b></p><
104、;p> 用戶可以在編輯器中選中編程來(lái)觀察其取值。雙層窗口顯示,可進(jìn)行以下調(diào)整: </p><p> 當(dāng)前函數(shù)的局部變量 </p><p> b. 用戶在兩個(gè)不同watch窗口頁(yè)面上的自定義變量 </p><p> c. 堆棧調(diào)用(call stack)頁(yè)面上的調(diào)用記錄(樹(shù))(call tree)
105、0; </p><p> d. 不同格式的四個(gè)存儲(chǔ)區(qū)</p><p> 4.2.2.3 C51編譯器 </p><p> KEIL C51編譯器在遵循ANSI標(biāo)準(zhǔn)的同時(shí),為8051微控制器系列特別設(shè)計(jì)。語(yǔ)言上的擴(kuò)展能讓用戶使用應(yīng)用中的所有資源。</p><p> 存儲(chǔ)器和特殊功能寄存器的存取:C51編譯器可以實(shí)現(xiàn)對(duì)
106、8051系列所有資源的操作。SFR的存取由sfr和sbit兩個(gè)關(guān)鍵字來(lái)提供。變量可旋轉(zhuǎn)到任一個(gè)地址空間。用關(guān)鍵字——at,還能把變量放入固定的存儲(chǔ)器.存儲(chǔ)模式(大,中,?。Q定了變量的存儲(chǔ)類型。</p><p> 連接定位器支持的代碼區(qū)可達(dá)32個(gè),這就允許用戶在原有64K ROM的8015基礎(chǔ)上擴(kuò)展程序。在V2的編譯器和許多高性能仿真器中,可以 支持應(yīng)用程序的調(diào)試。</p><p&
107、gt; 中斷功能:C51允許用戶使用C語(yǔ)言編寫(xiě)中斷服務(wù)程序,快速進(jìn)、出代碼和寄存器區(qū)的轉(zhuǎn)換功能使C語(yǔ)言中斷功能更加高效??稍偃牍δ苁怯藐P(guān)鍵字來(lái)定義的。多任務(wù),中斷或非中斷的代碼要求必須具備可再入功能。 </p><p> 靈活的指針 :C51提供了靈活高效的指針。通用指針用3個(gè)字節(jié)來(lái)存儲(chǔ)存儲(chǔ)器類型及目標(biāo)地址,可以在8051的任意存儲(chǔ)區(qū)內(nèi)存取任何變量。特殊指針在聲明的同時(shí)已指定了存儲(chǔ)器類型,
108、指向某一特定的存儲(chǔ)區(qū)域。由于地址的存儲(chǔ)只需1-2字節(jié),因此,指針存取非常迅速。 </p><p> 4.2.2.4 代碼優(yōu)化 </p><p><b> 通用代碼優(yōu)化 :</b></p><p> 常量重疊(constant folding)</p><p> 通用子表達(dá)
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 電工測(cè)量復(fù)用表設(shè)計(jì)-畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)—波分復(fù)用技術(shù)論文
- 測(cè)量畢業(yè)設(shè)計(jì)
- 測(cè)量畢業(yè)設(shè)計(jì)--礦井貫通測(cè)量設(shè)計(jì)
- 工程測(cè)量畢業(yè)設(shè)計(jì)---高速道路測(cè)量設(shè)計(jì)
- 施工測(cè)量畢業(yè)設(shè)計(jì)
- 施工測(cè)量畢業(yè)設(shè)計(jì)
- 長(zhǎng)度尺寸測(cè)量裝置設(shè)計(jì)-畢業(yè)設(shè)計(jì)(論文)報(bào)審表.doc
- 長(zhǎng)度尺寸測(cè)量裝置設(shè)計(jì)-畢業(yè)設(shè)計(jì)(論文)報(bào)審表.doc
- 公路測(cè)量畢業(yè)設(shè)計(jì)
- 測(cè)量放線畢業(yè)設(shè)計(jì)
- 測(cè)量專業(yè)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--高速施工測(cè)量設(shè)計(jì)
- 測(cè)量畢業(yè)設(shè)計(jì)---礦井一井貫通測(cè)量設(shè)計(jì)
- 施工測(cè)量畢業(yè)設(shè)計(jì)論文
- 測(cè)量學(xué)畢業(yè)設(shè)計(jì)
- 工程測(cè)量技術(shù)畢業(yè)設(shè)計(jì)
- 工程測(cè)量方案畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----線路施工測(cè)量
- 道路工程測(cè)量畢業(yè)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論