數(shù)字式電壓表設(shè)計_第1頁
數(shù)字式電壓表設(shè)計_第2頁
數(shù)字式電壓表設(shè)計_第3頁
數(shù)字式電壓表設(shè)計_第4頁
數(shù)字式電壓表設(shè)計_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、成都理工大學(xué)工程技術(shù)學(xué)院畢業(yè)論文數(shù)字電壓表的設(shè)計作者姓名:羊文軍專業(yè)名稱:測控技術(shù)與儀器指導(dǎo)教師:熊 斌 講師數(shù)字電壓表的設(shè)計摘要 數(shù)字電壓表是對電子電路進行現(xiàn)場檢測的常用儀表,常需用高精度數(shù)字電壓表進行現(xiàn)場檢測,將檢測到的數(shù)據(jù)送入微計算機系統(tǒng),完成計算、存儲、控制和顯示等功能。本文中數(shù)字電壓表的控制系統(tǒng)采用AT89S51單片機,A/D轉(zhuǎn)換器采用ADC0809為主要硬件,實現(xiàn)數(shù)字電壓表的硬件電路與軟件設(shè)計。該系統(tǒng)的數(shù)字電壓表電路簡單,所用的元件較少,成本低,調(diào)節(jié)工作可實現(xiàn)自動化。還可以方便地進行8路A/D轉(zhuǎn)換量的測量,遠程測量結(jié)果傳送等功能。數(shù)字電壓表可以測量05V的8路輸入電壓值,并在四位L

2、ED數(shù)碼管單路選擇顯示。關(guān)鍵詞 :單片機 數(shù)字電壓表 A/D轉(zhuǎn)換 AT89S51 ADC0809- 40 -AbstractIn modern measuring technology ,it is often required to conduct site measuring with a high-precision digital voltmeterThe data measured will then be input into the micro-computer system to execute such functions like calculating、storing、c

3、ontrolling and displayingIn this paper, the control system of digital voltmeter is composed of AT89S51 single-chip and ADC0809 A/D converter , which are used as the main hardware to realize the digital voltmeter of the hardware circuit and software design. The system of the digital voltmeter circuit

4、 is simple, using fewer components, Low-cost, regulation work can be automated. Also can be easily carried out 8-channel A / D converter measurement, distance measurement function of transmission . The voltmeter is capable of measuring voltage inputs from 8 routes ranging from 0 to 5 volt, and displ

5、aying the 4-way LED digital tube from a selected single routeKeywords:singlechip,digital,voltmeter,A/D,conversion,AT89S51,ADC0809目錄摘要IAbstractII目錄III1 緒論11.1 課題選擇的背景和意義11.2 課題研究的現(xiàn)狀和發(fā)展趨勢11.3 智能儀表目前發(fā)展狀況22 數(shù)字電壓表系統(tǒng)方案設(shè)計42.1 系統(tǒng)設(shè)計要求42.2 系統(tǒng)設(shè)計思路43 系統(tǒng)硬件選擇53.1 單片機的選擇53.2 A/D轉(zhuǎn)換器的選擇63.3 LED顯示電路選擇73.4 驅(qū)動芯片的選擇84 硬

6、件電路設(shè)計94.1 硬件電路設(shè)計概述94.2 主要元器件的介紹104.2.1 單片機AT89S51104.2.2 A/D轉(zhuǎn)換芯片ADC0809194.2.3 驅(qū)動芯片74HC244224.2.4 4位一體7段LED數(shù)碼管234.3 AT89S51單片機主控電路244.4 A/D轉(zhuǎn)換電路244.5 顯示電路255 軟件流程設(shè)計275.1 初始化程序275.2 主程序流程275.3 各個模塊子程序流程285.3.1 顯示程序流程285.3.2 A/D轉(zhuǎn)換程序流程29總結(jié)30致謝31參考文獻32附件1:數(shù)字電壓表電路原理圖33附件2:程序清單341 緒論1.1 課題的選擇的背景和意義傳統(tǒng)的指針式刻度

7、電壓表功能單一,精度低,容易引起視差和視覺疲勞,因而不能滿足數(shù)字化時代的需求。采用單片機的數(shù)字電壓表,將連續(xù)的模擬量如直流電壓轉(zhuǎn)化成不連續(xù)的離散的數(shù)字形式并加以顯示,從而精度高、抗干擾能力強,可擴展性強、集成方便,還可與PC 實時通信。數(shù)字電壓表是諸多數(shù)字化儀表的核心與基礎(chǔ)。以數(shù)字電壓表為核心,可以擴展成各種通用數(shù)字儀表、專用數(shù)字儀表及各種非電量的數(shù)字化儀表。目前,由各種單片機和 A/D 轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測量、工業(yè)自動化儀表、自動測試系統(tǒng)等智能化測量領(lǐng)域。顯示出強大的生命力。與此同時,由DVM擴展而成的各種通用及專用數(shù)字儀器儀表,也把電量及非電量測量技術(shù)提高到嶄新

8、的水平。因此對數(shù)字電壓表作全面深入的了解是很有必要的。1.2 課題研究的現(xiàn)狀和發(fā)展趨勢最近的十幾年來,隨著半導(dǎo)體技術(shù)、集成電路 (IC)和微處理器技術(shù)的發(fā)展, 數(shù)字電路和數(shù)字化測量技術(shù)也有了巨大的進步,從而促使了數(shù)字電壓表的日新月異,并不斷出現(xiàn)新的類型。 數(shù)字電壓表從 1952 年問世以來,經(jīng)歷了不斷改進的過程,從最早采用繼電器、電子管的型式發(fā)展到了現(xiàn)在的全固態(tài)化、集成化(IC 化,另一方面,精度也從0.1%提高到了現(xiàn)在的0.01%0.005%,而且從實驗中空用的“高價樣品” 開始已發(fā)展到了現(xiàn)在為廠礦企業(yè)廣所使用的的“廉價型”,進而出現(xiàn)了能夠用于安裝板上作指示儀表的“安裝型”。 目前,數(shù)字電壓

9、表的內(nèi)部核心部件是A/D 轉(zhuǎn)換器,轉(zhuǎn)換的精度很大程度上影響著數(shù)字電壓表的準確度,因而,以后數(shù)字電壓表的發(fā)展就著眼在高精度和低成本這兩個方面。1.3 智能儀表目前發(fā)展狀況在自動化控制系統(tǒng)中,儀器儀表作為其構(gòu)成元素,它的技術(shù)進展是跟隨控制系統(tǒng)技術(shù)的發(fā)展的。常規(guī)的自動化儀器儀表適應(yīng)常規(guī)控制系統(tǒng)的要求,它們以經(jīng)典控制理論和現(xiàn)代控制理論為基礎(chǔ),以控制對象的數(shù)學(xué)模型為依據(jù)。當(dāng)今,控制理論已發(fā)展到智能控制的新階段,自動化儀器儀表的智能化就成為必然和必須。本文將就自動化儀器儀表的智能化的狀況與進展,以及當(dāng)今對智能儀器儀表研究、開發(fā)熱點做概要的分析與表述。作者建議人們關(guān)注自動化儀器儀表智能化技術(shù)的進展,關(guān)注儀器

10、儀表裝置與控制系統(tǒng)技術(shù)的互動發(fā)展,這對推進我國自動化技術(shù)水平的進一步提高將是大為有益的。智能化的自動化儀器儀表應(yīng)以智能控制理論為基礎(chǔ),體現(xiàn)人的智能行為。人工智能是智能控制理論的基本組成部分之一,它以知識為基礎(chǔ),它的目標是建造智能化的計算機系統(tǒng),用來模擬和執(zhí)行人類的智力功能,如判斷、理解、推理、識別、規(guī)劃、學(xué)習(xí)和問題求解等等,進而用自動機模仿人類的思維過程和智能行為?;谥悄芸刂评碚摶A(chǔ)的智能儀器儀表目前大致有幾方面的進展:(1)專家控制系統(tǒng)(expert control system, ECS)是典型的基于知識控制系統(tǒng),它是一個具有大量的專門知識與經(jīng)驗的程序系統(tǒng)。它運用人工智能技術(shù)和計算機技術(shù)

11、,根據(jù)某領(lǐng)域一個或多個專家提供的知識和經(jīng)驗,進行推理和判斷,模擬人類專家的決策過程,解決那些需要人類專家才能解決好的復(fù)雜問題。專家控制器的結(jié)構(gòu)按控制要求的不同而有所不同。典型的結(jié)構(gòu)由知識庫、推理機、人機接口等組成。其中,知識的獲取、知識庫的建立是關(guān)鍵。人們已經(jīng)總結(jié)出的方法是領(lǐng)域?qū)<液椭R專家的有機結(jié)合,同時收集、歸納有經(jīng)驗的操作員方面的知識。然后把獲取的知識變成可用的規(guī)則,以期在推理過程中得到更高的命中率。專家控制已在工業(yè)控制中得到廣泛的應(yīng)用。(2)模糊控制器(FC-Fuzzy Controller),也稱模糊邏輯控制器(FLC-Fuzzy Logic Controller)。自然界的事物都具

12、有一定的模糊性,模糊邏輯在控制領(lǐng)域中的應(yīng)用產(chǎn)生了模糊控制技術(shù)。由于模糊控制技術(shù)具有處理不確定性、不精確性和模糊信息的能力,對無法建造數(shù)學(xué)模型的被控過程能進行有效的控制,能解決一些用常規(guī)控制方法不能解決的問題,因而模糊控制在工業(yè)控制領(lǐng)域得到了廣泛的應(yīng)用。模糊控制器一般由輸入標定、模糊化、模糊決策、清晰化、輸出標定等幾個部分組成。其中,模糊化、模糊決策、清晰化是主要和基本的部分,“模糊化”將輸入量(精確量)變?yōu)槟:?,“模糊決策”進行模糊運算,其過程是由推理機進行預(yù)估輸出推理,得到模糊量輸出。“清晰化”將模糊量輸出轉(zhuǎn)化為精確量,提供給系統(tǒng)的驅(qū)動器定標后使用。當(dāng)前,模糊控制技術(shù)在工業(yè)控制中得到廣泛的

13、應(yīng)用,尤其在不確定性過程、難于建模的場合發(fā)揮了模糊控制技術(shù)的長處。模糊控制器在家電和其它行業(yè)同樣得到了廣泛的應(yīng)用。(3)神經(jīng)網(wǎng)絡(luò)在工業(yè)控制系統(tǒng)中的應(yīng)用提高了系統(tǒng)的信息處理能力,提高了系統(tǒng)的智能水平。所謂神經(jīng)網(wǎng)絡(luò)控制,簡稱神經(jīng)控制,它是指采用神經(jīng)網(wǎng)絡(luò)這一技術(shù)對復(fù)雜的非線性對象進行建模,或擔(dān)當(dāng)控制器,或優(yōu)化計算,或進行推理,或故障診斷等工作。由于神經(jīng)網(wǎng)絡(luò)具有高度的并行結(jié)構(gòu)和并行實現(xiàn)能力,具有對任意非線性關(guān)系的描述能力,具有通過訓(xùn)練學(xué)習(xí)歸納全部數(shù)據(jù)能力,使得它在控制系統(tǒng)中被廣泛靈活地應(yīng)用。數(shù)字電壓表(Digital Voltmeter)簡稱DVM,作為智能儀表的一種,它是采用數(shù)字化測量技術(shù),把連續(xù)的

14、模擬量(直流輸入電壓)轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表。傳統(tǒng)的指針式電壓表功能單一、精度低,不能滿足數(shù)字化時代的需求,采用單片機的數(shù)字電壓表,由精度高、抗干擾能力強,可擴展性強、集成方便,還可與PC進行實時通信。目前,由各種單片A/D 轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測量、工業(yè)自動化儀表、自動測試系統(tǒng)等智能化測量領(lǐng)域,示出強大的生命力。 2 系統(tǒng)方案設(shè)計2.1 系統(tǒng)設(shè)計要求 1、 可以測量0-5V的8路輸入電壓值;2、 測量結(jié)果可在四位LED數(shù)碼管上輪流顯示后單路選擇顯示;3、 測量最小分辨率為0.019V;4、 測量誤差約為+0.02V;2.2 系統(tǒng)設(shè)計思路 1、

15、根據(jù)設(shè)計要求,選擇AT89S51單片機作為核心控制器件。 2、 A/D 轉(zhuǎn)換采用ADC0809 實現(xiàn)。與單片機的接口為 P0 口和 P2 端口的高四位引腳。 3、 電壓顯示采用4 位一體的LED 數(shù)碼管。 4、 LED 數(shù)碼管的段碼輸入,由并行端口 P1 產(chǎn)生;位碼輸入,由并行端口 P3 低三位產(chǎn)生。主控模塊顯示模塊A/D轉(zhuǎn)換模塊圖2.1設(shè)計思路框圖3 系統(tǒng)硬件的選擇3.1 單片機的選擇20世紀80年代以來,單片機的發(fā)展非常迅速,就通用單片機而言,世界上一些著名的計算機廠家已投放市場的產(chǎn)品就有50多個系列,數(shù)百個品種。目前世界上較為著名的8位單片機的生產(chǎn)廠家和主要機型如下:美國Intel公司:

16、MCS51系列及其增強型系列美國Motorola公司:6801系列和6805系列美國Atmel公司:89C52等單片機美國Zilog公司:Z8系列及SUPER8美國Fairchild公司:F8系列和3870系列美國Rockwell公司:6500/1系列美國TI(德克薩司儀器儀表)公司:TMS7000系列NS(美國國家半導(dǎo)體)公司:NS8070系列 等等。盡管單片機的品種很多,但是在我國使用最多的還是Intel公司的MCS51系列單片機和美國Atmel公司的89C52單片機MCS51系列單片機包括三個基本型8031、8051、87518031內(nèi)部包括一個8位CPU、128個字節(jié)RAM,21個特殊

17、功能寄存器(SFR)、4個8位并行I/O口、1個全雙工串行口、2個16位定時器/計數(shù)器,但片內(nèi)無程序存儲器,需外擴EPROM芯片。比較麻煩,不予采用8051是在8031的基礎(chǔ)上,片內(nèi)集成有4K ROM,作為程序存儲器,是一個程序不超過4K字節(jié)的小系統(tǒng)。ROM內(nèi)的程序是公司制作芯片時,代為用戶燒制的,出廠的8051都是含有特殊用途的單片機。所以8051適合與應(yīng)用在程序已定,且批量大的單片機產(chǎn)品中。也不予采用。8751是在8031基礎(chǔ)上,增加了4K字節(jié)的EPROM,它構(gòu)成了一個程序小于4KB的小系統(tǒng)。用戶可以將程序固化在EPROM中,可以反復(fù)修改程序。但其價格相對8031較貴。8031外擴一片4K

18、B EPROM的就相當(dāng)于8751,它的最大優(yōu)點是價格低。隨著大規(guī)模集成電路技術(shù)的不斷發(fā)展,能裝入片內(nèi)的外圍接口電路也可以是大規(guī)模的。也不予采用。AT89S51是美國ATMEL公司生產(chǎn)的低功耗、高性能CMOS 8位單片機。圖1-6和1-7分別為其實物圖和內(nèi)部總體結(jié)構(gòu)圖。AT89S51片內(nèi)含有4k字節(jié)Flash閃速存儲器,128字節(jié)內(nèi)部 RAM,32個I/O 口線,看門狗(WDT),兩個數(shù)據(jù)指針,兩個16 位定時/計數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,S51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許 R

19、AM,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存 RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復(fù)位。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89S51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。因此我選擇AT89S51為系統(tǒng)的控制器。3.2 A/D轉(zhuǎn)換器的選擇A/D轉(zhuǎn)換器大致分有三類:一是雙積分A/D轉(zhuǎn)換器,二是逐次逼近式A/D轉(zhuǎn)換器,三是并行A/D轉(zhuǎn)換器。雙積分A/D轉(zhuǎn)換器通過兩次積分將輸入的模擬電壓轉(zhuǎn)換成時間或頻率,然后由定時器/計數(shù)器獲得數(shù)字值。它的優(yōu)點是分辨率高,抗干擾性好,價格便宜,但轉(zhuǎn)換速

20、率低。逐次逼近式A/D轉(zhuǎn)換器是將采樣輸入信號與給定電壓不斷地進行比較,從逐次逼近寄存器的最高位開始,順序地對寄存器的每一位將輸入電壓與內(nèi)置D/A轉(zhuǎn)換器輸出進行比較,一個時鐘周期完成1位轉(zhuǎn)換,進過n次比較而得到數(shù)字值。它的優(yōu)點是精度、速度、價格適中、不存在延遲問題。適合于中速率而分辨率較高的場合。并行A/D轉(zhuǎn)換器是內(nèi)部有多個比較器,只需要作一次比較就可完成轉(zhuǎn)換。優(yōu)點是它是所有A/D轉(zhuǎn)換器中速度最快的,但價格也昂貴,分辨率卻不是很高。在轉(zhuǎn)換精度、轉(zhuǎn)換速率、以及經(jīng)濟上的考慮,該系統(tǒng)決定選用逐次逼近式A/D轉(zhuǎn)換器的ADC0809型。ADC0809是典型的8位MOS型8通道逐次逼近式A/D轉(zhuǎn)換器,每采集

21、一次一般需100s。輸入電壓輸入數(shù)字電壓 電壓比較器逐次逼近寄存器順序脈沖發(fā)生器 DAC圖3.1 逐次逼近式A/D轉(zhuǎn)換原理圖3.3 LED顯示電路選擇 LED顯示器是由N個LED顯示塊拼接成N位LED顯示器。N個LED顯示塊有N跟位選線,根據(jù)顯示方式的不同,位選線和段選線的連接方法也各不相同,段選線控制顯示字符的字型,而位選線為各個LED顯示塊的公共端,它控制該LED顯示位的亮、暗。LED顯示器有靜態(tài)顯示和動態(tài)顯示兩種顯示方式。(1)LED靜態(tài)顯示方式:LED顯示器工作于靜態(tài)顯示方式時,各位的共陰極(或共陽極)連接在一起并接地(或+5V);每位的段選線(adp)分別與一個8位的鎖存器輸出相連。

22、所以稱為靜態(tài)顯示。各個LED的顯示字符一經(jīng)確定,相應(yīng)鎖存器的輸出將維持不變,直到顯示另一個字符為止。也正因此如此,靜態(tài)顯示器的亮度都較高。這種顯示方式接口編程容易。付出的代價是占用口線較多,若用I/O接口,則要占用4個8位I/O口,若用鎖存器接口,則要用4片74LS373芯片。如果顯示器位數(shù)增多,則靜態(tài)顯示方式更是無法適應(yīng),因此在顯示位數(shù)較多的情況下,一般都采用動態(tài)顯示方式。(2)LED動態(tài)顯示方式:在多位LED顯示時,為了簡化硬件電路,通常將所有位的段選線相應(yīng)的并聯(lián)在一起,有一個8位I/O口控制,形成段選線的多路復(fù)用。而各位的共陽極或共陰極分別由相應(yīng)的I/O線控制,實現(xiàn)各位的分時選通。其中段

23、選線占用一個8位I/O口,而位選線占用一個4位I/O口。由于各位的段選線并聯(lián),段碼的輸出對各位來說都是相同的,因此,同一時刻,如果各位位選線都處于選通狀態(tài)的話,4位LED將顯示相同的字符。若要各位LED能夠顯示出與本位相應(yīng)的顯示字符,就必須采用掃描顯示方式,即在某一時刻,只讓某一位的位選線狀態(tài),而其他各位的位選線處于關(guān)閉狀態(tài),同時,段選線上輸出相應(yīng)位要顯示字節(jié)的段碼。在確定LED不同位顯示的時間間隔,不能太短,因為發(fā)光二極管從導(dǎo)通到發(fā)光有一定的延時,導(dǎo)通時間太短,發(fā)光太弱人眼無法看清。但也不能太長,因為畢竟要受限于臨界閃爍頻率,而且此時間越長,占用CPU時間也越多,另外,顯示位增多,也將占用大

24、量的CPU時間,因此動態(tài)顯示實質(zhì)是一犧牲CPU時間來換取元件的減少。所以,由于本系統(tǒng)涉及到4位顯示輸出,采用LED動態(tài)掃描顯示方式。3.4 驅(qū)動芯片的選擇74HC244和74HC245的主要區(qū)別除了信號端的傳輸時間有細微差別之外,245可以雙向傳輸,244是單向的。如果輸入的數(shù)據(jù)可以保持比較長的時間(比如鍵盤),簡單輸入接口擴展通常使用的典型芯片為74HC244,由該芯片可構(gòu)成三態(tài)數(shù)據(jù)緩沖器7。所以該系統(tǒng)選用74HC244。4 硬件電路設(shè)計4.1 硬件電路設(shè)計概述硬件電路設(shè)計主要包括:89S51單片機系統(tǒng),A/D轉(zhuǎn)換電路,顯示電路。測量最大電壓為5V,顯示最大值為5.00V。本實驗采用AT89

25、S51單片機芯片配合ADC0809模/數(shù)轉(zhuǎn)換芯片構(gòu)成一個簡易的數(shù)字電壓表,其硬件電路原理圖見附件1。該電路通過ADC0809芯片采樣輸入口IN0輸入的05 V的模擬量電壓,經(jīng)過模/數(shù)轉(zhuǎn)換后,產(chǎn)生相應(yīng)的數(shù)字量經(jīng)過其輸出通道D0D7傳送給AT89S51芯片的P0口。AT89S51負責(zé)把接收到的數(shù)字量經(jīng)過數(shù)據(jù)處理,產(chǎn)生正確的7段數(shù)碼管的顯示段碼,并通過其P1口經(jīng)驅(qū)動芯片74HC244驅(qū)動,再傳送給數(shù)碼管。同時它還通過其三位I/O口P3.0、P3.1、P3.2產(chǎn)生位選信號,控制數(shù)碼管的亮滅。另外,AT89S51還控制著ADC0809的工作。其ALE管腳為ADC0809提供了1MHz工作的時鐘脈沖;P2

26、.3控制ADC0809的地址鎖存端(ALE);P2.4控制ADC0809的啟動端(START);P2.5控制ADC0809的輸出允許端(OE);P3.7控制ADC0809的轉(zhuǎn)換結(jié)束信號(EOC)。圖4.1 電路設(shè)計方案4.2 主要元器件的介紹4.2.1 單片機AT89S51AT89S51是美國ATMEL公司生產(chǎn)的低功耗、高性能CMOS 8位單片機。圖1-6和1-7分別為其實物圖和內(nèi)部總體結(jié)構(gòu)圖。AT89S51片內(nèi)含有4k字節(jié)Flash閃速存儲器,128字節(jié)內(nèi)部 RAM,32個I/O 口線,看門狗(WDT),兩個數(shù)據(jù)指針,兩個16 位定時/計數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片

27、內(nèi)振蕩器及時鐘電路。同時,S51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許 RAM,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存 RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復(fù)位。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89S51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。圖4.2 AT89S51實物圖4.2.1.1 主要性能參數(shù)與MCS-51產(chǎn)品指令系列完全兼容;4K字節(jié)在系統(tǒng)編程(ISP)Flash閃速存儲器;1000次擦寫周期;4.05.5 V工

28、作電壓范圍;全靜態(tài)工作模式:0Hz33MHz;三級程序加密鎖;128字節(jié)內(nèi)部RAM;32個可編程I/O口線;2個16位的定時/計數(shù)器;6個中斷源;全雙工串行UART通道;低工耗空閑和掉電模式;中斷可從空閑模式喚醒系統(tǒng);看門狗(WDT)及雙數(shù)據(jù)指針;掉電標識和快速編程特性;靈活的在系統(tǒng)編程如圖4.3為AT89S51的芯片內(nèi)部總體結(jié)構(gòu)圖圖4.3 AT89S51芯片內(nèi)部總體結(jié)構(gòu)圖42.1.2 AT89S51的引腳AT89S51芯片為40引腳雙列直插式封裝,其引腳排列如圖4.4所示。圖4.4 AT89S51的引腳圖(1)VCC:電源電壓;(2)GND:接地;(3)P0口:P0口是一組8位漏極開路雙向I

29、/O口,每位引腳可驅(qū)動8個TTL邏輯門路。對P0口的管腳寫“1”時,被定義為高阻抗輸入。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,它可以被定義為數(shù)據(jù)總線和地址總線的低八位。在FLASH編程時,P0 口作為原碼輸入口;當(dāng)FLASH進行校驗時,P0輸出原碼,此時P0外部必須接上拉電阻。(4)P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口的輸出緩沖器可驅(qū)動4個TTL邏輯門電路。對P1口管腳寫入“1”后,被內(nèi)部上拉電阻拉高,可用作輸入。P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部接有上拉電阻的緣故。在FLASH編程和校驗時,P1口作為低八位地址接收。P1口還具有第二功能,如表4.1所

30、示。    表4.1 P1口的第二功能端口引腳第二功能P1.5MOSI(用于ISP編程)P1.6MISO(用于ISP編程)P1.7SCK(用于ISP編程)(5)P2口:P2口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P2口的輸出緩沖器可驅(qū)動4個TTL邏輯門電路。對P2口管腳寫入“1”后,被內(nèi)部上拉電阻拉高,可用作輸入。P2口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部接有上拉電阻的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在訪問8位地址外部數(shù)據(jù)存儲器時,P2口線上的內(nèi)容,在整個訪問期間不改變。P2口在

31、FLASH編程和校驗時接收高八位地址信號和控制信號。(6)P3口:P3口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P3口的輸出緩沖器可驅(qū)動4個TTL邏輯門電路。對P3口管腳寫入“1”后,被內(nèi)部上拉電阻拉高,可用作輸入。P3口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部接有上拉電阻的緣故。P3口除了一般I/O線的功能外,還具有更為重要的第二功能,如表4.2所示。P3口同時為FLASH編程和編程校驗接收一些控制信號表4.2 P3口的第二功能端口引腳第二功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2/INTO(外部中斷0)P3.3/INT1(外部中斷1)P3.4T0(定時器0

32、外部輸入)P3.5T1(定時器1外部輸入)P3.6/WR(外部數(shù)據(jù)存儲器寫選通)P3.7/RD(外部數(shù)據(jù)存儲器讀選通)(7) RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機器周期的高電平時間。(8) ALE/RPOG:當(dāng)訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行M

33、OVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。(9)/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的信號將不出現(xiàn)。(10)/EA/VPP:當(dāng)保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。AT89S51 有256 個字節(jié)的內(nèi)部RAM,80H-FFH

34、 高128 個字節(jié)與特殊功能寄存器(SFR)地址是重疊的,也就是高128字節(jié)的RAM 和特殊功能寄存器的地址是相同的,但物理上它們是分開的。·定時器0和定時器1:AT89S51的定時器0和定時器1 的工作方式與AT89C51 相同。定時和計數(shù)功能由特殊功能寄存器TMOD的控制位C/T進行選擇,這兩個定時/計數(shù)器有4種操作模式,通過TMOD的M1和M0選擇。其中模式0、1和2都相同,模式3不同。·定時器2:定時器2 是一個16 位定時/計數(shù)器。它既可當(dāng)定時器使用,也可作為外部事件計數(shù)器使用,其工作方式由特殊功能寄存器T2CON的C/T2 位選擇。定時器2 有三種工作方式:捕獲

35、方式,自動重裝載(向上或向下計數(shù))方式和波特率發(fā)生器方式,工作方式由T2CON 的控制位來選擇。定時器2 由兩個8 位寄存器TH2 和TL2 組成,在定時器工作方式中,每個機器周期TL2 寄存器的值加1,由于一個機器周期由12 個振蕩時鐘構(gòu)成,因此,計數(shù)速率為振蕩頻率的1/12。在計數(shù)工作方式時,當(dāng)T2 引腳上外部輸入信號產(chǎn)生由1 至0 的下降沿時,寄存器的值加1,在這種工作方式下,每個機器周期的5SP2 期間,對外部輸入進行采樣。若在第一個機器周期中采到的值為1,而在下一個機器周期中采到的值為0,則在緊跟著的下一個周期的S3P1 期間寄存器加1。由于識別1 至0 的跳變需要2 個機器周期(2

36、4 個振蕩周期),因此,最高計數(shù)速率為振蕩頻率的1/24。為確保采樣的正確性,要求輸入的電平在變化前至少保持一個完整周期的時間,以保證輸入信號至少被采樣一次。·可編程時鐘輸出:定時器2 可通過編程從P1.0 輸出一個占空比為50%的時鐘信號。P1.0 引腳除了是一個標準的I/O 口外,還可以通過編程使其作為定時/計數(shù)器2 的外部時鐘輸入和輸出占空比50%的時鐘脈沖。當(dāng)時鐘振蕩頻率為16MHz 時,輸出時鐘頻率范圍為61Hz4MHz。·UART:AT89S51的工作方式與AT89C51工作方式相同。串口為全雙工結(jié)構(gòu),表示可以同時發(fā)送和接收,它還具有接收緩沖,在第一個字節(jié)從寄存

37、器讀出之前,可以開始接收第二個字節(jié)。(但是如果第二個字節(jié)接收完畢時第一個字節(jié)仍未讀出,其中一個字節(jié)將會丟失)。串口的發(fā)送和接收寄存器都是通過SFR SBUF進行訪問的。寫入SBUF的數(shù)據(jù)裝入發(fā)送寄存器,對SBUF的讀操作是對物理上分開的接收寄存器進行訪問。該串口有4種操作模式(模式0、模式1、模式2和模式3),在這4種模式中,發(fā)送過程是以任意一條寫SBUF作為目標寄存器的指令開始的,模式0時接收通過設(shè)置R0=0及REN=1初始化,其他模式下如若REN=1則通過起始位初始化。·中斷:AT89S51共有6 個中斷向量:兩個外中斷(INT0 和INT1),3 個定時器中斷(定時器0、1、2

38、)和串行口中斷。這些中斷源可通過分別設(shè)置專用寄存器IE 的置位或清0 來控制每一個中斷的允許或禁止。IE 也有一個總禁止位EA,它能控制所有中斷的允許或禁止。定時器2 的中斷是由T2CON 中的TF2 和EXF2 邏輯或產(chǎn)生的,當(dāng)轉(zhuǎn)向中斷服務(wù)程序時,這些標志位不能被硬件清除,事實上,服務(wù)程序需確定是TF2 或EXF2 產(chǎn)生中斷,而由軟件清除中斷標志位。定時器0 和定時器1 的標志位TF0 和TF1 在定時器溢出那個機器周期的S5P2 狀態(tài)置位,而會在下一個機器周期才查詢到該中斷標志。然而,定時器2 的標志位TF2 在定時器溢出的那個機器周期的S2P2 狀態(tài)置位,并在同一個機器周期內(nèi)查詢到該標志

39、。·時鐘振蕩器:AT89S51中有一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1 和XTAL2 分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路。外接石英晶體(或陶瓷諧振器)及電容C1、C2 接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對外接電容C1、C2 雖然沒有十分嚴格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性,如果使用石英晶體,我們推薦電容使用30pF±10pF,而如使用陶瓷諧振器建議選擇40pF±10F。用戶也可以采用外部時鐘。采用外部

40、時鐘的電路。這種情況下,外部時鐘脈沖接到XTAL1 端,即內(nèi)部時鐘發(fā)生器的輸入端,XTAL2 則懸空。由于外部時鐘信號是通過一個2 分頻觸發(fā)器后作為內(nèi)部時鐘信號的,所以對外部時鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時間和最大的低電平持續(xù)時間應(yīng)符合產(chǎn)品技術(shù)條件的要求。·Flash存儲器的編程:AT89S51單片機內(nèi)部有8k字節(jié)的Flash PEROM,這個Flash 存儲陣列出廠時已處于擦除狀態(tài)(即所有存儲單元的內(nèi)容均為FFH),用戶隨時可對其進行編程。編程接口可接收高電壓(+12V)或低電壓(Vcc)的允許編程信號。低電壓編程模式適合于用戶在線編程系統(tǒng),而高電壓編程模式可與通用

41、EPROM 編程器兼容。·數(shù)據(jù)查詢:AT89S51 單片機用Data Palling 表示一個寫周期結(jié)束為特征,在一個寫周期中,如需讀取最后寫入的一個字節(jié),則讀出的數(shù)據(jù)的最高位(P0.7)是原來寫入字節(jié)最高位的反碼。寫周期完成后,所輸出的數(shù)據(jù)是有效的數(shù)據(jù),即可進入下一個字節(jié)的寫周期,寫周期開始后,Data Palling 可能隨時有效。·Ready/Busy:字節(jié)編程的進度可通過“RDY/BSY 輸出信號監(jiān)測,編程期間,ALE 變?yōu)楦唠娖健癏”后,P3.4(RDY/BSY)端電平被拉低,表示正在編程狀態(tài)(忙狀態(tài))。編程完成后,P3.4 變?yōu)楦唠娖奖硎緶蕚渚途w狀態(tài)。·

42、;程序校驗:如果加密位LB1、LB2 沒有進行編程,則代碼數(shù)據(jù)可通過地址和數(shù)據(jù)線讀回原編寫的數(shù)據(jù),采用如圖12的電路。加密位不可直接校驗,加密位的校驗可通過對存儲器的校驗和寫入狀態(tài)來驗證。·芯片擦除:利用控制信號的正確組合并保持ALE/PROG 引腳10mS 的低電平脈沖寬度即可將PEROM 陣列(4k字節(jié))和三個加密位整片擦除,代碼陣列在片擦除操作中將任何非空單元寫入“1”,這步驟需再編程之前進行。4.2.1.3 AT89S51與AT89C51的區(qū)別AT89S51在AT89C51的基礎(chǔ)上,又增加了許多功能,性能有了較大提升。(1)ISP在線編程功能,這個功能的優(yōu)勢在于改寫單片機存儲

43、器內(nèi)的程序不需要把芯片從工作環(huán)境中剝離。是一個強大易用的功能。(2)工作頻率為33MHz,大家都知道89C51的極限工作頻率只有24M,就是說S51具有更高工作頻率,從而具有了更快的計算速度。 (3)具有雙工UART串行通道。 (4)內(nèi)部集成看門狗計時器,不再需要像89C51那樣外接看門狗計時器單元電路。 (5)雙數(shù)據(jù)指示器。 (6)電源關(guān)閉標識。 (7)全新的加密算法,這使得對于89S51的解密變?yōu)椴豢赡?,程序的保密性大大加強,這樣就可以有效的保護知識產(chǎn)權(quán)不被侵犯。 (8)兼容性方面:向下完全兼容51全部字系列產(chǎn)品。比如8051、89C51等等早期MCS-51兼容產(chǎn)品。在89C51上一樣可以

44、照常運行,這就是所謂的向下兼容。4.2.1.4 AT89S51的復(fù)位電路AT89S51的復(fù)位電路如圖1-8所示。當(dāng)單片機一上電,立即復(fù)位;另外,如果在運行中,外界干擾等因素使單片機的程序陷入死循環(huán)狀態(tài)或“跑飛”,就可以通過按鍵使其復(fù)位。復(fù)位也是使單片機退出低功耗工作方式而進入正常狀態(tài)的一種操作。圖4.5 復(fù)位電路電容C和電阻R1實現(xiàn)上電自動復(fù)位。增加按鍵開關(guān)S和電阻R2又可實現(xiàn)按鍵復(fù)位功能。R2的作用是在S按下的時候,防止電容C放電電流過大燒壞開關(guān)S的觸點。因保證R1/R2 >10。一般取C=10uF,R2=100,R1=8.2K。4.2.2 A/D轉(zhuǎn)換芯片ADC0809 ADC0809

45、是典型的8位8通道逐次逼近式A/D轉(zhuǎn)換器,其實物如圖1-3所示。它可以和微型計算機直接接口。ADC0809轉(zhuǎn)換器的系列芯片是ADC0808,可以相互替換。 如圖4.6為ADC0809實物圖:圖4.6 ADC0809實物圖4.2.2.1 ADC0809內(nèi)部邏輯結(jié)構(gòu) 圖4.7 ADC0809的內(nèi)部邏輯結(jié)構(gòu)圖      ADC0809的內(nèi)部邏輯結(jié)構(gòu)如圖4.7所示。圖中多路模擬開關(guān)可選通8路模擬通道,允許8路模擬量分時輸入,并共用一個A/D轉(zhuǎn)換器進行轉(zhuǎn)換。地址鎖存與譯碼電路完成對A、B、C三個地址位進行鎖存與譯碼,如表4.3所示。表4.3 A

46、DC0809通道選擇表C(ADDC)B(ADDB)A(ADDA)選擇的通道000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN74.2.2.2 ADC0809的引腳ADC0809芯片為28引腳雙列直插式封裝,其引腳排列如圖4.8所示。圖4.8 ADC0809引腳圖(1)IN0IN7:8路模擬量輸入通道。(2)A、B、C:模擬通道地址線。這3根地址線用于對8路模擬通道的選擇,其譯碼關(guān)系如表4.3所示。其中,A為低地址,C為高地址,引腳圖中為ADDA,ADDB和ADDC。(3)ALE:地址鎖存允許信號。對應(yīng)ALE上跳沿,A、B、C地址狀態(tài)送入地址鎖存器中。

47、(4)START:轉(zhuǎn)換啟動信號。START上升沿時,復(fù)位ADC0809;START下降沿時啟動芯片,開始進行A/D轉(zhuǎn)換;在A/D轉(zhuǎn)換期間,START應(yīng)保持低電平。本信號有時簡寫為ST。(5)D7D0:數(shù)據(jù)輸出線。為三態(tài)緩沖輸出形式,可以和單片機的數(shù)據(jù)線直接相連。D0為最低位,D7為最高。 (6)OE:輸出允許信號。用于控制三態(tài)輸出鎖存器向單片機輸出轉(zhuǎn)換得到的數(shù)據(jù)。OE=0,輸出數(shù)據(jù)線呈高阻;OE=1,輸出轉(zhuǎn)換得到的數(shù)據(jù)。(7)CLK:時鐘信號。ADC0809的內(nèi)部沒有時鐘電路,所需時鐘信號由外界提供,因此有時鐘信號引腳。通常使用頻率為500KHz的時鐘信號。(8)EOC:轉(zhuǎn)換結(jié)束信號。EOC=

48、0,正在進行轉(zhuǎn)換;EOC=1,轉(zhuǎn)換結(jié)束。使用中該狀態(tài)信號即可作為查詢的狀態(tài)標志,又可作為中斷請求信號使用。(9)Vcc: +5V電源,GND:地。 (10)Vref:參考電壓。參考電壓用來與輸入的模擬信號進行比較,作為逐次逼近的基準。其典型值為+5V(Vref(+)=+5V, Vref(-)=0V)。4.2.2.3 ADC0809的工作原理首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復(fù)位。下降沿啟動 A/D轉(zhuǎn)換,之后EOC輸出信號變低,指示轉(zhuǎn)換正在進行。直到A/D轉(zhuǎn)換完成,EOC變?yōu)楦唠娖?,指示A/D轉(zhuǎn)換結(jié)

49、束,結(jié)果數(shù)據(jù)已存入鎖存器,這個信號可用作中斷申請。當(dāng)OE輸入高電平時,輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。(注意:ALE信號常與START信號連在一起,這樣連接可以在信號的前沿寫入地址信號,在其后沿啟動A/D轉(zhuǎn)換,圖4.9為ADC0809信號的時序配合圖)。圖4.9 ADC0809信號的時序配合4.2.3 驅(qū)動芯片74HC24474H244在本系統(tǒng)中作為驅(qū)動芯片使用,用于驅(qū)動數(shù)碼管的點亮。由該芯片可構(gòu)成三態(tài)數(shù)據(jù)緩沖器。74HC244芯片的引腳排列如圖4.10所示。圖4.10 74HC244芯片的引腳圖74HC244芯片內(nèi)部共有兩個四位三態(tài)緩沖器,使用時可分別以1G和2G作為它們的

50、選通工作信號。當(dāng)1G和2G都為低電平時,輸出端Y和輸入端A狀態(tài)相同;當(dāng)1G和2G都為高電平時,輸出呈高阻態(tài)。4.2.4 4位一體7段LED數(shù)碼管本實驗的顯示模塊主要由一個4位一體的7段LED數(shù)碼管(SM410564)構(gòu)成,用于顯示測量到的電壓值。它是一個共陽極的數(shù)碼管,每一位數(shù)碼管的原理圖如圖4.11所示。每一位數(shù)碼管的a,b,c,d,e,f,g和dp端都各自連接在一起,用于接收AT89C52的P1口產(chǎn)生的顯示段碼。C1,C2,C3,C4引腳端為其位選端,用于接收AT89C52的P3口產(chǎn)生的位選碼。圖4-10為其實物圖,圖4.12為其引腳圖。圖4.11 一位數(shù)碼管的原理圖圖4.12 數(shù)碼管引腳

51、圖4.3 AT89S51 單片機主控電路本課題實驗主要采用AT89S51芯片和ADC0809芯片來完成一個簡易的數(shù)字電壓表,能夠?qū)斎氲?5 V的模擬直流電壓進行測量,并通過一個4位一體的7段LED數(shù)碼管進行顯示,測量誤差約為0.02 V。該電壓表的測量電路主要由三個模塊組成:A/D轉(zhuǎn)換模塊、數(shù)據(jù)處理模塊及顯示控制模塊。A/D轉(zhuǎn)換主要由芯片ADC0809來完成,它負責(zé)把采集到的模擬量轉(zhuǎn)換為相應(yīng)的數(shù)字量再傳送到數(shù)據(jù)處理模塊。數(shù)據(jù)處理則由芯片AT89S51來完成,其負責(zé)把ADC0809傳送來的數(shù)字量經(jīng)一定的數(shù)據(jù)處理,產(chǎn)生相應(yīng)的顯示碼送到顯示模塊進行顯示;另外它還控制著ADC0809芯片的工作。顯示

52、模塊主要由7段數(shù)碼管及相應(yīng)的驅(qū)動芯片74LS373組成,顯示測量到的電壓值。4.4 A/D轉(zhuǎn)換電路 A/D轉(zhuǎn)換由ADC0809完成。ADC0809具有8路模擬輸入端口,地址線(2325腳)可決定對哪一路模擬輸入作A/D轉(zhuǎn)換。22腳為地址控制,當(dāng)輸入為高電平時,對地址信號進行鎖存。6腳為測試控制,當(dāng)輸入一個2s寬高電平脈沖時,就開始A/D轉(zhuǎn)換。7腳為A/D轉(zhuǎn)換結(jié)束標志,當(dāng)A/D轉(zhuǎn)換結(jié)束時,7腳輸出高電平。9腳為A/D轉(zhuǎn)換數(shù)據(jù)輸出允許控制,當(dāng)OE腳為高電平時,A/D轉(zhuǎn)換數(shù)據(jù)從該端口輸出。10腳為ADC0809的時鐘輸入端,利用單片機AT89S51的30腳的六分頻晶振頻率再通過14024二分頻得到1

53、MHz時鐘。AT89S51與ADC0809的連接電路原理圖如圖4.13所示。圖4.13 AT89S51與ADC0809的連接電路原理圖AT89S51與ADC0809的連接必須注意處理好3個問題:(1)在START端送一個100s寬的啟動正脈沖; (2)獲取EOC端上的狀態(tài)信息,因為它是A/D轉(zhuǎn)換的結(jié)束標志;(3) 給“三態(tài)輸出鎖存器”分配一個端口地址,也就是給OE端送一個地址譯碼器的輸出信號。4.5 顯示電路 系統(tǒng)采用動態(tài)顯示方式驅(qū)動4個數(shù)碼管工作,顯示電路與單片機的P1口相連來顯示采集到的電壓值。如圖4.14所示:圖4.14 顯示電路原理圖5 軟件流程設(shè)計5.1 初始化程序系統(tǒng)上電時,外部復(fù)

54、位電路自動復(fù)位,P2口置0。5.2 主程序流程在剛上電時,系統(tǒng)默認為循環(huán)顯示8個通道的電壓值狀態(tài)。當(dāng)進行一次測量后,將顯示每一通道的A/D轉(zhuǎn)換值,每個通道的數(shù)據(jù)顯示時間為1 s左右。主程序調(diào)用顯示子程序和測試子程序之間循環(huán),主程序流程圖見圖5.1。開始初始化調(diào)用A/D轉(zhuǎn)換子程序調(diào)用顯示子程序圖5.1 主程序流程圖5.3 各個模塊子程序流程5.3.1 顯示程序流程顯示子程序采用動態(tài)掃描法實現(xiàn)四位數(shù)碼管的數(shù)值顯示。測量所得的A/D轉(zhuǎn)換數(shù)據(jù)放在70H77H內(nèi)存單元中,測量數(shù)據(jù)在顯示時需轉(zhuǎn)換成為十進制BCD碼放在78H7BH單元中,其中7BH存放通道標志數(shù)。寄存器R3用作8路循環(huán)控制,R0用作顯示數(shù)據(jù)地址指針。動態(tài)顯示子程序選擇通道顯示緩沖區(qū)首地址送R0指向右邊第一位取出要顯示的數(shù)據(jù)查等顯示數(shù)據(jù)的顯示碼送7段碼到P1口IS延時處理4位顯示完成?返回計算下一位位選碼修改顯示緩沖區(qū)地址N圖5.2 顯示子程序流程圖5.3.2 A/D轉(zhuǎn)換程序流程模/數(shù)轉(zhuǎn)換測量子程序用來控制對0809八路模擬輸入電壓的A/D轉(zhuǎn)換,并將對應(yīng)的數(shù)值移入70H77H單元內(nèi)存單元。其程序流程見圖5.3。.開始啟動測試(TESTART)A/D轉(zhuǎn)換結(jié)束?P3.7=1?取數(shù)據(jù)(P2.5=1)0809地址加1地

溫馨提示

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

評論

0/150

提交評論