![數(shù)字電壓表的設(shè)計_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d1.gif)
![數(shù)字電壓表的設(shè)計_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d2.gif)
![數(shù)字電壓表的設(shè)計_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d3.gif)
![數(shù)字電壓表的設(shè)計_第4頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d4.gif)
![數(shù)字電壓表的設(shè)計_第5頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d/9a7bab34-8bce-49bb-ad8b-f4ff70f2064d5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、摘 要數(shù)字電壓表的設(shè)計是以AT89C51單片機為中央控制單元,通過ADC0809轉(zhuǎn)換芯片與LCD1602液晶顯示器等擴展模塊,實現(xiàn)了精確測量直流電壓并通過數(shù)字的方式顯示的功能。該設(shè)計主要實現(xiàn)了直流電壓的測量,單片機通過ADC0809轉(zhuǎn)換芯片獲取需測量的電壓并轉(zhuǎn)換為數(shù)字信號,而LCD1602液晶顯示器則是將單片機處理后的電壓值在顯示屏上顯示出來,而且該電壓表還可以通過手動來調(diào)節(jié)測量電壓的量程。而軟件則通過C語言編程,將所有模塊結(jié)合在一起完成數(shù)字電壓表。經(jīng)過測試,各模塊的功能均能正常實現(xiàn),同時該電壓表還具有操作簡單,反應靈敏和測量精確等優(yōu)點。關(guān)鍵詞:單片機; 電壓表; A/D轉(zhuǎn)換器Abstract
2、 The digital voltmeter is designed with an AT89C51 single-chip as its central control unit. By use of the ADC0809 converter chip and LCD 1602 display device. we can&
3、#160;realize the function of accurate measurement of DC voltage.The design mainly realized DC voltage measurement.with the help of ADC0809,the microcontroller can obtain the voltage
4、0;that we want to measure,and then convert it to the digital signal. The function of LCD1602 is display the result of the voltage.Moreover,you can adjust this voltmeter
5、160;manually.The software is programmed by C language.All the modules are combined to realize the function of the digital voltmeter.After testing ,each module of the voltmeter
6、;is normal.Besides ,the advantages of this voltmeter can be various.Such as the simple operation ,accurate measurement,and very sensitive response.Keywords: Micro Controller Unit;voltage meter;A/D Convert
7、ers目錄摘 要IAbstractII1 緒論11.1 課題概述11.1.1 數(shù)字電壓表的發(fā)展歷程 11.1.2 國內(nèi)外的發(fā)展現(xiàn)狀與趨勢11.2 課題的意義和目的31.3 本文所作的主要工作32 數(shù)字電壓表的總體設(shè)計42.1 設(shè)計指標42.2 系統(tǒng)概述42.2.1 設(shè)計方案52.2.2 工作過程簡介52.2.3 軟件程序設(shè)計簡介52.3 小結(jié)53 數(shù)字電壓表的硬件設(shè)計73.1 A/D轉(zhuǎn)換電路73.1.1 A/D轉(zhuǎn)換芯片的選擇73.1.2 ADC0809轉(zhuǎn)換原理介紹73.1.3 ADC0809芯片介紹83.1.4 ADC0809與單片機的接口方法103.2 單片機介紹103.2.1 單片機介紹1
8、03.2.2 采用AT89C51的原因103.2.3 AT89C51芯片主要性能參數(shù)103.2.4 功能介紹113.2.5 芯片管腳介紹及分配113.3 電壓顯示器件133.3.1 1602LCD的基本參數(shù)及引腳功能143.3.2 LCD1602與AT89C51單片機之間的連接153.4 小結(jié)154 單片機最小系統(tǒng)的介紹164.1 復位電路164.1.1復位電路的用途164.1.2復位電路的工作原理164.2 晶振電路174.3 P0口的上拉電阻184.4 31腳EA/Vpp接電源185 數(shù)字電壓表的軟件設(shè)計195.1 軟件系統(tǒng)整體設(shè)計195.1.1 C51簡介195.1.2 程序流程圖195
9、.1.3 數(shù)據(jù)采集模塊的設(shè)計205.1.4 數(shù)據(jù)處理模塊的設(shè)計215.3 小結(jié)216 數(shù)字電壓表的抗干擾設(shè)計226.1 硬件系統(tǒng)的可靠性與抗干擾設(shè)計226.1.1 供電系統(tǒng)抗干擾措施226.1.2 接地226.1.3 傳輸通道的抗干擾措施236.2 軟件系統(tǒng)的可靠性與抗干擾設(shè)計236.3 小結(jié)247 電路制作及調(diào)試257.1 器件的選擇257.2 電源電路的設(shè)計257.3 換量程電路的設(shè)計257.4 焊接267.4 系統(tǒng)調(diào)試及結(jié)果分析278 結(jié) 論288.1 主要結(jié)論288.2 進一步工作及展望29參考文獻29致 謝31附錄A321 緒論1.1 課題概述1.1.1 數(shù)字電壓表的發(fā)展歷程 34數(shù)
10、字電壓表簡稱DVM,它是采用數(shù)字化測量技術(shù)設(shè)計的電壓表。從性能來看:數(shù)字電壓表的發(fā)展從一九五二年美國NLS公司由四位電子管數(shù)字電壓表精度千分之一到現(xiàn)在已經(jīng)出現(xiàn)8位數(shù)字電壓表。參數(shù)可測量直流電壓、交流電壓、電流、阻抗等。測量自動化程度不斷提高,可以和計算機配合顯示、計算結(jié)果、然后打印出來。目前世界上美國FLUKE公司,在直流和低頻交流電量的校準領(lǐng)域居國際先進水平。例如該公司生產(chǎn)的“4700A”多功能校準器和“8505”危機數(shù)字多用電壓表,可用8位顯示,直流精度可達到±5/10-6,讀書分辨力為0.1V。帶有A/D變換模式、數(shù)據(jù)輸出接口形式IEEE-488。具有比率測量軟件校準和有交流電
11、阻、電流選件。還具有高精度電壓校準器“5400A”、“5200A”、“5450A”等數(shù)字儀表,都是作為一級計量站和國家級計量站使用的標準儀表。還有英國的“7055”數(shù)字電壓表采用脈沖調(diào)制技術(shù)。日本橫河公司的“2501”型采用三次采樣等等在不斷的蓬勃發(fā)展1。從發(fā)展過程來看:數(shù)字電壓表自1952年問世以來,已有50多年的發(fā)展史,大致經(jīng)歷了五代產(chǎn)品。第一代產(chǎn)品是20世紀50年代問世的電子管數(shù)字電壓表,第二代產(chǎn)品屬于20世紀60年代出現(xiàn)的晶體管數(shù)字電壓表,第三代產(chǎn)品為20世紀70年代研制的中、小規(guī)模集成電路的數(shù)字電壓表。近年來,國內(nèi)外相繼推出有大規(guī)模集成電路(LSI)或超大規(guī)模集成電路(VLSI)構(gòu)成
12、的數(shù)字電壓表、智能數(shù)字電壓表,分別屬于第四代、第五代產(chǎn)品。它們不僅開創(chuàng)了電子測量的先河,更以高準確度、高可靠性、高分辨力、高性價比等優(yōu)良特性而受到人民的青睞2。1.1.2 國內(nèi)外的發(fā)展現(xiàn)狀與趨勢數(shù)字電壓表作為電壓表的一個分支,在近五十年間得到巨大發(fā)展,構(gòu)成數(shù)字電壓表的核心器件已從早期的中小規(guī)模電路跨入到大規(guī)模ASIC(專用集成電路)階段。數(shù)字電壓表涉及的范圍也從傳統(tǒng)的測量擴展至自動控制、傳感、通信等領(lǐng)域,展示了廣闊的應用前景。傳統(tǒng)電壓表的設(shè)計思路主要分為:用電流計和電阻構(gòu)成的電壓表;用中小規(guī)模集成電路構(gòu)成的電壓表;用大規(guī)模ASIC(專用集成電路)構(gòu)成的電壓表。這幾種電壓表設(shè)計方式各有優(yōu)勢和缺點
13、,分別適用于幾種特定的應用環(huán)境,同時,也為很多新穎的電壓表的設(shè)計所借鑒和依據(jù)2。進入21世紀,隨著信息技術(shù)一日千里的發(fā)展,電壓表也必經(jīng)歷從單一測量向數(shù)據(jù)處理、自動控制等多功能過度的這一歷程,特別是計算機技術(shù)的發(fā)展必將出現(xiàn)智能化技術(shù)。因此,把電壓表和計算機技術(shù)相結(jié)合的智能化電壓表就將成為21世紀的新課題。目前,數(shù)字化儀器與微處理器取得令人矚目的進展,就其技術(shù)背景而言,一個內(nèi)藏微處理器的儀表意味著計算機技術(shù)向儀器儀表的移植,它所具有的軟件功能使儀器 呈現(xiàn)出有某種延伸,強化的作用。這相對于過去傳統(tǒng)的、純硬件的儀器來說是一種新的突破,其發(fā)展?jié)摿κ志薮?,這已為70年代以來儀表發(fā)展的歷史所證實。概括起來
14、,具有微處理器的儀表具有以下特點:測量過程的軟件控制對測量數(shù)據(jù)進行存儲及運算的數(shù)據(jù)處理功能是儀表最突出的特點;在儀器的測量過程中綜合了軟件控制及數(shù)據(jù)處理功能,使一機多用或儀器的多功能化易于實現(xiàn),成為這類儀器的又一特點;以其軟件為主體的智能儀器不僅在使用方便、功能多樣化等方面呈現(xiàn)很大的靈活性3。下面從5個方面闡述新型數(shù)字儀表的發(fā)展趨向。(1)廣泛采用新技術(shù),不斷開發(fā)新產(chǎn)品 隨著科學技術(shù)的發(fā)展,新技術(shù)的廣泛應用,新器件的不斷出現(xiàn)。首先是A/D轉(zhuǎn)換器:20世紀90年代世界各國相繼研發(fā)了新的A/D轉(zhuǎn)換技術(shù)。例如,四斜率A/D轉(zhuǎn)換技術(shù)(美國)、余數(shù)再循環(huán)技術(shù)(美國)、自動校準技術(shù)(英國)、固態(tài)真有效值轉(zhuǎn)
15、換技術(shù)(英國)、約瑟夫森效應基準源(2個納米穩(wěn)定度)、智能化專用芯片(80C51系列,荷蘭)等,這些新技術(shù)使數(shù)字電壓表向高準確度、高可靠性及智能化、低成本方向發(fā)展。另外,集成電路的發(fā)展使電壓表只在外圍配置少量元器件,即可構(gòu)成完整的智能儀表,可以完成儲存、計算、比較、控制等多項功能4。(2)廣泛采用新工藝新一代數(shù)字儀表正朝著標準模塊化的方向發(fā)展。預計在不久的將來,更多的數(shù)字儀表將由標準化、通用化、系列化的模塊所構(gòu)成,給電路設(shè)計、安裝調(diào)試和維修帶來極大方便。(3)多從顯示儀表為徹底解決數(shù)字儀表不便于觀察連續(xù)變化量的技術(shù)難題;“數(shù)字/模擬條圖”雙顯示儀表已成為國際流行款式,它兼有數(shù)字儀表準確度高、模
16、擬式儀表便于觀察被測量的變化過程及變化趨勢這兩大優(yōu)點。(4)提高安全性儀器儀表在設(shè)計和使用中的安全性,對生產(chǎn)廠家和廣大用戶都至關(guān)重要。一方面廠家必須為儀表設(shè)計安全保護電路,并使之符合國家標準;另一方面用戶必須安全操作,時刻注意儀表上的各種安全警告指示。(5)操作簡單化集成電路的發(fā)展使電壓表只在外圍配置少量元件,即可構(gòu)成完整的智能儀表,可以完成儲存、計算、比較、控制等多項功能。這使的按鍵變少,操作簡單。但是數(shù)字電壓表并不能完全取代指針式的電壓表,在反映電壓的連續(xù)變化和變化趨勢方面不如指針表的直觀。為克服這種缺憾,20世紀90年代初,一種“數(shù)字/光柱”的雙重顯示儀表已經(jīng)出現(xiàn),并成功地應用于生產(chǎn)實踐
17、中5。綜上所述,十幾年來智能儀器雖然有了很大的發(fā)展,但總的看來,人們還是較習慣于從硬件的角度做工作,這是由于設(shè)計者的(硬件)技術(shù)背景,LSI器件不斷迅速更新的沖擊以及在現(xiàn)階段儀器硬件更新的數(shù)量還很大等因素所造成的。這種趨勢雖然仍會繼續(xù)下去,但從智能儀表的內(nèi)涵,從軟件的角度上看,軟件的作用還遠未發(fā)揮出來,這里有許多的領(lǐng)域等待著去開發(fā)。智能儀表最終必然會與人工智能聯(lián)系起來開創(chuàng)出全新的儀器。從這個觀點看,目前的智能儀器尚處于“幼年時期”。所以,就儀表的發(fā)展看來電壓表會朝著具有微控制處理單元的智能儀表方向發(fā)展。1.2 課題的意義和目的數(shù)字電壓表是諸多數(shù)字化儀表的核心與基礎(chǔ)。以數(shù)字電壓表為核心,可以擴展
18、成各種通用數(shù)字儀表、專用數(shù)字儀表及各種非電量的數(shù)字化儀表(如:溫度計,濕度計,酸度計,重量,厚度儀等),幾乎覆蓋了電子電工測量,工業(yè)測量,自動化儀表等各個領(lǐng)域。除此之外,數(shù)字電壓還有著傳統(tǒng)指針電壓表無可比擬的優(yōu)點:讀數(shù)直觀、準確,顯示范圍寬、分辨力高,轉(zhuǎn)入阻抗高,功耗小、抗干擾強等3。因此 對數(shù)字電壓表作全面深入的了解是很有必要的。但是傳統(tǒng)的數(shù)字電壓表設(shè)計通常以大規(guī)模ASIC(專用集成電路)為核心器件,并輔以少量中規(guī)模集成電路及顯示器件構(gòu)成,可是這種設(shè)計方法靈活性差,系統(tǒng)功能固定,難以更新擴展,不能滿足日益發(fā)展的電子工業(yè)要求6。而應用微處理器(單片機)為核心單元的數(shù)字電壓表,其靈活性高、系統(tǒng)功
19、能擴展簡單,性能穩(wěn)定可靠。在這些背景下,設(shè)計一種以單片機為基礎(chǔ)、結(jié)構(gòu)簡單、工作可靠、靈活性好的數(shù)字電壓表是很有意義的。1.3 本文所作的主要工作 (1)對系統(tǒng)總體框架進行分析,根據(jù)系統(tǒng)所要實現(xiàn)的目標,設(shè)計基于單片機的數(shù)字電壓表的硬件系統(tǒng),以模塊設(shè)計法為依據(jù)進行系統(tǒng)各個部分的具體設(shè)計。(2)設(shè)計基于單片機的數(shù)字控制系統(tǒng),發(fā)揮單片機的處理功能強大,運算速度快的特點,對被測電壓進行實時檢測和顯示。(3)制作印刷電路板,使硬件電路的設(shè)計更加清晰,同時使系統(tǒng)的抗干擾能力進一不加強。(4)針對系統(tǒng)的總體框架和硬件設(shè)計的特點,設(shè)計相應的軟件系統(tǒng),更合理的去完成系統(tǒng)測電壓的目的。(5)對系統(tǒng)進行整機調(diào)試,使得
20、基于單片機的數(shù)字電壓表的實驗結(jié)果盡可能的滿足設(shè)計指標。2 數(shù)字電壓表的總體設(shè)計2.1 設(shè)計指標在日常維修、教學和科研中,電壓表是不可缺少的,傳統(tǒng)的數(shù)字電壓表設(shè)計通常以大規(guī)模ASIC(專用集成電路)為核心器件,并輔以少量中規(guī)模集成電路及顯示器件構(gòu)成,但是這種設(shè)計方法靈活性差,系統(tǒng)功能固定,難以更新擴展,不能滿足日益發(fā)展的電子工業(yè)要求。而應用微處理器(單片機)為核心單元,其靈活性高、系統(tǒng)功能擴展簡單,性能穩(wěn)定可靠。本課題目的就是以單片機為基礎(chǔ)設(shè)計出一種結(jié)構(gòu)簡單、工作可靠、靈活性好的直流數(shù)字電壓表。要求多量程,誤差為±0.1V。2.2 系統(tǒng)概述本課題所設(shè)計的數(shù)字電壓表主要包括兩部分:硬件電
21、路及軟件程序。而硬件電路采用ATMEL公司的AT89C51作為主處理器,系統(tǒng)主要由信號采集、A/D轉(zhuǎn)換、數(shù)據(jù)處理輸出、驅(qū)動顯示等幾個功能模塊組成。各部分電路的設(shè)計及原理將會在硬件電路設(shè)計部分詳細介紹;程序的設(shè)計使用C語言編程,利用Keil 軟件對其編譯和仿真,詳細的設(shè)計算法將會在程序設(shè)計部分詳細介紹。系統(tǒng)框圖(圖2.1)如下:A/D轉(zhuǎn)換單元數(shù)據(jù)處理單元顯示單元 被測電壓 圖2.1 硬件原理框圖被測直流電壓由A/D轉(zhuǎn)換單元采集后被量化,再由單片機對A/D轉(zhuǎn)換的結(jié)果進行標度變換,得到被測電壓的數(shù)值,通過單片機對數(shù)次轉(zhuǎn)換結(jié)果求平均值,由單片機完成譯碼,并用液晶顯示器顯示。2.2.1 設(shè)計方案方案一:
22、使用STC89C51單片機,將A/D轉(zhuǎn)換單元和數(shù)據(jù)處理單元糅合在單片機中,通過編程來實現(xiàn)A/D轉(zhuǎn)換,數(shù)據(jù)顯示單元使用數(shù)碼管顯示電壓值;方案二:使用ADC0809芯片對直流電壓進行A/D轉(zhuǎn)換,然后用AT89C51單片機對轉(zhuǎn)換后的數(shù)據(jù)進行處理,再將處理完成的數(shù)據(jù)通過LCD1602液晶顯示器顯示。而方案一雖然需要的材料比較少,但太過簡單,無法起到良好的學習作用,而且數(shù)碼管顯示太過簡單,不能顯示量程的切換,方案二有很多的學習空間,多了一個ADC0809需要考慮的東西變多,考驗我的能力,而且使用液晶顯示器能夠更清楚明白的顯示出量程和數(shù)值。2.2.2 工作過程簡介電壓表的數(shù)字化是將連續(xù)模擬的電壓量經(jīng)A/D
23、轉(zhuǎn)化后變?yōu)椴贿B續(xù)的離散的數(shù)字量并加以顯示7。在設(shè)計過程中采用分模塊設(shè)計,按照圖2.1把電路分A/D轉(zhuǎn)換、數(shù)據(jù)處理輸出、顯示三個個單元,分別設(shè)計。A/D轉(zhuǎn)換器選用的是八位模/數(shù)轉(zhuǎn)換器ADC0809。其次,計算機中的數(shù)字都是十六進制數(shù),而我們習慣于十進制數(shù)的讀寫,因此,在軟件設(shè)計中則要把十六進制數(shù)轉(zhuǎn)換成十進制數(shù)。在顯示的時候也是如此。本裝置的輸出用LCD1602顯示,因此在軟件設(shè)計中還要解決數(shù)字輸出與LCD1602的接口問題。硬件則需要將輸出線接到LCD1602上8。ADC0809通過IN0、IN1、IN2采集電壓信號并送給單片機,單片機將采集來的信號進行一定的處理然后通過LCD1602顯示采集的
24、電壓值。2.2.3 軟件程序設(shè)計簡介開機后首先初始化,使LCD1602顯示為“0.00”然后調(diào)用A/D轉(zhuǎn)換子程序啟動A/D轉(zhuǎn)換器,單片機等待查詢轉(zhuǎn)換結(jié)束信號,如果有信號則通過并行口讀取轉(zhuǎn)換數(shù)據(jù)后進行標度變化之后并存儲,就這樣連著讀取五次數(shù)據(jù)后選取中間的三次并求平均值,經(jīng)譯碼在LCD1602液晶顯示器上顯示。而量程的切換則通過手動切換,具體方法和程序見程序設(shè)計部分和附錄A。2.3 小結(jié) 在電路設(shè)計和軟件設(shè)計中都采用了分模塊設(shè)計,這種設(shè)計方法清晰的電路的功能,為設(shè)計和以后的調(diào)試和維修帶來了極大的方便。特別是在軟件設(shè)計中,這中方法曾強了程序的可移植性,為以后的功能擴展奠定了基礎(chǔ)。3 數(shù)字電壓表的硬件
25、設(shè)計3.1 A/D轉(zhuǎn)換電路3.1.1 A/D轉(zhuǎn)換芯片的選擇A/D轉(zhuǎn)換器是模擬量輸入通道中的一個環(huán)節(jié),單片機通過A/D轉(zhuǎn)換器把輸入模擬量變成數(shù)字量再處理。隨著大規(guī)模集成電路的發(fā)展,目前不同廠家已經(jīng)生產(chǎn)出了多種型號的A/D轉(zhuǎn)換器,以滿足不同應用場合的需要。如果按照轉(zhuǎn)換原理劃分,主要有3種類型,即雙積分式A/D轉(zhuǎn)換器、逐次逼近式A/D轉(zhuǎn)換器和并行式A/D轉(zhuǎn)換器。目前最常用的是雙積分和逐次逼近式。雙積分式A/D轉(zhuǎn)換器具有抗干擾能力強、轉(zhuǎn)換精度高、價格便宜等優(yōu)點,比如ICL71XX系列等,它們通常帶有自動較零、七段碼輸出等功能。與雙積分相比,逐次逼近式A/D轉(zhuǎn)換的轉(zhuǎn)換速度更快,而且精度更高,比如ADC0
26、808、ADC0809等,它們通常具有8路模擬選通開關(guān)及地址譯碼、鎖存電路等,它們可以與單片機系統(tǒng)連接,將數(shù)字量送單片機進行分析和顯示。本設(shè)計中,要求精度小于0.5%,則選用分辨率為8位的芯片,如ADC0809,ADC0801,ADC0808就能滿足設(shè)計要求。本電路采用ADC0809。3.1.2 ADC0809轉(zhuǎn)換原理介紹ADC是一種基本的外圍擴展器件,其種類很多,工作原理也不僅相同,比較有代表性的是:單積分型,雙積分型,脈寬調(diào)制型和逐次比較型(逐次逼近型)。從產(chǎn)品性價比、轉(zhuǎn)換速度和精度等方面綜合分析,逐次比較型ADC是相對應用比較廣的類型之一。所以有著廣泛的應用。逐次逼近型ADC實際采用的方
27、法上從高到底開始逐位設(shè)定,比較模擬量輸出,再來確定原設(shè)定位的正確與否。逐次比較型ADC原理結(jié)構(gòu)如圖3.1所示。其主要由采集保持電路、電壓比較器、逐次比較寄存器、數(shù)/模轉(zhuǎn)換器ADC和鎖存器等部分組成。GOCPADIF=1被測電壓Ui逐次比較寄存器+ _Us寄存器模/數(shù)轉(zhuǎn)換數(shù)字量輸出圖3.1 逐次比較型ADC結(jié)構(gòu)其工作原理如下:首先,被測模擬電壓Ui通過逐次比較寄存器,將傳遞進的脈沖CP信號轉(zhuǎn)換成數(shù)字信號,該數(shù)字量再經(jīng)過數(shù)/模轉(zhuǎn)換器生成對應的模擬量Us。當獲得模擬量Us的數(shù)值達到并接近被測電壓所對應Ui后,就可以檢測出電壓比較器完成最后的反轉(zhuǎn)。此時,逐次比較寄存器的計數(shù)值就是被測電壓Ui所對應的數(shù)
28、字量,從而完成模擬量的轉(zhuǎn)換。以上的分析表明,逐次比較的模/數(shù)轉(zhuǎn)換方法,歸根到底是數(shù)/模轉(zhuǎn)換,采用逐次與模擬量進行比較后得到最終的數(shù)字標定值。3.1.3 ADC0809芯片介紹ADC0809是一種8位逐次逼近型A/D轉(zhuǎn)換器。帶8個模擬量輸入通道,芯片內(nèi)有通道地址譯碼鎖存器,有輸出三態(tài)數(shù)據(jù)鎖存器,啟動信號為脈沖啟動方式,每個通道的轉(zhuǎn)換時間大約為100s,可以和單片機直接接口。ADC0809的引腳圖如圖3.2所示。圖 3.2 ADC0809引腳圖由圖3.3可知,ADC0809由一個8路模擬開關(guān),一個地址鎖存與譯碼器、一個8位A/D轉(zhuǎn)換器和一個三態(tài)輸出鎖存器組成。多路開關(guān)可選通8個模擬通道IN0IN7
29、,允許8路模擬分量輸入,共用A/D轉(zhuǎn)換器 進行轉(zhuǎn)換。三態(tài)輸出鎖存器用于鎖存A/D轉(zhuǎn)換完的數(shù)字量,當OE端為高電平時,才可以從三態(tài)輸出鎖存器取走轉(zhuǎn)換完的數(shù)據(jù)。IN0IN7:8條模擬量輸入通道。ADC0809對輸入模擬量的要求是信號單極性,電壓范圍是05V,若信號太小,必須進行放大;輸入的模擬量在轉(zhuǎn)換過程中應保持不變,如若模擬信號變化太快,則需在輸入前增加采樣保持電路。地址輸入和控制線:4條,ALE為地址鎖存允許輸入線,高電平有效。當ALE線為高電平時,地址鎖存與譯碼器將A,B,C三條地址線的地址信號進行鎖存,經(jīng)譯碼后被選中的通道的模擬量進轉(zhuǎn)化器進行轉(zhuǎn)換。A,B,C為地址輸入線,用于選通IN0IN
30、7上的一路模擬量輸入。通道選擇如表3.1所示。表3.1 地址通道對應表地址編碼被選通道ABC000IN0001IN2010IN2011IN3100IN4101IN5110IN6111IN7 數(shù)字量輸出及控制線: 11條。START為上跳沿時,所有內(nèi)部寄存器清零;下跳沿時,開始進行A/D轉(zhuǎn)換:在轉(zhuǎn)換期間,START應保持底電平。EOC為轉(zhuǎn)換結(jié)束信號。當EOC為高電平時,表明轉(zhuǎn)換結(jié)束,否則,表明正在進行A/D轉(zhuǎn)換。OE為輸出允許信號,用于控制三條輸出鎖存器向單片機輸出轉(zhuǎn)換得到的數(shù)據(jù)。OE=1,輸出轉(zhuǎn)換得到的數(shù)據(jù)。OE=0,輸出數(shù)據(jù)線呈高阻狀態(tài)。D7D0為數(shù)字量輸出線。CLK為時鐘輸入信號線。由于A
31、DC0809的內(nèi)部沒有時鐘電路,所需時鐘信號必須由外界提供,通常使用頻率為500KHz,最大不能超過1280KHz。VREF(+),VREF(-)為參考電壓輸入,決定了輸入模擬量的范圍。一般情況VREF(-)接地,VREF(+)接+5V電源。3.1.4 ADC0809與單片機的接口方法 ADC0809的D0-D7口與單片機的P1口相連,將轉(zhuǎn)換過的數(shù)字量輸入到單片機中,而A、B、C端口接入P3口,通過單片機查詢后控制ADC0809芯片的接入口,對應的IN0、IN2、IN5。而且通過查詢法判斷A/D轉(zhuǎn)換是否完成。ADC0809的頻率則是由單片機給予。3.2 單片機介紹3.2.1 單片機介紹單片微型
32、計算機簡稱單片機,又稱微型控制或嵌入式控制器,是將計算機的基本部件微型化,使之集成在一塊芯片上的微機。單片機有著體積小,功耗低,功能強,性能價格比高、易于推廣應用等顯著優(yōu)點,在自動化裝置、智能化儀器儀表、過程控制和家用電器等領(lǐng)域得到日益廣泛的應用。3.2.2 采用AT89C51的原因在眾多的51系列單片機中,要算 ATMEL 公司的AT89C51更實用,它是由北京集成電路設(shè)計中心在MSC-51單片機的基礎(chǔ)上精心設(shè)計,由美國生產(chǎn)的至今為止世界上最新型的高性能八位單片機。它不但和8051指令、管腳完全兼容,而且其片內(nèi)的4K程序存儲器是FLASH工藝的,這種工藝的存儲器用戶可以用電的方式瞬間擦除、改
33、寫,一般專為 ATMEL AT89Cx 做的編程器均帶有這些功能。顯而易見,這種單片機對開發(fā)設(shè)備的要求很低,開發(fā)時間也大大縮短。3.2.3 AT89C51芯片主要性能參數(shù)(1)與MCS51產(chǎn)品指令系統(tǒng)完全兼容 (2)4K字節(jié)的可重擦寫Flash閃速存儲器(3)1000次擦寫周期(4)全靜態(tài)操作:0Hz24Hz(5)三級加密程序存儲器(6)128×8字節(jié)內(nèi)部RAM(7)32個可編程I/O口線(8)2個16位定時/記數(shù)器(9)6個中斷源(10)可編程串行UART通道(11)底功耗空閑和掉電模式 3.2.4 功能介紹AT89C51是一種低損耗、高性能、CMOS八位微處理器,片內(nèi)有4K字節(jié)的
34、在線可重復編程快擦快寫存儲器,能重復寫入/擦除1000次,數(shù)據(jù)保存時間為十年。它與MCS-51系列單片機在指令系統(tǒng)和引腳上完全兼容,不僅可完全代替MCS-51系列單片機,而且能使系統(tǒng)具有許多MCS-51單片機,而且能使系統(tǒng)具有許多MCS-51系列產(chǎn)品沒有的功能。AT89C51可構(gòu)成真正的單片機最小應用系統(tǒng),縮小系統(tǒng)體積,增加系統(tǒng)的可靠性,降低了系統(tǒng)成本。只要程序長度小于4K,四個I/O口全部提供給用戶??捎?V電壓編程,而且擦寫時間僅需10毫秒,僅為8751/87C51的擦除時間的百分之一,與8751/87C51的12V電壓擦寫相比,不易損壞器件,沒有兩種電源的要求,改寫時不拔下芯片,適合許多
35、嵌入式控制領(lǐng)域。工作電壓范圍寬2.7V-6V,全靜態(tài)工作,工作頻率寬,在0M Hz-24M Hz內(nèi),比8751/87C51等51系列的6MHz-12 MHz更具有靈活性,系統(tǒng)能快能慢。AT89C51芯片提供三級程序存儲器加密,提供了方便靈活而可靠的硬加密手段,能完全保證程序或系統(tǒng)不被仿制。另外,AT89C51還具有MCS-51系列單片機的所有優(yōu)點。128×8位內(nèi)部RAM,32位雙向輸入輸出線,兩個十六位定時/計數(shù)器,5個中斷源,兩級中斷優(yōu)先級,一個全雙工異步串行口及時鐘發(fā)生器等。3.2.5 芯片管腳介紹及分配VCC:電源GND:電源地P0口:P0口是一組8位漏極開路雙向I/O口,也既
36、地址/數(shù)據(jù)總線復用口。作為輸出口用時,每位能吸收電流的方式驅(qū)動8個TTL邏輯門電路,對端口寫“1”可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉(zhuǎn)換地址(底8位)和數(shù)據(jù)總線服用,在訪問期間激活內(nèi)部上拉電阻。在Flash編程時,P0口接受指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。P1口:P1口是一個帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口 寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可操作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉底時會輸出一個電流(IIL)
37、。Flash編程和程序校驗期間,P1接收底8位地址。P2口:P2口是一個帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對斷口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉底時會輸出一個電流(IIL)。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVE DPTR)時,P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行MOVE RI指令)時,P2口線上的內(nèi)容也即特殊功能存儲器(SFR)區(qū)中R2寄存器的內(nèi)容,在整個訪問期間不改變。在Flash編程
38、或校驗時,P2亦接收高位地址和其他控制信號。P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對P3口寫入“1”時,它們被內(nèi)部上拉電阻拉高并可作為輸入端口。作輸入端時,被外部拉底的P3口將用上拉電阻輸出電流(IIL)。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能,如下表3.2所示:表 3.2 P3口第二功能表端口引腳第二功能 P3.0RXD(串行輸入口) P3.1TXD(串行輸出口) P3.2INT0(外部中斷0) P3.3INT1(外部中斷1) P3.4T0(定時/記數(shù)器0) P3.5T1(定時/記數(shù)器1)
39、P3.6WR(外部數(shù)據(jù)存儲器寫選通) P3.7RD(外部數(shù)據(jù)存儲器讀選通)P3口還接受一些用于Flash閃速存儲器編程和程序校驗的控制信號。RST:復位輸入。當振蕩器工作時,RET引腳出現(xiàn)兩個機器周期以上高電平將使單片機復位。ALE/PROG:當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的底8位字節(jié)。即使不訪問外部存儲器,ALE仍以時鐘振蕩頻率的1/6輸出固定的正脈沖信號,因此它可對外部輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。對Flash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄
40、存器(SFR)區(qū)中的8EH的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVE和MOVX指令ALE才會被激活,此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設(shè)置ALE無效。PSEN:程序存貯允許(PSEN)輸出是外部程序存儲器的讀選通信號,當AT89C51由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,既輸出兩個脈沖。在此期間,當訪問外部數(shù)據(jù)存儲器,這兩次有效的PSEN信號不出現(xiàn)。EA/VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000HFFFFH),EA端必須保持底電平(接地)。需注意的是:如果加密位LB1被編程,復位時內(nèi)部會鎖存EA端狀態(tài)。如
41、EA端為高電平(接VCC端),CPU則執(zhí)行內(nèi)部程序存儲器中的指令。Flash存儲器編程時,該腳加上+12V的編程允許電源VCC,當然這必須是該器件是使用12V編程電壓VPP。XTAL1:振蕩器反相放大器的及內(nèi)部時鐘發(fā)生器的輸入端。XTAL2:振蕩器反相放大器的輸出端。3.3 電壓顯示器件在日常生活中,我們對液晶顯示器并不陌生。液晶顯示模塊已作為很多電子產(chǎn)品的通用器件,如在計算器、萬用表、電子表及很多家用電子產(chǎn)品中都可以看到,顯示的主要是數(shù)字、專用符號和圖形。在單片機的人機交流界面中,一般的輸出方式有以下幾種:發(fā)光管、LED數(shù)碼管、液晶顯示器。發(fā)光管和LED數(shù)碼管比較常用,軟硬件都比較簡單,不如
42、液晶顯示器美觀,且比較清楚明白,而LCD1602是其中比較有代表性的器件,所以我使用LCD1602。 在單片機系統(tǒng)中應用晶液顯示器作為輸出器件有以下幾個優(yōu)點:(1)顯示質(zhì)量高由于液晶顯示器每一個點在收到信號后就一直保持那種色彩和亮度,恒定發(fā)光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新新亮點。因此,液晶顯示器畫質(zhì)高且不會閃爍。(2)數(shù)字式接口液晶顯示器都是數(shù)字式的,和單片機系統(tǒng)的接口更加簡單可靠,操作更加方便。(3)體積小、重量輕液晶顯示器通過顯示屏上的電極控制液晶分子狀態(tài)來達到顯示的目的,在重量上比相同顯示面積的傳統(tǒng)顯示器要輕得多。(4)功耗低相對而言,液晶顯示器的功耗主要消耗在其內(nèi)部
43、的電極和驅(qū)動IC上,因而耗電量比其它顯示器要少得多。3.3.1 1602LCD的基本參數(shù)及引腳功能1602LCD分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的厚,是否帶背光在應用中并無差別。(1)1602LCD主要技術(shù)參數(shù):顯示容量:16×2個字符芯片工作電壓:4.55.5V工作電流:2.0mA(5.0V)模塊最佳工作電壓:5.0V字符尺寸:2.95×4.35(W×H)mm(2)引腳功能說明1602LCD采用標準的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表3.3所示:表3.3 引腳接口說明表編號符號引腳說明編號符號引
44、腳說明1VSS電源地9D2數(shù)據(jù)2VDD電源正極10D3數(shù)據(jù)3VL液晶顯示偏壓11D4數(shù)據(jù)4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)5R/W讀/寫選擇13D6數(shù)據(jù)6E使能信號14D7數(shù)據(jù)7D0數(shù)據(jù)15BLA背光源正極8D1數(shù)據(jù)16BLK背光源負極 第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。第5腳:R/W為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當RS和R/W共同為
45、低電平時可以寫入指令或者顯示地址,當RS為低電平R/W為高電平時可以讀忙信號,當RS為高電平R/W為低電平時可以寫入數(shù)據(jù)。第6腳:E端為使能端,當E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負極。3.3.2 LCD1602與AT89C51單片機之間的連接 圖3.4 LCD1602與51單片機之間的連接圖其中D0-D7輸入端接單片機的P0輸出端,接收數(shù)據(jù),V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,一般使用時可以通過一個10K的電位器調(diào)整對比度。而我直接在上下接一個
46、10K電阻與1K電阻,確定了對比度。RS與RW則接收來自單片機的操作命令,顯示相應的字符。3.4 小結(jié)在滿足設(shè)計要求的前提下,為保證電路造價和維修的方便,在設(shè)計中我盡可能的用電路制作中的常用元件。另外除了上述器件外,其他的元件如電阻,電容的選擇都是由一些典型電路經(jīng)測試調(diào)節(jié)確定的。所以電路顯得更于理解和分析,這一點給也將給最后的調(diào)試帶來很大的方便。4 單片機最小系統(tǒng)的介紹單片機最小系統(tǒng),或者稱為最小應用系統(tǒng),是指用最少的元件組成的單片機可以工作的系統(tǒng)。對51系列單片機來說,最小系統(tǒng)一般應該包括:單片機、晶振電路、復位電路。下面給出一個51單片機的最小系統(tǒng)電路圖。圖4.1 51單片機的最小系統(tǒng)電路
47、圖4.1 復位電路4.1.1復位電路的用途 單片機復位電路就好比電腦的重啟部分,當電腦在使用中出現(xiàn)死機,按下重啟按鈕電腦內(nèi)部的程序從頭開始執(zhí)行。單片機也一樣,當單片機系統(tǒng)在運行中,受到環(huán)境干擾出現(xiàn)程序跑飛的時候,按下復位按鈕內(nèi)部的程序自動從頭開始執(zhí)行。 4.1.2復位電路的工作原理51單片機要復位只需要在第9引腳接個高電平持續(xù)2s就可以實現(xiàn),那這個過程是如何實現(xiàn)的呢?在單片機系統(tǒng)中,系統(tǒng)上電啟動的時候復位一次,當按鍵按下的時候系統(tǒng)再次復位,如果釋放后再按下,系統(tǒng)還會復位。所以可以通過按鍵的斷開和閉合在運行的系統(tǒng)中控制其復位。開機的時候為什么會復位:在電路圖中,電容的的大小是10F,電阻的大小是
48、10K。所以根據(jù)公式,可以算出電容充電到電源電壓的0.7倍(單片機的電源是5V,所以充電到0.7倍即為3.5V),需要的時間是10K*10F=0.1s。也就是說在單片機啟動的0.1s內(nèi),電容兩端的電壓時在03.5V增加。這個時候10K電阻兩端的電壓為從51.5V減少(串聯(lián)電路各處電壓之和為總電壓)。所以在0.1s內(nèi),RST引腳所接收到的電壓是5V1.5V。在5V正常工作的51單片機中小于1.5V的電壓信號為低電平信號,而大于1.5V的電壓信號為高電平信號。所以在開機0.1s內(nèi),單片機系統(tǒng)自動復位(RST引腳接收到的高電平信號時間為0.1s左右)。按鍵按下的時候為什么會復位:在單片機啟動0.1s
49、后,電容C兩端的電壓持續(xù)充電為5V,這是時候10K電阻兩端的電壓接近于0V,RST處于低電平所以系統(tǒng)正常工作。當按鍵按下的時候,開關(guān)導通,這個時候電容兩端形成了一個回路,電容被短路,所以在按鍵按下的這個過程中,電容開始釋放之前充的電量。隨著時間的推移,電容的電壓在0.1s內(nèi),從5V釋放到變?yōu)榱?.5V,甚至更小。根據(jù)串聯(lián)電路電壓為各處之和,這個時候10K電阻兩端的電壓為3.5V,甚至更大,所以RST引腳又接收到高電平。單片機系統(tǒng)自動復位。4.2 晶振電路晶振是晶體振蕩器的簡稱,在電氣上它可以等效成一個電容和一個電阻并聯(lián)再串聯(lián)一個電容的二端網(wǎng)絡(luò)。電工學上這個網(wǎng)絡(luò)有兩個諧振點,以頻率的高低分其中較
50、低的頻率是串聯(lián)諧振,較高的頻率是并聯(lián)諧振。由于晶體自身的特性致使這兩個頻率的距離相當?shù)慕咏?,在這個極窄的頻率范圍內(nèi),晶振等效為一個電感 所以只要晶振的兩端并聯(lián)上合適的電容它就會組成并聯(lián)諧振電路,這個并聯(lián)諧振電路加到一個負反饋電路中就可以構(gòu)成正弦波振蕩電路。由于晶振等效為電感的頻率范圍很窄,所以即使其他元件的參數(shù)變化很大,這個振蕩器的頻率也不會有很大的變化。晶振有一個重要的參數(shù),那就是負載電容值,選擇與負載電容值相等的并聯(lián)電容,就可以得到晶振標稱的諧振頻率。一般的晶振振蕩電路都是在一個反相放大器(注意是放大器不是反相器)的兩端接入晶振,再有兩個電容分別接到晶振的兩端,每個電容的另一端再接到地 這
51、兩個電容串聯(lián)的容量值就應該等于負載電容,需注意一般IC的引腳都有等效輸入電容。一般的晶振的負載電容為15pF或12.5pF,如果再考慮元件引腳的等效輸入電容,則兩個22pF的電容構(gòu)成晶振的振蕩電路就是比較好的選擇 。如圖4.1,晶振是給單片機提供工作信號脈沖的,這個脈沖就是單片機的工作速度,比如12MHz晶振,單片機工作速度就是每秒12M。當然,單片機的工作頻率是有范圍的,不能太大,一般24M就不上去了,不然不穩(wěn)定。晶振與單片機的腳XTAL0和腳XTAL1構(gòu)成的振蕩電路中會產(chǎn)生偕波(也就是不希望存在的其他頻率的波),這個波對電路的影響不大,但會降低電路的時鐘振蕩器的穩(wěn)定性。為了電路的
52、穩(wěn)定性起見,ATMEL公司只是建議在晶振的兩引腳處接入兩個10pF-50pF的瓷片電容接地來削減偕波對電路的穩(wěn)定性的影響,所以晶振所配的電容在10pF-50pF之間都可以的。4.3 P0口的上拉電阻P0口作為I/O口輸出的時候時,輸出低電平為0 輸出高電平為高組態(tài)(并非5V,相當于懸空狀態(tài))。也就是說P0 口不能真正的輸出高電平,給所接的負載提供電流,因此必須接上拉電阻(一電阻連接到VCC),由電源通過這個上拉電阻給負載提供電流。 由于P0口內(nèi)部沒有上拉電阻,是開漏的,不管它的驅(qū)動能力多大,相當于它是沒有電源的,需要外部的電路提供,絕大多數(shù)情況下P0口是必需加上拉
53、電阻的。 (1)一般51單片機的P0口在作為地址/數(shù)據(jù)復用時不接上拉電阻。 (2)作為一般的I/O口時用時,由于內(nèi)部沒有上拉電阻,故要接上上拉電阻。 (3)當P0口用來驅(qū)動PNP管子的時候,就不需要上拉電阻,因為此時的低電平有效;(4)當P0口用來驅(qū)動NPN管子的時候,就需要上拉電阻的,因為此時只有當P0為1時候,才能夠使后級端導通。4.4 31腳EA/Vpp接電源STC89C51/52或其他51系列兼容單片機特別注意:對于31腳(EA/Vpp),當接高電平時,單片機在復位后從內(nèi)部ROM的0000H開始執(zhí)行,當接低電平時,復位后直接從外部ROM的000
54、0H開始執(zhí)行。5 數(shù)字電壓表的軟件設(shè)計5.1 軟件系統(tǒng)整體設(shè)計系統(tǒng)的軟件流程如下:開始時首先初始化1602LCD,使數(shù)碼管顯示為“0.000”,然后調(diào)用A/D轉(zhuǎn)換子程序啟動ADC0809。單片機等待查詢轉(zhuǎn)換結(jié)束信號,如果有信號則通過并行口讀取轉(zhuǎn)換數(shù)據(jù)并存儲,就這樣連著讀取五次數(shù)據(jù)后求平均值。再將所求得的結(jié)果進行運算Dout100/51,將運算后的結(jié)果除以10得到千分位,再把商除以10得到百分位,再除以10又分別得到十分位和個位,最后把個位,十分位,百分位和千分位經(jīng)譯碼后送至LCD1602液晶顯示器顯示,此時LCD1602液晶顯示器顯示的就是ADC0809采集的電壓值。5.1.1 C51簡介C語
55、言是今年來在國內(nèi)外得到迅速推廣應用的一種計算機語言。C語言功能豐富,表達力強,使用靈活方便,應用面廣,目標程序效率高,可移植性好,既具有高級語言的優(yōu)點,又有低級語言的許多特點。因此,C語言特別適合于編寫系統(tǒng)軟件。C語言誕生后,許多原來用匯編語言編寫的軟件,現(xiàn)在可以用C語言編寫了,而學習和使用C語言要比學習和使用匯編語言容易得多。51 的編程語言常用的有二種,一種是匯編語言,一種是C 語言。匯編語言的機器代碼生成效率很高但可讀性卻并不強,復雜一點的程序就更是難讀懂,而C 語言在大多數(shù)情況下其機器代碼生成效率和匯編語言相當,但可讀性和可移植性卻遠遠超過匯編語言,而且C 語言還可以嵌入?yún)R編來解決高時
56、效性的代碼編寫問題。對于開發(fā)周期來說,中大型的軟件編寫用C 語言的開發(fā)周期通常要小于匯編語言很多。Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到Keil C51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。設(shè)計步驟:(1)建立一個新的項目;(2)選擇所用單片機;(3)在新建立的項目中加入程序;(4)保存運行;(5)編譯是否通過。5.1.2 程序流程圖系統(tǒng)軟件的總體框架如圖5.1所示
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代通信技術(shù)在智慧農(nóng)場建設(shè)中的應用研究
- 人教版九年級數(shù)學上冊22.1.4《二次函數(shù)y=a(x-h)2+k的圖象和性質(zhì)》聽評課記錄
- 湘教版數(shù)學八年級上冊5.2《二次根式的除法》聽評課記錄2
- 人教部編版歷史八年級下冊:第5課《三大改造》聽課評課記錄
- 電商平臺中消費者隱私權(quán)保護的國際比較研究
- 構(gòu)建以生態(tài)文明教育為導的教育模式研究
- 2025年度海外市場銷售代理傭金支付合同
- 2025年度航空航天零部件采購及售后服務合同
- 現(xiàn)代科技在水環(huán)境治理中的應用與展望
- 現(xiàn)代小區(qū)消防安全管理體系的智能化技術(shù)應用
- 社區(qū)獲得性肺炎教學查房
- 病例展示(皮膚科)
- GB/T 39750-2021光伏發(fā)電系統(tǒng)直流電弧保護技術(shù)要求
- DB31T 685-2019 養(yǎng)老機構(gòu)設(shè)施與服務要求
- 燕子山風電場項目安全預評價報告
- 高一英語課本必修1各單元重點短語
- 糖尿病運動指導課件
- 完整版金屬學與熱處理課件
- T∕CSTM 00640-2022 烤爐用耐高溫粉末涂料
- 心腦血管病的危害教學課件
- 民用機場不停航施工安全管理措施
評論
0/150
提交評論