版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 編號 </p><p><b> 畢業(yè)論文</b></p><p><b> 二〇一二年十月</b></p><p> 題 目基于單片機的數(shù)字電壓表的設計</p><p><b> 摘要</b></p><p&
2、gt; 本文介紹了一種基于單片機的簡易數(shù)字電壓表的設計。該設計主要由三個模塊組成:A/D轉換模塊,數(shù)據(jù)處理模塊及顯示模塊。A/D轉換主要由芯片ADC0809來完成,它負責把采集到的模擬量轉換為相應的數(shù)字量在傳送到數(shù)據(jù)處理模塊。數(shù)據(jù)處理則由芯片AT89C51來完成,其負責把ADC0809傳送來的數(shù)字量經過一定的數(shù)據(jù)處理,產生相應的顯示碼送到顯示模塊進行顯示;此外,它還控制著ADC0809芯片工作。</p><p>
3、; 該系統(tǒng)的數(shù)字電壓表電路簡單,所用的元件較少,成本低,且測量精度和可靠性較高。此數(shù)字電壓表可以測量0-5V的1路模擬直流輸入電壓值,并通過一個四位一體的7段數(shù)碼管顯示出來。 </p><p> 關鍵詞:【單片機】 【數(shù)字電壓表】 【A/D轉換】 【AT89C51】 【ADC0809】</p>
4、;<p><b> 目 錄</b></p><p><b> 第一章 緒論3</b></p><p> 第二章 設計背景4</p><p><b> 2.1單片機4</b></p><p> 2.1.1單片機的簡介4</p>
5、<p> 2.1.2單片機的應用領域4</p><p> 2.2數(shù)字電壓表6</p><p> 2.2.1數(shù)字電壓表的特點6</p><p> 第三章 設計目的與功能要求7</p><p><b> 3.1設計目的7</b></p><p><b> 3.
6、2功能要求7</b></p><p> 第四章 總體設計8</p><p><b> 4.1系統(tǒng)設計8</b></p><p><b> 4.2設計方案8</b></p><p> 4.3總體設計框圖9</p><p> 第五章 設計原理圖9
7、</p><p> 5.1設計原理圖10</p><p> 第六章 硬件電路設計11</p><p> 6.1 信號調理模塊11</p><p> 6.1.1電壓極性檢測電路11</p><p> 6.1.2電壓范圍粗測電路11</p><p> 6.1.3量程切換電路1
8、1</p><p> 6.2單片機模塊12</p><p> 6.2.1芯片的介紹和選擇12</p><p> 6.3 A/D轉換模塊16</p><p> 6.3.1芯片的介紹和選擇16</p><p> 6.3.2原理圖18</p><p> 6.4顯示模塊18<
9、;/p><p> 6.4.1 LED數(shù)碼管18</p><p> 6.4.2 LED數(shù)碼管與單片機接口設計20</p><p> 第七章 總體電路設計22</p><p> 7.1總體電路設計22</p><p> 第八章 軟件設計23</p><p> 8.1匯編流程圖23
10、</p><p> 8.2匯編程序24</p><p> 8.3程序說明26</p><p><b> 第九章 總結27</b></p><p><b> 參考文獻28</b></p><p><b> 第一章 緒論</b></p
11、><p> 電子電壓表主要用于測量各種高、低頻信號電壓,它是電子測量中使用最廣泛的儀器之一。根據(jù)測量結果的顯示方式及測量原理不同,電壓測量儀器可分為兩大類:模擬式電壓表(AVM)和數(shù)字式電壓表(DVM)。模擬式電壓表是指針式的,多用磁電式電流表作為指示器,并在表盤上刻以電壓刻度。數(shù)字式電壓表首先將模擬量經模數(shù)(A/D)轉換器變成數(shù)字量,然后用電子計數(shù)器計數(shù),并以十進制數(shù)字顯示被測電壓值。</p>&l
12、t;p> 眾所周知,模擬電壓表精度較高,曾經有很廣闊的市場,現(xiàn)在依然有不少工程師依然在使用模擬電壓表。的確模擬電壓表在顯示測量值方面精度校準,然而卻也存在問題。模擬電壓表采用用指針式,里面是磁電或電磁式結構,所以其響應速度較慢。</p><p> 然而在高速發(fā)展的當今社會,高速信號處理的需求越來越多,由于模擬電壓表響應速度較慢已經不適用與高速信號領域,取而代之的將是數(shù)字電壓表。但數(shù)字電壓表由于存在采樣誤
13、差,精度不是很高。不過目前可以通過技術手段來縮小誤差。使其精度達到與模擬電壓表一樣精確甚至更高??梢妼頂?shù)字電壓表必將取代模擬電壓表?,F(xiàn)在有越來越多的數(shù)字測量儀器的出現(xiàn)但原理皆與數(shù)字電壓表殊途同歸,因此研究數(shù)字電壓表有著很大現(xiàn)實意義。</p><p><b> 第二章 設計背景</b></p><p><b> 2.1單片機</b></
14、p><p> 2.1.1單片機的簡介</p><p> 單片微型計算機簡稱單片機,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的縮寫MCU表示單片機,單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng)集成到一個芯片上。相當于一個微型的計算機,和計算機相比,單片機只缺少了I/O設備。概括的講:一塊芯片就成了一臺計算機。它的體積小、
15、質量輕、價格便宜、為學習、應用和開發(fā)提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。它最早是被用在工業(yè)控制領域。</p><p> 由于單片機在工業(yè)控制領域的廣泛應用,單片機由芯片內僅有CPU的專用處理器發(fā)展而來。最早的設計理念是通過將大量外圍設備和CPU集成在一個芯片中,使計算機系統(tǒng)更小,更容易集成進復雜的而對體積要求嚴格的控制設備當中。</p><p> IN
16、TEL的Z80是最早按照這種思想設計出的處理器,當時的單片機都是8位或4位的。其中最成功的是INTEL的8031,此后在8031上發(fā)展出了MCS51系列單片機系統(tǒng)。因為簡單可靠而性能不錯獲得了很大的好評。盡管2000年以后ARM已經發(fā)展出了32位的主頻超過300M的高端單片機,直到目前基于8031的單片機還在廣泛的使用。在很多方面單片機比專用處理器更適合應用于嵌入式系統(tǒng),因此它得到了廣泛的應用。事實上單片機是世界上數(shù)量最多處理器,隨著單
17、片機家族的發(fā)展壯大,單片機和專用處理器的發(fā)展便分道揚鑣。</p><p> 現(xiàn)代人類生活中所用的幾乎每件電子和機械產品中都會集成有單片機。手機、電話、計算器、家用電器、電子玩具、掌上電腦以及鼠標等電腦配件中都配有1-2部單片機。 汽車上一般配備40多部單片機,復雜的工業(yè)控制系統(tǒng)上甚至可能有數(shù)百臺單片機在同時工作!單片機的數(shù)量不僅遠超過PC機和其他計算的總和,甚至比人類的數(shù)量還要多。</p><
18、;p> 2.1.2單片機的應用領域</p><p> 目前單片機滲透到我們生活的各個領域,幾乎很難找到哪個領域沒有單片機的蹤跡。導彈的導航裝置,飛機上各種儀表的控制,計算機的網(wǎng)絡通訊與數(shù)據(jù)傳輸,工業(yè)自動化過程的實時控制和數(shù)據(jù)處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統(tǒng),錄像機、攝像機、全自動洗衣機的控制,以及程控玩具、電子寵物等等,這些都離不開單片機。更不用說自動控制領域的機器人、智能儀表
19、、醫(yī)療器械以及各種智能機械了。因此,單片機的學習、開發(fā)與應用將造就一批計算機應用與智能化控制的科學家、工程師。</p><p> 單片機廣泛應用于儀器儀表、家用電器、醫(yī)用設備、航空航天、專用設備的智能化管理及過程控制等領域,大致可分如下幾個范疇:</p><p><b> 智能儀器</b></p><p> 單片機具有體積小、功耗低、控制
20、功能強、擴展靈活、微型化和使用方便等優(yōu)點,廣泛應用于儀器儀表中,結合不同類型的傳感器,可實現(xiàn)諸如電壓、電流、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。采用單片機控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強大。</p><p> 例如精密的測量設備(電壓表、功率計,示波器,各種分析儀)。</p><p><b&
21、gt; 工業(yè)控制</b></p><p> 單片機具有體積小、控制功能強、功耗低、環(huán)境適應能力強、擴展靈活和使用方便等優(yōu)點,用單片機可以構成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、通信系統(tǒng)、信號檢測系統(tǒng)、無線感知系統(tǒng)、測控系統(tǒng)、機器人等應用控制系統(tǒng)。例如工廠流水線的智能化管理,電梯智能化控制、各種報警系統(tǒng),與計算機聯(lián)網(wǎng)構成二級控制系統(tǒng)等。</p><p><b> 家
22、用電器</b></p><p> 現(xiàn)在的家用電器廣泛采用了單片機控制,從電飯煲、洗衣機、電冰箱、空調機、彩電、其他音響視頻器材、再到電子秤量設備和白色家電等。</p><p><b> 網(wǎng)絡和通信</b></p><p> 現(xiàn)代的單片機普遍具備通信接口,可以很方便地與計算機進行數(shù)據(jù)通信,為在計算機網(wǎng)絡和通信設備間的應用提供了極
23、好的物質條件,現(xiàn)在的通信設備基本上都實現(xiàn)了單片機智能控制,從手機,電話機、小型程控交換機、樓宇自動通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動電話,集群移動通信,無線電對講機等。</p><p><b> 醫(yī)用設備領域</b></p><p> 單片機在醫(yī)用設備中的用途亦相當廣泛,例如醫(yī)用呼吸機,各種分析儀,監(jiān)護儀,超聲診斷設備及病床呼叫系統(tǒng)等等。&l
24、t;/p><p><b> 模塊化系統(tǒng)</b></p><p> 某些專用單片機設計用于實現(xiàn)特定功能,從而在各種電路中進行模塊化應用,而不要求使用人員了解其內部結構。如音樂集成單片機,看似簡單的功能,微縮在純電子芯片中(有別于磁帶機的原理),就需要復雜的類似于計算機的原理。如:音樂信號以數(shù)字的形式存于存儲器中(類似于ROM),由微控制器讀出,轉化為模擬音樂電信號(類似
25、于聲卡)。</p><p> 在大型電路中,這種模塊化應用極大地縮小了體積,簡化了電路,降低了損壞、錯誤率,也方便于更換。</p><p><b> 汽車電子</b></p><p> 單片機在汽車電子中的應用非常廣泛,例如汽車中的發(fā)動機控制器,基于CAN總線的汽車發(fā)動機智能電子控制器、GPS導航系統(tǒng)、abs防抱死系統(tǒng)、制動系統(tǒng)、胎壓檢測
26、等。</p><p> 此外,單片機在工商、金融、科研、教育、電力、通信、物流和國防航空航天等領域都有著十分廣泛的用途。</p><p><b> 2.2數(shù)字電壓表</b></p><p> 2.2.1數(shù)字電壓表的特點</p><p> 數(shù)字電壓表(DVM )是將被測的電壓模擬量自動轉換成開關量,然后進行數(shù)字編碼
27、、譯碼,以數(shù)字形式顯示出來的一種電測儀表,它具有如下主要特點:</p><p> (1)準確度高:目前可達到10^-6數(shù)量級,因此用它代替直讀儀表,可大大提高測量精度。</p><p> (2)靈敏度高:一般可做到10微伏至1微伏,目前已有10^-9伏數(shù)量級的儀表。</p><p> (3)輸入阻抗高:一般可達1000兆歐以上,而且工作時零電流很小,一般可達1
28、0^-10安。</p><p> (4)測量速度快:采樣速度一般每秒種為幾十次到上萬次,甚至可達百萬次。</p><p> (5)讀數(shù)準確:因是數(shù)字顯示,所以讀數(shù)準確,可以消除人為的讀數(shù)誤差。</p><p> (6)使用方便用途廣:開機預熱預調后即可使用,可配接打印機自動記數(shù).還可配接相應的轉換器,用來測量交流電壓、直流電流、電阻和溫度等參量。</p&
29、gt;<p> 第三章 設計目的與功能要求</p><p><b> 3.1設計目的</b></p><p> 通過制作簡易的數(shù)字電壓表,加深對所學專業(yè)知識的認識,提高分析,解決工程實際問題的能力,提高對單片機的應用能力,提高收集文獻,資料的能力,從而達到綜合運用所學的專業(yè)知識進行電子產品設計,制作與調試的能力。</p><p&
30、gt;<b> 3.2功能要求</b></p><p> ?、乓訫CS-51系列單片機為核心器件,組成一個簡單的直流數(shù)字電壓表。</p><p> ⑵采用1路模擬量輸入,能夠測量0-5V之間的直流電壓值。</p><p> ?、请妷猴@示用4位一體的LED數(shù)碼管顯示,至少能夠顯示兩位小數(shù)。 </p><p> ?、缺M量
31、使用較少的元器件。</p><p><b> 第四章 總體設計</b></p><p><b> 4.1系統(tǒng)設計</b></p><p> 主要分為兩部分:硬件電路及軟件程序。硬件電路包括:單片機及外圍電路,模擬信號采集電路,A/D轉換電路,數(shù)碼管顯示電路,各部分電路的銜接。軟件的程序可采用C語言或匯編,這里采用匯編
32、語言,詳細的設計思路在后面介紹。</p><p><b> 4.2設計方案</b></p><p> 數(shù)字電壓表的設計方案很多,但采用集成電路來設計較流行。其設計主要是由模擬電路和數(shù)字電路兩大部分組成,模擬部分包括A/D轉換器,基準電源等;數(shù)字部分包括振蕩器,數(shù)碼顯示,計數(shù)器等。其中,A/D轉換器將輸入的模擬量轉換成數(shù)字量,它是數(shù)字電壓表的一個核心部件,對它的選擇
33、一般有兩種選擇方案:</p><p> 1.采用雙積分A/D轉換器MC14433,它有多路調制的BCD碼輸出端和超量程輸出端,采用動態(tài)掃描顯示,便于實現(xiàn)自動控制。但芯片只能完成A/D轉換功能,要實現(xiàn)顯示功能還需配合其它驅動芯片等,使得整部分硬件電路板布線復雜,加重了電路設計和實際焊接的工作。</p><p> 2. 逐次逼近式A/D轉換器。它的轉換速度更快,而且精度更高,比如ADC08
34、08、ADC0809等,它們通常具有8路模擬選通開關及地址譯碼、鎖存電路等,它們可以與單片機系統(tǒng)連接,將數(shù)字量送單片機進行分析和顯示。這樣電路設計簡單,電路板布線不復雜,便于焊接、調試。這里采用這種方案。</p><p> 顯示部分可以采用各類數(shù)碼管或用LCD顯示器顯示。在此簡化采用4位八段共陰極數(shù)碼管對A/D轉換變換后的結果加以顯示。</p><p><b> 4.3總體設
35、計框圖</b></p><p> 圖4-31 總體設計框圖</p><p><b> 第五章 設計原理圖</b></p><p><b> 5.1設計原理圖</b></p><p> 圖5-11 設計原理圖</p><p> 第六章 硬件電路設計<
36、/p><p> 6.1 信號調理模塊</p><p> 該部分主要實現(xiàn)的功能是自動量程切換和電壓變換,模塊主要由電壓極性檢測電路、電壓范圍粗測電路、電壓變換電路三部分組成。6.1.1電壓極性檢測電路電壓極性檢測電路采用過零比較器檢測負電壓的方式實現(xiàn)的,運算放大器LM324的反向端接地,同向端通過100K電阻接輸入信號。</p><p><b> 圖6
37、-11</b></p><p> 6.1.2電壓范圍粗測電路 為了粗略地得到被測量的電壓范圍我們采用多組比較器的方式,通過階梯式比較的方法確定輸入電壓的范圍。</p><p><b> 圖6-12</b></p><p> 6.1.3量程切換電路 電路由衰減電阻、切換繼電器和運算放大器組成,對應的是衰減1/2、1/3
38、、1/4和無零漂放大50倍,切換電路如圖所示。電壓變換到0-5V標準信號后,再由A/D轉換進行采樣,最后由單片機算法還原。</p><p><b> 6.2單片機模塊</b></p><p> 6.2.1芯片的介紹和選擇</p><p> 單片機AT89C51介紹</p><p> AT89C51是一種帶4K字節(jié)
39、FLASH存儲器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位微處理器,俗稱單片機。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲器的單片機。單片機的可擦除只讀存儲器可以反復擦除1000次。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在
40、單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C51單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。外形及引腳排列如圖6-21所示 </p><p> 圖6-21芯片引腳圖</p><p><b> (1)主要特性</b></p><p> ·與MCS-51
41、兼容 </p><p> ·4K字節(jié)可編程閃爍存儲器 </p><p> ·壽命:1000寫/擦循環(huán) </p><p> ·數(shù)據(jù)保留時間:10年 </p><p> ·全靜態(tài)工作:0Hz-24MHz </p><p> ·三級程序存儲器鎖定 </p>
42、;<p> ·128×8位內部RAM </p><p> ·32可編程I/O線 </p><p> ·兩個16位定時器計數(shù)器 </p><p><b> ·5個中斷源 </b></p><p><b> ·可編程串行通道 <
43、;/b></p><p> ·低功耗的閑置和掉電模式 </p><p> ·片內振蕩器和時鐘電路</p><p><b> (2)引腳描述</b></p><p> VCC:電源電壓 </p><p><b> GND:地</b>&l
44、t;/p><p> P0口:P0口是一組8位漏極開路雙向I/O口,即地址/數(shù)據(jù)總線復用口。作為輸出口時,每一個管腳都能夠驅動8個TTL電路。當“1”被寫入P0口時,每個管腳都能夠作為高阻抗輸入端。P0口還能夠在訪問外部數(shù)據(jù)存儲器或程序存儲器時,轉換地址和數(shù)據(jù)總線復用,并在這時激活內部的上拉電阻。P0口在閃爍編程時,P0口接收指令,在程序校驗時,輸出指令,需要接電阻。</p><p> P1
45、口:P1口一個帶內部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅動4個TTL電路。對端口寫“1”,通過內部的電阻把端口拉到高電平,此時可作為輸入口。因為內部有電阻,某個引腳被外部信號拉低時輸出一個電流。閃爍編程時和程序校驗時,P1口接收低8位地址。</p><p> P2口:P2口是一個內部帶有上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅動4個TTL電路。對端口寫“1”,通過內部的電阻把端口拉到高電平,
46、此時,可作為輸入口。因為內部有電阻,某個引腳被外部信號拉低時會輸出一個電流。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器時,P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器時,P2口線上的內容在整個運行期間不變。閃爍編程或校驗時,P2口接收高位地址和其它控制信號。</p><p> P3口:P3口是一組帶有內部電阻的8位雙向I/O口,P3口輸出緩沖故可驅動4個TTL電路。對P3口寫如“1”時,它們被
47、內部電阻拉到高電平并可作為輸入端時,被外部拉低的P3口將用電阻輸出電流。</p><p> P3口除了作為一般的I/O口外,更重要的用途是它的第二功能,如下表所示:</p><p> P3口還接收一些用于閃爍存儲器編程和程序校驗的控制信號。</p><p> RST:復位輸入。當震蕩器工作時,RET引腳出現(xiàn)兩個機器周期以上的高電平將使單片機復位。</p&
48、gt;<p> ALE/:當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問外部存儲器,ALE以時鐘震蕩頻率的1/16輸出固定的正脈沖信號,因此它可對輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖時,閃爍存儲器編程時,這個引腳還用于輸入編程脈沖。如果必要,可對特殊寄存器區(qū)中的8EH單元的D0位置禁止ALE操作。這個位置后只有一條MOVX和MOVC指令A
49、LE才會被應用。此外,這個引腳會微弱拉高,單片機執(zhí)行外部程序時,應設置ALE無效。</p><p> PSEN:程序儲存允許輸出是外部程序存儲器的讀選通信號,當AT89C51由外部程序存儲器讀取指令時,每個機器周期兩次PSEN 有效,即輸出兩個脈沖。在此期間,當訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN 信號不出現(xiàn)。</p><p> EA/VPP:外部訪問允許。欲使中央處理器僅訪問外
50、部程序存儲器,EA端必須保持低電平。需要注意的是:如果加密位LBI被編程,復位時內部會鎖存EA端狀態(tài)。如EA端為高電平,CPU則執(zhí)行內部程序存儲器中的指令。閃爍存儲器編程時,該引腳加上+12V的編程允許電壓VPP,當然這必須是該器件是使用12V編程電壓VPP。</p><p> XTAL1:震蕩器反相放大器及內部時鐘發(fā)生器的輸入端。</p><p> XTAL2:震蕩器反相放大器的輸出
51、端。</p><p> 時鐘震蕩器:AT89C51中有一個用于構成內部震蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構成自然震蕩器。 外接石英晶體及電容C1,C2接在放大器的反饋回路中構成并聯(lián)震蕩電路。對外接電容C1,C2雖然沒有十分嚴格的要求,但電容容量的大小會輕微影響震蕩頻率的高低、震蕩器工作的穩(wěn)定性、起振的難易程序
52、及溫度穩(wěn)定性。如果使用石英晶體,我們推薦電容使用30PF±10PF,而如果使用陶瓷振蕩器建議選擇40PF±10PF。用戶也可以采用外部時鐘。采用外部時鐘的電路如圖示。這種情況下,外部時鐘脈沖接到XTAL1端,即內部時鐘發(fā)生器的輸入端,XTAL2則懸空。由于外部時鐘信號是通過一個2分頻觸發(fā)器后作為內部時鐘信號的,所以對外部時鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時間和最大的低電平持續(xù)時間應符合產品技術條件的要求。
53、</p><p> 電路內部振蕩 外部振蕩電路</p><p><b> 圖6-22</b></p><p> 6.3 A/D轉換模塊</p><p> 6.3.1芯片的介紹和選擇</p><p><b> ADC0809芯片</b>&
54、lt;/p><p> ADC0809是美國國家半導體公司生產的CMOS工藝8通道,8位逐次逼近式A/D模數(shù)轉換器。其內部有一個8通道多路開關,它可以根據(jù)地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進行A/D轉換。是目前國內應用最廣泛的8位通用A/D芯片。</p><p><b> 圖6-31引腳圖</b></p><p><b&
55、gt; (1)主要特性</b></p><p> 1)8路輸入通道,8位A/D轉換器,即分辨率為8位。 </p><p> 2)具有轉換起??刂贫?。 </p><p> 3)轉換時間為100μs(時鐘為640kHz時),130μs(時鐘為500kHz) </p><p> 4)單個+5V電源供電 </p>
56、<p> 5)模擬輸入電壓范圍0~+5V,不需零點和滿刻度校準。 </p><p> 6)工作溫度范圍為-40~+85攝氏度 </p><p> 7)低功耗,約15mW。</p><p> (2)外部特性(引腳功能)</p><p> IN0~IN7:8路模擬量輸入端。 </p><p> DB
57、0-DB7:8位數(shù)字量輸出端。 </p><p> ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路 </p><p> ALE:地址鎖存允許信號,輸入,高電平有效。 </p><p> START: A/D轉換啟動脈沖輸入端,輸入一個正脈沖(至少100ns寬)使其啟動(脈沖上升沿使0809復位,下降沿啟動A/D轉換)。 </p
58、><p> EOC: A/D轉換結束信號,輸出,當A/D轉換結束時,此端輸出一個高電平(轉換期間一直為低電平)。 </p><p> OE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當A/D轉換結束時,此端輸入一個高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。 </p><p> CLK:時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。 </p><p&g
59、t; REF(+)、REF(-):基準電壓。 </p><p> Vcc:電源,單一+5V。 </p><p><b> GND:接地。</b></p><p><b> 6.3.2原理圖</b></p><p><b> 圖6-32</b></p>&
60、lt;p><b> 6.4顯示模塊</b></p><p> 6.4.1 LED數(shù)碼管</p><p><b> ?、?LED基本結構</b></p><p> LED是發(fā)光二極管顯示器的縮寫。LED由于結構簡單、價格便宜、與單片機接口方便等優(yōu)點而得到廣泛應用。LED顯示器是由若干個發(fā)光二極管組成顯示字段的顯示
61、器件[6]。在單片機中使用最多的是七段數(shù)碼顯示器。LED七段數(shù)碼顯示器由8個發(fā)光二極管組成顯示字段,其中7個長條形的發(fā)光二極管排列成“日”字形,另一個圓點形的發(fā)光二極管在顯示器的右下角作為顯示小數(shù)點用,其通過不同的組合可用來顯示各種數(shù)字。LED引腳排列如下圖6-41所示:</p><p> 圖6-41 LED引腳排列</p><p> ?、?LED數(shù)碼管的選擇</p>&l
62、t;p> 在應用系統(tǒng)中,設計要求不同,使用的LED顯示器的位數(shù)也不同,因此就生產了位數(shù),尺寸,型號不同的LED顯示器供選擇,在本設計中,選擇4位一體的數(shù)碼型LED顯示器,簡稱“4-LED”。本系統(tǒng)中前一位顯示電壓的整數(shù)位,即個位,后兩位顯示電壓的小數(shù)位。</p><p> 4-LED顯示器引腳如圖所示,是一個共陰極接法的4位LED數(shù)碼顯示管,其中a,b,c,e,f,g為4位LED各段的公共輸出端,1、2
63、、3、4分別是每一位的位數(shù)選端,dp是小數(shù)點引出端,4位一體LED數(shù)碼顯示管的內部結構是由4個單獨的LED組成,每個LED的段輸出引腳在內部都并聯(lián)后,引出到器件的外部。</p><p> 圖6-42 4位LED引腳</p><p> 對于這種結構的LED顯示器,它的體積和結構都符合設計要求,由于4位LED陰極的各段已經在內部連接在一起,所以必須使用動態(tài)掃描方式(將所有數(shù)碼管的段選線并聯(lián)
64、在一起,用一個I/O接口控制)顯示。</p><p><b> ?、?LED譯碼方式</b></p><p> 譯碼方式是指由顯示字符轉換得到對應的字段碼的方式,對于LED數(shù)碼管顯示器,通常的譯碼方式有硬件譯碼和軟件譯碼方式兩種。</p><p> 硬件譯碼是指利用專門的硬件電路來實現(xiàn)顯示字符碼的轉換。</p><p&g
65、t; 軟件譯碼就是編寫軟件譯碼程序,通過譯碼程序來得到要顯示的字符的字段碼,譯碼程序通常為查表程序[3]。</p><p> 本設計系統(tǒng)中為了簡化硬件線路設計,LED譯碼采用軟件編程來實現(xiàn)。由于本設計采用的是共陰極LED,其對應的字符和字段碼如下表所示。</p><p><b> 共陰極字段碼表</b></p><p> 6.4.2 L
66、ED數(shù)碼管與單片機接口設計</p><p> 由于單片機的并行口不能直接驅動LED顯示器,所以,在一般情況下,必須采用專用的驅動電路芯片,使之產生足夠大的電流,顯示器才能正常工作[7]。如果驅動電路能力差,即負載能力不夠時,顯示器亮度就低,而且驅動電路長期在超負荷下運行容易損壞,因此,LED顯示器的驅動電路設計是一個非常重要的問題。</p><p> 為了簡化數(shù)字式直流電壓表的電路設計
67、,在LED驅動電路的設計上,可以利用單片機P0口上外接的上拉電阻來實現(xiàn),即將LED的A-G段顯示引腳和DP小數(shù)點顯示引腳并聯(lián)到P0口與上拉電阻之間,這樣,就可以加大P0口作為輸出口德驅動能力,使得LED能按照正常的亮度顯示出數(shù)字,如圖6-43所示。</p><p> 圖6-43 LED與單片機接口間的設計</p><p><b> 第七章 總體電路</b><
68、/p><p><b> 7.1總體電路</b></p><p> 經過以上的設計過程,可設計出基于單片機的簡易數(shù)字直流電壓表硬件電路原理圖如圖7-11所示。</p><p> 圖7-11 簡易數(shù)字電壓表電路圖</p><p> 此電路的工作原理是:+5V模擬電壓信號通過變阻器VR1分壓后由ADC0809的IN0通道進
69、入(由于使用的IN0通道,所以ADDA,ADDB,ADDC均接低電平),經過模/數(shù)轉換后,產生相應的數(shù)字量經過其輸出通道D0-D7傳送給AT89C51芯片的P1口,AT89C51負責把接收到的數(shù)字量經過數(shù)據(jù)處理,產生正確的7段數(shù)碼管的顯示段碼傳送給四位LED,同時它還通過其四位I/O口P2.0、P2.1、P2.2、P2.3產生位選信號控制數(shù)碼管的亮滅。此外,AT89C51還控制ADC0809的工作。其中,單片機AT89C51通過定時器中
70、斷從P2.4輸出方波,接到ADC0809的CLOCK,P2.6發(fā)正脈沖啟動A/D轉換,P2.5檢測A/D轉換是否完成,轉換完成后,P2.7置高從P1口讀取轉換結果送給LED顯示出來[3]。</p><p> 簡易數(shù)字直流電壓表的硬件電路已經設計完成,就可以選取相應的芯片和元器件,利用Proteus軟件繪制出硬件的原理,并仔細地檢查修改,直至形成完善的硬件原理圖。但要真正實現(xiàn)電路對電壓的測量和顯示的功能,還需要有
71、相應的軟件配合,才能達到設計要求。</p><p><b> 第八章 軟件設計</b></p><p><b> 8.1匯編流程圖</b></p><p><b> 8.2匯編程序</b></p><p><b> ;初始化定義</b></p
72、><p> LED1 EQU 30H</p><p> LED2 EQU 31H</p><p> LED3 EQU 32H;存放三個數(shù)碼管的段碼</p><p> ADC EQU 35H;存放轉換后的數(shù)據(jù)</p><p> ST BIT P3.2</p><p> OE BIT
73、 P3.0</p><p> EOC BIT P3.1;定義ADC0809的功能控制引腳</p><p><b> ORG 0000H</b></p><p> LJMP MAIN;跳轉到主程序執(zhí)行</p><p><b> ORG 0030H</b></p><p&g
74、t; ;主程序,各寄存器初始化,ADC0809采集數(shù)據(jù)和調用顯示主程序;</p><p> MAIN: MOV LED1,#00H </p><p> MOV LED2,#00H</p><p> MOV LED3,#00H;寄存器初始化</p><p><b> CLR P3.4</b></p&g
75、t;<p><b> SETB P3.5</b></p><p> CLR P3.6;選擇ADC0809的通道2</p><p> WAIT: CLR ST</p><p><b> SETB ST</b></p><p> CLR ST;在脈沖下降沿啟動轉換</p
76、><p> JNB EOC,$;等待轉換結束</p><p> SETB OE;允許輸出信號</p><p> MOV ADC,P1;暫存A/D轉換結果</p><p> CLR OE;關閉輸出</p><p> MOV A,ADC;將轉換結果放入A中,準備個位數(shù)據(jù)轉換</p><p>
77、 MOV B,#50;變換個位調整值50送B</p><p><b> DIV AB</b></p><p> MOV LED1,A;將變換后的個位值送顯示緩沖區(qū)LED1</p><p> MOV A,B;將變換結果的余數(shù)放入A中,準備十分位變換</p><p> MOV B,#5;變換十分位調整值5送B<
78、/p><p><b> DIV AB</b></p><p> MOV LED2,A;將變換后的十分位值送LED2</p><p> MOV LED3,B;最后的余數(shù)作百分位值送LED3</p><p> LCALL DISP;調用顯示程序</p><p><b> AJMP WA
79、IT</b></p><p><b> ;顯示子程序: </b></p><p> DISP: MOV R1,#LED1</p><p> CJNE @R1,#5,GO;@R1=5V?是往下執(zhí)行,否,則到GO</p><p> MOV LED2,#0H;是5V,即最高值,將小數(shù)的十分位清零<
80、;/p><p> MOV LED3,#0H;將小數(shù)的百分位清零</p><p> GO : MOV R2,#3;顯示位數(shù)賦初值,用到3位數(shù)碼管</p><p> MOV R3,#0FDH;掃描初值送R3</p><p> DISP1: MOV P2,#0FFH;關閉顯示,目的防止亂碼</p><p> M
81、OV A,@R1;顯示值送A</p><p> MOV DPTR,#TAB;送表首地址給DPTR</p><p> MOVC A,@A+DPTR;查表取段碼</p><p> CJNE R2,#3,GO1;判斷是否個位數(shù)碼管?否則跳到GO1</p><p> ORL A,#80H;將整數(shù)的數(shù)碼管顯示小數(shù)點</p><
82、;p> GO1: MOV P0,A;送段碼給P0口</p><p><b> MOV A,R3</b></p><p> MOV P2,A;送位碼給P2口</p><p> LCALL DELAY;調用延時</p><p><b> MOV R3,A</b></p>
83、<p><b> RL A;改變位碼</b></p><p><b> MOV R3,A</b></p><p> INC R1;改變段碼</p><p> DJNZ R2,DISP1;三位是否顯示完?否則調到DISP1</p><p><b> RET</b
84、></p><p><b> ;延時5S程序:</b></p><p> DELAY : MOV R6,#10</p><p> D1: MOV R7,#250</p><p><b> DJNZ R7,$</b></p><p> DJNZ R6,D
85、1</p><p><b> RET </b></p><p><b> ;顯示數(shù)據(jù)表:</b></p><p> TAB: DB 3FH, 06H,5BH,4FH,66H;共陰極數(shù)碼管顯示0-4</p><p> DB 6DH,7DH,07H,7FH,6FH;顯示5-9</p>
86、<p><b> END</b></p><p><b> 8.3程序說明</b></p><p> 程序先定義了ADC0809的控制線,對其控制端口要注意的是操作時序;要將A/D轉換來的數(shù)據(jù)變換成對應的BCD碼,這是因為ADC0809是8位A/D轉換,對0~5V的模擬量轉換成00H~FFH的數(shù)字量,即0~255。這要變換成
87、對應十進制的BCD碼才能顯示。最高255/50=5.0(≈5V),BCD碼取0101B,只精確到十分位。例如A/D轉換來的數(shù)據(jù)為235,變換對應的BCD碼為:235/50=4(是個位)余35/5=6(十分位)余5,余數(shù)5直接作百分位(此位不精確),即為4.65V,BCD碼為0100 0110 0101.然后查表,緩存,調顯示程序顯示。</p><p><b> 總 結</b></
88、p><p> 在A/D轉換部分軟件的設計中,首先要考慮到A、B、C分別接地址鎖存器提供的低三位地址,只要把三位地址寫入ADC0809中的地址鎖存器,就實現(xiàn)了模擬通道選擇IN0。在本次設計中只用到了一路輸入。</p><p> 單片機為8位處理器,當輸入電壓為5.00時,輸出數(shù)據(jù)值為255(FFH),決定了該電壓表的最大分辨率(精度)只能達到0.0196V。測試時電壓數(shù)值的變化一般以0.02
89、的電壓幅度變化。在200MV檔中,電壓值的變化是由0-200MV變化,而模擬開關的變化為0-5V變化,所以在此檔位中電壓表的絕對精度是0.784MV(200/255);在2V檔中,電壓值的變化是由200-2000MV變化,模擬開關的變化為0-5V變化,所以在此檔位中電壓表的絕對精度是7.06MV(1800/255);在20V檔中,電壓值的變化是由2-2MV變化,模擬開關的變化也為0-5V變化,所以在此檔位中電壓表的絕對精度是70.58M
90、V(18/255)。</p><p> 本次設計成功的完成了基于AT89C51單片機的數(shù)字電壓表設計任務,輸入0-20V直流電壓,單片機轉化為模擬量進行初始判斷后,利用模擬開關實現(xiàn)了200MV、2V、20V自動換擋,能夠在LCD液晶屏上顯示相應的數(shù)字量電壓值,20V檔精確到小數(shù)點后兩位;2V檔時作為2000MV的量程顯示4位有效數(shù)字;200MV檔時精確到小數(shù)點后一位。</p><p>
91、 基于本設計中的電路,還可以擴展很多其它方面的功能如:</p><p> 1)本次設計在采集模擬電壓量時只用到了ADC0809的IN0通道,完全可以通過編程實現(xiàn)多通道輸入,并在LCD液晶顯示屏上顯示相對應的通道值。</p><p> 2)可采用高精度的A/D轉換器,實現(xiàn)更大的量程和更高的精度。</p><p> 3) 可以利用單片機串口通信將電壓值傳送至電腦進
92、行同步顯示和后期處理。</p><p><b> 參考文獻</b></p><p> [1] 鮑小南.《單片機微型計算機原理及應用》浙江大學出版社 2009.2</p><p> [2] 樓然苗、李光飛.《單片機課程設計指導》 電子工業(yè)出版社,2007.12</p><p> [3] 吳經國等.《單片機應用技術.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 機電一體化畢業(yè)設計---基于單片機的數(shù)字電壓表的設計
- 基于單片機的數(shù)字電壓表畢業(yè)設計論文
- 基于單片機的數(shù)字電壓表設計畢業(yè)設計論文
- 基于單片機的數(shù)字電壓表的設計畢業(yè)設計論文
- 畢業(yè)設計---基于單片機的數(shù)字電壓表設計
- 畢業(yè)設計---基于單片機的數(shù)字電壓表
- 畢業(yè)設計(論文)-基于單片機的簡易數(shù)字電壓表設計
- 單片機的數(shù)字電壓表畢業(yè)設計
- 數(shù)字電壓表畢業(yè)論文--基于51單片機的數(shù)字電壓表設計
- 畢業(yè)設計--單片機數(shù)字電壓表的設計
- 基于單片機的數(shù)字電壓表的畢業(yè)設計
- 畢業(yè)設計--基于單片機的數(shù)字電壓表的設計
- 基于單片機的數(shù)字電壓表的設計-畢業(yè)設計
- 畢業(yè)論文--基于單片機的數(shù)字電壓表設計
- (畢業(yè)論文)基于單片機的數(shù)字電壓表設計
- 畢業(yè)設計(論文)+單片機數(shù)字電壓表的設計與實現(xiàn)
- 基于單片機的數(shù)字電壓表的設計論文
- 基于單片機的數(shù)字萬用表設計-機電一體化畢業(yè)論文
- 基于單片機的數(shù)字電壓表的設計論文
- 基于單片機的數(shù)字萬用表設計-機電一體化畢業(yè)論文
評論
0/150
提交評論