




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精品畢業設計 畢 業 設 計題目 數字電壓表 系別 機電系 專業 機電一體化 班級 機電0708 姓名 學號 07010804 指導教師 張詠梅 日期 2009年12月 設計任務書設計題目:簡易數字電壓表的設計設計要求:1. 為測量系統設計所需的電源實現的電壓測量,設計一個具有可以測量范圍0-5V內的8路輸入電壓值,并在4位LED數碼管上輪流顯示或單路顯示。2. 8路輸入模擬信號數值顯示電路,顯示測量最小分辨率為0.02V。3.設計完成該功能的硬件電路。4.設計完成上述功能的相應軟件調試。5.完成焊接和實物電路的下載和調試。設計進度要求:第一周:選定設計題目,查找、搜集相關資料。第二周:了解各
2、元器件、模塊的功能及使用方法。第三周:硬件電路的設計。第四周:相應軟件設計(程序設計)。第五周:利用實驗箱調試并記錄相關的數據和錯誤。第六周:焊接實物電路,并且在實物電路上調試并且記錄相關的數據和問題。第七周:寫畢業論文。第八周:畢業答辯。指導教師(簽名): 摘要隨著時代的進步和發展,單片機技術已經普及到我們生活、工作、科研等各個領域,已經成為一種比較成熟的技術,本文將介紹一種用單片機設計的數字電壓表。本次設計是以單片機為核心的部件,利用ADC0809作為模擬量和數字量的轉換元件,4個LED數碼管作為顯示通道值和顯示采集的模擬量的值,用按鍵S1、S2分別作為單路/循環和通道切換的控制。這個數字
3、電壓表它的功能是可以測量05CV的8路輸入電壓值,并在4位LED數碼管上輪流顯示或單路選擇顯示。在剛上電時,系統默認為循環顯示8個通道的電壓值狀態。每個通道數據顯示時間在1s左右。只有當輪流顯示的通道快顯示到通道8后,長按住功能轉換鍵S1等出現數碼管全熄滅后再放開,就會轉到選擇通道的功能。切換通道時,也要長按一會功能轉換鍵S2,等出現數碼管全熄滅后再放開。否則,當通道顯示到8時,它會自動清零,重新從1通道開始循環顯示。本文撰寫的主導思想是軟、硬件相結合,以硬件為基礎,來進行各功能模塊的編寫。關鍵詞:單片機,數字電壓表,模數轉換,按鍵,顯示目錄摘要II1 單片機的發展及應用11.1 單片機的發展
4、11.2 單片機的應用12 硬件總體系統設計32.1系統框圖32.2顯示控制方案32.3 鍵盤控制方案42.4 A/D轉換控制方案43 硬件設計53.1 89S51單片機的簡介53.2 89S51單片機的引腳63.3 89S51單片機復位方式73.4 89S51單片機晶振電路83.5 ADC0809的功能93.6 鍵盤接口工作原理113.7 七段LED顯示工作原理133.8 電路原理144 軟件設計174.1主程序模塊174.2 顯示程序模塊174.3 A/D轉化子程序184.4按鍵子程序模塊195 系統調試215.1 硬件調試(焊接)215.2 在軟件偉福中的調試215.3 在軟件Keil中
5、的調試235.4 綜合調試26致 謝28參考文獻291 單片機的發展及應用1.1 單片機的發展單片微型計算機是微型計算機的一個重要分支,也是一種非常活躍和頗具有生命力的機種。單片微型計算機簡稱單片機,特別適用于工業控制領域,因此又稱為微控器。通常,單片機由單塊集成芯片組成,內部包含計算機的基本功能部件:中央處理器CPU,存儲器I/O接口電路。 1971年微處理器研制成功不久,就出現了單片微型計算機即單片機,但最早的單片機是1位的,處理能力有限。單片機的發展分為4個階段: 第一階段(197476年):單片機初級階段。因為受工藝限制,單片機采用單片的形式而且功能比較簡單。例如美國仙童公司生產的F8
6、單片機,實際上只包括了8位CPU,64個字節的RAM和2個并行接口 第二階段(197678年):低性能單片機階段。以Intel公司生產的MCS48系列單片機為代表,該系列單片機片內集成有8位CPU,8位定時器/計數器,并行I/O接口,RAM和ROM等,但是最大的缺點就是無串行接口,中斷處理比較簡單而且片內RAM和ROM容量較小,且尋址范圍不大與4KB。第三階段(197883)高性能單片階段這個階段推出的單片機普遍帶有串行接口。多級中斷系統,16位定時器/計數器,片內ROM,RAM容量加大,且尋址范圍可達64KB,有的片內還帶有A/D轉換器。第四階段(1983年至今)8位單片機鞏固發展以及16位
7、單片機,32 位單片機推出階段。此階段的主要特征是:一方面發展16位單片機,32位單片機及專用型單片機;另一方面不斷完善高檔8位單片機,改善其結構,增加片內器件,以滿足不同的客戶要求。1.2 單片機的應用 單片機的應用很廣,分別在以下領域中得到了廣泛的應用。工業自動化:在自動化技術中,無論是過程控制技術、數據采集技術還是測控技術,都離不開單片機。在工業自動化的領域中,機電一體化技術將發揮愈來愈重要的作用,在這種機械、微電子和計算機技術為一體的綜合技術(例如機器人技術、數控技術)中,單片機將發揮非常重要的作用特別是近些年來,隨著計算機技術的發展,工業自動化也發展到了一個新的高度,出現了無人工廠、
8、機器人作業、網絡化工廠等,不僅將人從繁重、重復和危險的工業現場解放出來,還大大提高了生產效率,降低了生產成本。儀器儀表:目前對儀器儀表的自動化和智能化要求越來越高。在自動化測量儀器中,單片機應用十分普及。單片機的使用有助于提高儀器儀表的精度和準確度,簡化結構,減小體積,易于攜帶和使用,加速儀器儀表向數字化、智能化和多功能化方向發展。消費類電子產品:該應用主要反映在家電領域。目前家電產品的一個重要發展趨勢是不斷提高其智能化程度。例如,電子游戲、照相機、洗衣機、電冰箱、空調、電視機、微波爐、手機、IC卡、汽車電子設備等。在這些設備中使用了單片機后,其功能和性能大大提高,并實現了智能化、最優化控制通
9、信方面:較高檔的單片機都具有通信接口,因而為單片機在通信設備中的應用創造了很好的條件。例如,在微波通信、短波通信、載波通信、光纖通信、程控交換等通信設備和儀器中都能找到單片機的應用。武器裝備:在現代化的武器裝備中, 如飛機、軍艦、坦克、導單、魚雷制導、智能武器設備、航天飛機導航系統,都有單片機在其中發揮重要作用。終端及外部設備控制:計算機網絡終端設備,如銀行終端,以及計算機外部設備如打印機、硬盤驅動器、繪圖機、傳真機、復印機等,在這些設備中都使用了單片機。近年來隨著科技的飛速發展,同時帶動自動控制系統日新月異更新,單片機的應用正在不斷地走向深入。2 硬件總體系統設計2.1系統框圖 簡易電壓表的
10、總體設計框圖如圖2.1所示。圖2.1 系統框圖1本次設計中采用AT89S51單片機控制系統,A/D轉換采用ADC0809。此外,還有單片機的復位電路、電源電路、串口通信、按鍵電路。2.其中單片機的P2口作A/D轉換芯片的使能端的控制,P0口作通過A/D轉換芯片模擬量讀入。P1口和P3口的一部分作4個LED顯示的控制,此設計中電路用的是動態顯示。2.2顯示控制方案數字信號轉換為段碼并顯示出來需要有程序和其它接口電路配合。在程序上,A/D采集程序采用多次取值并求和求平均的方法得出雙字節數據,然后通過雙字節轉換BCD碼子程序得出BCD碼。顯示分為靜態顯示和動態顯示,靜態顯示方式程序簡單,占CPU的資
11、源少,但每一個數碼管都需8個I/O接口。在單片機設計中欲使較少的I/O接口控制較多的。而動態顯示占用的I/O接口較少,雖占用的時間較靜態顯示多,但可有簡化電路,降低成本的作用。本方案占用接口資源多,電路復雜,信息刷新速度慢,而LED動態顯示硬件連接簡單,故選用動態掃描方式。2.3 鍵盤控制方案鍵盤分為獨立式鍵盤和行列式鍵盤,獨立式鍵盤接口電路配置靈活,硬件結構簡單,工作可靠但每個按鍵必須占用一跟I/O接口線,I/O接口線浪費較大,在單片機應用系統中,有時只需要幾個簡單的按鍵向系統輸入信息,可將按鍵直接在一根I/O接口線上,故只在按鍵數量不多時采用。而行列式鍵盤每條行線與列線在交叉處不直接相通,
12、而是通過一個按鍵加以連接,當按鍵較多時可采用行列式鍵盤以節省I/O接口。本設計采用兩個按鍵,所以這里選用獨立式鍵盤。2.4 A/D轉換控制方案電壓是模擬量,而數碼管顯示需要的是數字量,故需要采用A/D轉換模擬信號為數字信號供數碼管顯示出來,可供選擇的芯片有ADC0809,ADC574和TLC2543等等。由于要求測量精度在5%,因此須選用12位精度的A/D轉換器,且可直接驅動LED顯示器工作。A/D轉換過程主要包括:采樣、保持、量化及編碼。其作用是可以把模擬量變成計算機能識別的數字量。A/D轉換芯片種類繁多,性能各異,按其原理可分為直接并行比較式、逐次逼近式、雙積分式等。其中逐次逼近式精度、速
13、度及價格都適中,應用最廣泛。所以本設計方案所采用的就是ADC0809逐次逼近式的8路模擬輸入。雖然8路模擬通道可以同時輸入8路模擬信號,但每個瞬間只能轉換一路,各路之間的切換由軟件變換通道地址來實現。3 硬件設計3.1 89S51單片機的簡介89S51是MCS-51系列單片機的典型產品,我們就這一代表性的機型進行系統的講解。89S51單片機包含中央處理器、程序存儲器(ROM)、數據存儲器(RAM)、定時/計數器、并行接口(I/O接口)、串行接口和中斷系統等幾大單元及數據總線、地址總線和控制總線等三大總線。1、中央處理器中央處理器(CPU)是整個單片機的核心部件,是8位數據寬度的處理器,能處理8
14、位二進制數據或代碼,CPU負責控制、指揮和調度整個單元系統協調的工作,完成運算和控制輸入輸出功能等操作。2、數據存儲器(RAM)89S51內部有128個8位用戶數據存儲單元和128個專用寄存器單元,它們是統一編址的,專用寄存器只能用于存放控制指令數據,用戶只能訪問,而不能用于存放用戶數據,所以,用戶能使用的RAM只有128個,可存放讀寫的數據,運算的中間結果或用戶定義的字型表。3、程序存儲器(ROM)89S51共有4KB掩膜ROM,最大可擴展64K字節,用于存放用戶程序,原始數據或表格。4、定時/計數器:89S51有兩個16位的可編程定時/計數器,以實現定時或計數產生中斷用于控制程序轉向。5、
15、并行輸入輸出(I/O)口:89S51共有4組8位I/O口(P0、 P1、P2或P3),用于對外部數據的傳輸。有些I/O口還具有其它功能。6、中斷系統89S51具備較完善的中斷功能,有兩個外中斷、兩個定時/計數器中斷和一個串行中斷,可滿足不同的控制要求,并具有2級的優先級別選擇。3.2 89S51單片機的引腳89S51單片機內部總線是單總線結構,即數據總線和地址總線是公用的。 89S51有40條引腳,與其他51系列單片機引腳是兼容的。這40條引腳可分為時鐘、控制、電源、I/O接口4部分。89S51單片機為雙列直插式封裝結構, 如圖2.2所示。圖2.2 89S51引腳分配圖1、89S51單片機的時
16、鐘引腳有以下兩種: (1) XTAL1:片內振蕩器反相放大器的輸入端和內部時鐘工作的輸入端。采用內部振蕩器時,它接外部石英晶體和微調電容的一個引腳。(2) XTAL2:片內振蕩器反相放大器的輸出端,接外部石英晶體和微調電容的另一端。采用外部振蕩器時,該引腳懸空。外接晶體引腳。2、89S51單片機的控制引腳有以下幾種:(1) RST:復位輸入端,高電平有效。(2) ALE/PROG:地址鎖存允許/編程線。(3) PSEN:外部程序存儲器的讀選通線。(4) EA/Vpp:片外ROM允許訪問端/編程電源端。3、89S51單片機的電源引腳有以下兩種:(1) VCC:+5V電源線。(2) GND:接地線
17、。4、89S51單片機的I/O接口引腳有以下幾種:(1) P0口:做通用雙I/O口用。在訪問片外擴展存儲器時,低8位地址和數據由P0口分時傳送。(2) P1口:做通用雙I/O口用。(3) P2口:做通用雙I/O口用。在訪問外片擴展存儲器時,傳送高8位地址。(4) P3口:做通用雙I/O口用。具有第二功能(常用做第二功能)。3.3 89S51單片機復位方式單片機在開機時或在工作中因干擾而使程序失控,或工作中程序處于某種死循環狀態,在這種情況下都需要復位。 復位的作用是使中央處理器CPU以及其他功能部件都恢復到一個確定的初始狀態,并從這個狀態重新開始工作。89S51單片機的復位靠外部電路實現,信號
18、由RESET(RST)引腳輸入,高電平有效,在振蕩器工作時,只要保持RST引腳高電平兩個機器周期,單片機即復位。復位后,PC程序計數器的內容為0000H,片內RAM中內容不變。 復位電路一般有上電復位、手動開關復位和自動復位電路3種,如圖3.3所示。而在本次設計中,所使用的復位方式是手動復位方式如圖2.3(a).上電復位電路 (b). 手動復位電路 (c). 自動復位電路圖2.3.單片機復位電路本次設計中使用的復位電路為按鍵復位電路。該電路除具有上電復位功能外,若要復位,只需按圖中的RESET鍵,此時電源VCC經電阻R1分壓,在RESET端產生復位高電平。如圖2.4所示圖2.4復位電路3.4
19、89S51單片機晶振電路 晶振是晶體振蕩器的簡稱,在電氣上它可以等效成一個電容和一個電阻并聯再串聯一個電容的二端網絡,電工學上這個網絡有兩個諧振點,以頻率的高低分其中較低的頻率是串聯諧振,較高的頻率是并聯諧振。由于晶體自身的特性致使這兩個頻率的距離相當的接近,在這個極窄的頻率范圍內,晶振等效為一個電感,所以只要晶振的兩端并聯上合適的電容它就會組成并聯諧振電路。這個并聯諧振電路加到一個負反饋電路中就可以構成正弦波振蕩電路,由于晶振等效為電感的頻率范圍很窄,所以即使其他元件的參數變化很大,這個振蕩器的頻率也不會晶體振蕩器的作用:石英晶體振蕩器也稱石英晶體諧振器,它用來穩定頻率和選擇頻率,是一種可以
20、取代LC諧振回路的晶體諧振元件。即為單片機的操作提供時間基準。89S51單片機內有一高增益反相放大器,振蕩頻率取決于石英晶體的振蕩頻率。范圍可取1.212MHz,本設計中晶振電路所選用的石英晶振頻率為12MHz。如圖2.5所示。圖2.5晶體振蕩電路3.5 ADC0809的功能ADC0809是帶有8位A/D轉換器、8路多路開關以及微處理機兼容的控制邏輯的CMOS組件。它是逐次逼近式A/D轉換器,可以和單片機直接接口。1 ADC0809的內部邏輯結構如圖2.6。圖2.6ADC0809的內部邏輯結構由上圖可知,ADC0809由一個8路模擬開關、一個地址鎖存與譯碼器、一個A/D轉換器和一個三態輸出鎖存
21、器組成。多路開關可選通8個模擬通道,允許8路模擬量分時輸入,共用A/D轉換器進行轉換。三態輸出鎖器用于鎖存A/D轉換完的數字量,當OE端為高電平時,才可以從三態輸出鎖存器取走轉換完的數據。 2引腳結構 IN0IN7:8條模擬量輸入通道 ADC0809對輸入模擬量要求:信號單極性,電壓范圍是05V,若信號太小,必須進行放大;輸入的模擬量在轉換過程中應該保持不變,如若模擬量變化太快,則需在輸入前增加采樣保持電路。A/D轉換由集成電路ADC0809完成。ADC0809具有8路模擬輸入端口,是一種逐近逼近式8路模擬輸入,8位數字量輸出的A/D轉換器。其引腳圖如2.7圖所示。圖2.7ADC0809管腳圖
22、由引腳所見,ADC0809共有28個引腳,采用雙列直插式封裝。ADC0809雖然有8路模擬通道可以同時輸入8路模擬信號,但每個瞬間只能轉換一路,各路之間的切換由軟件變換通道地址來實現。3 ADC0809應用說明 (1) ADC0809內部帶有輸出鎖存器,可以與AT89S51單片機直接相連。 (2) 初始化時,使ST和OE信號全為低電平。 (3) 送要轉換的哪一通道的地址到A,B,C端口上。 (4) 在ST端給出一個至少有100ns寬的正脈沖信號。 (5) 是否轉換完畢,我們根據EOC信號來判斷。 (6) 當EOC變為高電平時,這時給OE為高電平,轉換的數據就輸出給單片機。4其主要引腳功能如下:
23、(1)IN0-IN7是8路模擬信號輸入端;(2)D0-D7是8位數字量輸出端;(3) A、B、C與ALE控制8路模擬通道的切換,A、B、C分別于三根地址線或數據線相連,三者編碼對應8個通道地址口。CBA=000111分別對應IN0IN7通道地址;OE、START、CLK為控制信號端,OE為允許端;START為啟動信號輸入端,CLK為時鐘信號輸入端;VR(+)和VR(-)為參考電壓輸入端。地址線(23- 25腳)可決定對哪一路模擬輸入作A/D轉換。22腳為地址鎖存控制,當輸入為高電平時,對地址信號進行鎖存。6腳為測試控制,當輸入一個2uS寬高電平脈沖時,就開始A/D轉換。7腳為A/D轉換結束標志
24、,當A/D轉換結束時,7腳輸出高電平。9腳為A/D轉換數據輸出允許控制,當OE腳為高電平時,A/D轉換數據從該端口輸出。3.6 鍵盤接口工作原理在單片機應用系統中,常用鍵盤作為輸入設備,通過它將數據、內存地址、命令及指令等輸入到系統中,來實現簡單的人機通信。1、對鍵盤的識別可分為兩類:一是編碼鍵盤,另一個是非編碼鍵盤。后者結構簡單,價格便宜,應用靈活,但需要編制相應的鍵盤管理程序。單片機系統普遍采用非編碼鍵盤方式。非編碼鍵盤可以分為兩種結構形式:獨立式鍵盤和行列式鍵盤。(1) 行列式鍵盤的接口電路:將I/O口線的一部分作為行線,另一部分作為列線,按鍵設置在行線和列線的交叉點上。行列時鍵盤的按鍵
25、的數量可達行線數n乘以列線數m。多用于按鍵較多的場合,可以節省I/O口線。(2) 獨立式鍵盤的接口電路:是直接用I/O線構成單個按鍵電路,每個獨立按鍵單獨占有一根I/O接口線,每根I/O接口線的工作狀態不會影響到其他I/O接口線。這種按鍵接口電路配置靈活,硬件結構簡單,但每個按鍵必須占用一根I/O線,I/O接口線浪費較大。故只在按鍵數量不多時采用這種按鍵電路。不適合在按鍵較多的場合下采用。本設計中用兩個按鍵,故選擇使用獨立式鍵盤。如圖2.8所示。圖2.8獨立式鍵盤2、按鍵開關的去除抖動功能目前,MCS51單片機應用系統上的按鍵常采用機械觸點式按鍵,它在斷開、閉合時輸入電壓波形如圖2.9所示.可
26、以看出機械觸點在閉合及斷開瞬間均有抖動過程,時間長短與開關的機械特性有關,一般為510ms。由于抖動,會造成被查詢的開關狀態無法準確讀出。例如,一次按鍵產生的正確開關狀態,由于鍵的抖動,CPU多次采集到底電平信號,會被誤認為按鍵被多次按下,就會多次進行鍵輸入操作,這是不允許的。為了保證CPU對鍵的一次閉合僅在按鍵穩定時作一次鍵輸入處理,必須消除產生的前沿(后沿)抖動影響。 圖2.9按鍵過程3.7 七段LED顯示工作原理LED顯示器是由發光二極管顯示字段的MCS-51單片機輸出設備。單片機應用系統常采用七段LED數碼管作為顯示器,這重顯示器具有耗電低、配置靈活、線路簡單、安裝方便、耐轉動、價格低
27、廉且壽命長等優點。因此應用比較廣泛。1、LED數碼管顯示器可以分為共陰極和共陽極兩種結構。(1)共陰極結構:如果所有的發光二極管的陰極接在一起,稱為共陰極結構,則數碼顯示段輸入高電平有效,當某段輸入高電平該段便發光,如圖2.10(b)所示 (a)外型結構 (b) .共陰極 (c) .共陽極圖2.10七段LED顯示器(2)共陽極結構:如果所有的發光二極管的陽極接在一起,稱為共陽極結構,則數碼顯示段輸入低平有效,當某段輸入低電平該段便發光,如圖3.7(c)所示2、LED數碼管顯示器有兩種工作方式靜態顯示方式和動態顯示方式。(1) LED靜態顯示方式:靜態驅動也稱直流驅動。靜態驅動是指每個數碼管的每
28、一個段碼都由一個單片機的I/O端口進行驅動,或者使用如BCD碼二-十進制譯碼器譯碼進行驅動。靜態驅動的優點是編程簡單,顯示亮度高,缺點是占用I/O端口多,如驅動5個數碼管靜態顯示則需要5840根I/O端口來驅動,要知道一個89S51單片機可用的I/O端口才32個呢:),實際應用時必須增加譯碼驅動器進行驅動,增加了硬件電路的復雜性。(2) LED動態顯示方式:數碼管動態顯示接口是單片機中應用最為廣泛的一種顯示方式之一,動態驅動是將所有數碼管的8個顯示筆劃a,b,c,d,e,f,g,dp的同名端連在一起,另外為每個數碼管的公共極COM增加位選通控制電路,位選通由各自獨立的I/O線控制,當單片機輸出
29、字形碼時,所有數碼管都接收到相同的字形碼,但究竟是那個數碼管會顯示出字形,取決于單片機對位選通COM端電路的控制,所以我們只要將需要顯示的數碼管的選通控制打開,該位就顯示出字形,沒有選通的數碼管就不會亮。通過分時輪流控制各個數碼管的的COM端,就使各個數碼管輪流受控顯示,這就是動態驅動。在輪流顯示過程中,每位數碼管的點亮時間為12ms,由于人的視覺暫留現象及發光二極管的余輝效應,盡管實際上各位數碼管并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩定的顯示數據,不會有閃爍感,動態顯示的效果和靜態顯示是一樣的,能夠節省大量的I/O端口,而且功耗更低。電路也較靜態顯示方式簡單,單片機系統中
30、常常采用動態顯示方式。本次設計中所使用的就是LED動態顯示。用AT89S51單片機構建七段數碼管動態顯示系統時,4位數碼管均采用共陰極LED。P2口作A/D轉換芯片的使能端的控制,P0口作通過A/D轉換芯片模擬量讀入。P1口和P3口的一部分作4個LED顯示的控制。3.8 電路原理電路的核心是89S51單片機,其內部帶有4KB的FlashROM,無須擴展程序存儲器;電路沒有大量的運算和暫存數據,現有的128B片內RAM已能滿足要求,也不必擴展片外RAM,系統配備4位LED顯示和2個單接口鍵盤,采用P1、P3.2P3.5端口作為4位LED數碼管顯示控制。P3.0端口用作單路顯示/循環顯示轉換按鈕,
31、P3.1端口用作單路顯示時選擇通道。P0端口用作A/D轉換數據讀入。P2端口用作ADC0809 的A/D轉換。其中采集8個通道的模擬量在數碼管顯示出來。模擬量值的測量范圍是0-255,第一個數碼管用于顯示哪一個通道,后三個數碼管用于顯示采集的模擬量的值,每秒鐘顯示切換一下通道本設計還有通道選擇的功能有兩個按鍵,一個S1 是調節輪流顯示和選擇通道兩種功能的轉換,另一個S2是選擇通道的切換。可以測量05CV的8路輸入電壓值,并在4位LED數碼管上輪流顯示或單路選擇顯示。系統除能確保實現要求的功能外,還可以方便地進行8路其他A/D轉換量的測量、遠程測量結果傳送等擴展功能。簡易數字電壓測量電路由A/D
32、轉換、數據處理及顯示控制等組成,電路原理圖如圖3.1所示。1、按鍵要注意的地方:(1) 只有當輪流顯示的通道快顯示到通道8后,長按住S1功能轉換鍵等出現數碼管全熄滅后再放開,就會轉到選擇通道的功能。(2) 切換通道時,也要長按一會S2,等出現數碼管全熄滅后再放開。2、顯示子程序采用動態掃描法實現四位數碼管的數值顯示。測量所得的A/D轉換數據放在70H77H內存單元中,測量數據在顯示時需轉換成10進制BCD碼放在78H7BH單元中,其中7BH存放通道標志數。寄存器R3用作8路循環控制,R0用作顯示數據地址指針。(1)在剛上電時,系統默認為循環顯示8個通道的電壓值狀態。(2) 當進行一次測量后,將
33、顯示每一通道的A/D轉換值,每個通道的數據顯示時間為1S左右。(3) 主程序在調用顯示子程序和測試之程序之間循環。圖3.1 電路原理圖4 軟件設計4.1主程序模塊在軟件設計中,我大致分為四部分。主程序模塊在初始化和按鍵控制、A/D轉換子程序、顯示子程序之間循環。首先將各個分量數據初始化,然后在按鍵子程序對單路/循環和通道選擇進行選擇。通過按鍵對電路的情況的判斷,并且調用A/D循環子程序以及相應的調用顯示子程序進行顯示。如此周而復始的循環,如圖3.2所示圖3.2主程序流程圖4.2 顯示程序模塊顯示程序模塊中采用的動態顯示。針對顯示模塊我分為了兩部分,分別是4位動態顯示子程序和8循環顯示子程序。每
34、次調用顯示模塊時都會相繼調用兩者。經過數據初始化,用查表指令,由位碼來控制那個數碼管顯示,由段碼控來制數碼管顯示什么數值,以及相應的通道值。從第一位到第四位依次點亮,同時每顯示一位都要判斷一次四位顯示完了嗎?沒有顯示完則顯示下一位,顯示完從頭開始循環。如圖3.3(a)所示經過數據初始化取顯示數據,待轉換為三位BCD碼后,調用顯示子程序。之后需要判斷顯示的時間到了嗎?如果沒有到,則需要跳到顯示子程序重新循環;如果時間到了就要增加通道數。接著要繼續判斷8路循環顯示完了嗎?如果沒有顯示完了,則跳到轉換為三位BCD碼開始繼續循環;如果8路顯示完了就結束該子程序返回。如圖3.3(b)所示 圖3.3(a)
35、 4位動態顯示子程序流程圖 圖3.3(b) 8循環顯示子程序流程圖 4.3 A/D轉化子程序A/D轉換子程序每次調用時,都要啟動測試,判斷A./D轉換結束了嗎?如果沒有結束,返回繼續判斷A/D是否結束;如果結束了,就向下執行取數據。之后ADC0809地址加1,判斷地址數小于8嗎?如果地址數小于8時,返回到啟動測試前循環執行程序,直到地址數等于8時,則返回。如圖3.4所示圖3.4A/D轉換子程序流程圖 4.4按鍵子程序模塊在本次設計中,按鍵子程序起到了功能鍵對單路、循環的選擇,以及對通道的選擇。在沒有任何按鍵時按下時,在通上電時,系統自動默認的是循環。調用該子程序時,判斷按鍵S1按下了嗎?沒有按
36、下,8路依次顯示,在判斷8路顯示轉換完了嗎?如果沒有,跳到8路依次顯示繼續判斷;如果8路顯示轉換完了,則跳到按鍵S1繼續判斷其是否按下。如果按鍵S1按下了,則電路轉換成單路顯示。緊接著顯示通道數恢復初始值,按鍵S2按下了嗎?如果沒有按下,繼續顯示單通道,進而跳到按鍵S2處繼續判斷其是否按下;如果按鍵S2按下,通道數加1。通道數等于8嗎?如果通道數等于8時,顯示通道數恢復初始值,返回;如果不等于8,則顯示下一路,之后返回。如圖3.5所示圖3.5 按鍵子程序流程圖5 系統調試5.1 硬件調試(焊接)完成了硬件的設計、制作和軟件編程之后,要使系統能夠按設計意圖正常運行,必須進行系統調試。調試工作主要
37、通過WAVE編譯程序調試軟件進行了單步運行,斷點運行和全速運行,觀察了程序最終輸出的結果,修改了中斷程序的部分內容,使源程序達到了與硬件配合的要求。而且焊接對于整個設計也是很重要的一步,對于焊接的制作做出如下闡述:焊接時一定要注意他人和自己的安全,還有操作中電烙鐵的安全。在焊接時,先焊飛線;先焊元件小的,在焊元件大的;焊接方法有臥焊和立焊兩種,可根據需要適當的選擇;焊接的姿勢要正確,選擇合適自己的手法,我使用的是握筆式的焊接方法;當然,也不排除有時候掌握不好時,焊點大小不一,即焊點的維修。大的要修理,小的要補焊。爭取使焊點達到:大小均勻、圓滑發亮、無虛焊、無毛刺、焊板整潔。5.2 在軟件偉福中
38、的調試偉福6000是用于單片機程序編譯的軟件,現在我介紹偉幅仿真軟件的界面,對仿真器的參數進行設置。如圖3.6所示圖3.6 仿真器的選擇我們所選的是8751的仿真器,在目標生成文件中選擇生成BIN和HEX文件(即二進制和十六進制文件)其設置如圖3.7所示,設置完成后點“好”就可以了。圖3.7 生成文件的設置然后在偉福里面輸入我們的程序進行調試,剛開始有好幾處錯誤我們的程序沒有通過編譯,根據系統的提示查找原因。例如,“0”寫成了“O”,操作碼錯誤;“DISPLAY”錯寫為“DISPAY”符號沒有定義;最后在保存時一定要保存*.ASM的擴展名。然后我就查找錯誤的所在,一一更改之后終于通過編譯,其運
39、行結果如圖3.8所示:圖3.8 編譯通過后的界面5.3 在軟件Keil中的調試在Keil中也要進行一些參數的設置,首先打開Keil仿真軟件,首先要新建一個項目,點菜單ProjectNew Project,在彈出的對話框中選擇保存的路徑并輸入項目名稱“dian yb”后保存,然后在彈出新的項目窗口中選擇參數,其參數的設置如下,由于我們使用的是Atmel公司的芯片,所以要選Atmel后確定。如圖3.9所示:圖3.9參數的設置在彈出的對話框中選擇AT89C51這個芯片,確定。如圖3.10所示:圖3.10選擇AT89C51芯片然后開始設置它的參數值,如圖4.1所示:圖4.1設置參數值在Xtal中輸入頻率
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 情侶買車合同協議書范本
- 骨質疏松醫療匯報健康知識培訓
- 2025年ZRO2陶瓷制品合作協議書
- 肝炎中醫護理查房
- 2025年注射劑類藥品項目建議書
- 水稻中后期田間管理
- 網貸債務共享及風險管理合作協議
- 能源環保商業秘密許可及租賃服務合同
- 年度教育培訓補充協議
- 虛擬偶像虛擬形象授權與商業合作合同
- 班級榮譽與成長模板
- IATF16949-2016體系管理質量手冊(壓鑄鋁合金)
- 超職數配備干部整改方案
- 3.1 歌曲《大海啊故鄉》課件(17張)
- 古詩詞誦讀《客至》課件+2023-2024學年統編版高中語文選擇性必修下冊
- 中考模擬考試實施方案
- 上海市地方標準《辦公樓物業管理服務規范》
- (部編版)統編版小學語文教材目錄(一至六年級上冊下冊齊全)
- 四川省南充市2023-2024學年六年級下學期期末英語試卷
- 物理-陜西省2025屆高三金太陽9月聯考(金太陽25-37C)試題和答案
- 智能化完整系統工程竣工驗收資料標準模板
評論
0/150
提交評論