系統(tǒng)能實(shí)現(xiàn)電壓測(cè)量,檢測(cè)技術(shù)指標(biāo)為:
①測(cè)量范圍為0-10V
②測(cè)量精度:±0.1V
③通過(guò)顯示器進(jìn)行顯示當(dāng)前電壓值,顯示到小數(shù)點(diǎn)后兩位
2.2系統(tǒng)簡(jiǎn)介⑴根據(jù)設(shè)計(jì)要求,選擇AT89C51單片機(jī)為核心控制器件。
⑵A/D轉(zhuǎn)換采用ADC0832實(shí)現(xiàn)。
⑶電壓顯示采用4位一體的LED數(shù)碼管。
⑷LED數(shù)碼的段碼輸入,由并行端口P2產(chǎn)生:位碼輸入,用并行端口P0產(chǎn)生。
2.3方案比較(一)、采用FPGA進(jìn)行設(shè)計(jì)
采用FPGA進(jìn)行設(shè)計(jì)的系統(tǒng)流程圖如圖2-1所示
圖2-1 FPGA設(shè)計(jì)系統(tǒng)流程圖
FPGA內(nèi)部集成鎖項(xiàng)環(huán),可以把外部時(shí)鐘倍頻,核心頻率可以到幾百M(fèi),而單片機(jī)運(yùn)行速度低的多.在高速場(chǎng)合,單片機(jī)無(wú)法代替FPGA。雖然FPGA在頻率范圍和邏輯實(shí)現(xiàn)方面要高出單片機(jī)一塊。但是由于沒(méi)有指令系統(tǒng),所以控制和運(yùn)算能力比較弱。
(二)、采用單片機(jī)控制
采用單片機(jī)進(jìn)行設(shè)計(jì)的系統(tǒng)流程圖如圖2-2所示
圖2-2 單片機(jī)設(shè)計(jì)系統(tǒng)流程圖
數(shù)字電壓表的一種設(shè)計(jì)方案是以單片機(jī)為核心操作系統(tǒng), 硬件電路設(shè)計(jì)由6個(gè)部分組成; A/D轉(zhuǎn)換電路,AT89C51單片機(jī)系統(tǒng),LED顯示系統(tǒng)、時(shí)鐘電路、復(fù)位電路以及測(cè)量電壓輸入電路。 應(yīng)用單片機(jī)操作系統(tǒng)的好處是能準(zhǔn)確有效的輸入電壓值、操作簡(jiǎn)單、技術(shù)成熟、算法較為靈活、成本費(fèi)用低。
單片機(jī)片內(nèi)結(jié)構(gòu)如圖3-1所示:
圖3-1 單片機(jī)片內(nèi)結(jié)構(gòu)
3.2 ADC0832轉(zhuǎn)換器簡(jiǎn)介
圖3-2 ADC0809
芯片接口說(shuō)明如下:
CS_ 片選使能,低電平芯片使能。
CH0 模擬輸入通道0,或作為IN+/-使用。
CH1 模擬輸入通道1,或作為IN+/-使用。
GND 芯片參考0 電位(地)。
DI 數(shù)據(jù)信號(hào)輸入,選擇通道控制。
DO 數(shù)據(jù)信號(hào)輸出,轉(zhuǎn)換數(shù)據(jù)輸出。
CLK 芯片時(shí)鐘輸入。
Vcc/REF 電源輸入及參考電壓輸入(復(fù)用)。
工作原理如下:
圖3-3 時(shí)鐘電路
3.4 復(fù)位電路圖3-4 復(fù)位電路
3.5 LED顯示電路顯示字符 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
共陽(yáng)極段碼 | 0x03 | 0x9f | 0x25 | 0x0d | 0x99 | 0x49 | 0x41 | 0x1f | 0x01 | 09 |
表1
4 軟件程序設(shè)計(jì)Keil是德國(guó)知名軟件公司Keil (現(xiàn)已并入ARM公司)開(kāi)發(fā)的微控制器軟件開(kāi)發(fā)平臺(tái),是目前ARM內(nèi)核單片機(jī)開(kāi)發(fā)的主流工具。KEIL提供了包括C編譯器、宏匯編、連接器、庫(kù)管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器在內(nèi)的完整開(kāi)發(fā)方案,通過(guò)-一個(gè)集成開(kāi)發(fā)環(huán)境( uVision )將這些功能組合在一起。 uVision當(dāng)前最 高版本是uVision3,它的界面和常用的微軟VC+ +的界面相似,界面友好,易學(xué)易用,在調(diào)試程序,軟件仿真方面也有很強(qiáng)大的功能。因此很多開(kāi)發(fā)ARM應(yīng)用的工程師,都對(duì)它十分喜歡。
使用Keil來(lái)開(kāi)發(fā)嵌入式軟件,開(kāi)發(fā)周期和其他的平臺(tái)軟件開(kāi)發(fā)周期是差不多的,大致有以下幾個(gè)步驟:
1.創(chuàng)建一個(gè)工程,選擇一塊目標(biāo)芯片,且做一些必要的工程配置。
2.編寫(xiě)C或者匯編源文件。
3.編譯應(yīng)用程序。
4.修改源程序中的錯(cuò)誤。
5.聯(lián)機(jī)調(diào)試。
Proteus是英國(guó)Labcenter公司的電路分析與實(shí)物仿真軟件,可以仿真分析(Spice)各種模擬器件和集成電路,該軟件的特點(diǎn)是:
(1)實(shí)現(xiàn)了單片機(jī)仿真和Spice電路仿真相結(jié)合。具有模擬電路仿真數(shù)字電路仿真鄲機(jī)及其外圍電路組成的系統(tǒng)的仿真RS 232動(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)試功能。在硬件仿真系統(tǒng)中具有全速、步設(shè)置斷點(diǎn)等調(diào)試功能,同時(shí)可以觀察各個(gè)變量、存器等的當(dāng)前狀態(tài),因此在該軟件仿真系統(tǒng)中,也必須具有這些功能;同時(shí)支持第三方的軟件編譯和調(diào)試環(huán)境,如Keil C51 μVision 2等軟件。
(4)具有強(qiáng)大的原理圖繪制功能。啟動(dòng)Proteus后將出現(xiàn)ISIS的設(shè)計(jì)窗口 ,如圖1所示。包括:標(biāo)題欄、主菜單、標(biāo)準(zhǔn)工具欄、繪圖工具欄、狀態(tài)欄、對(duì)象選擇按鈕、預(yù)覽對(duì)象方位控制按鈕、仿真進(jìn)程控制按鈕(最下面一行)、 預(yù)覽窗口、對(duì)象選擇器窗口、圖形編輯窗口。
4.2軟件設(shè)計(jì)流程圖4.2.1程序設(shè)計(jì)總方案根據(jù)模塊的劃分原則,將該程序劃分初始化模塊,A/D轉(zhuǎn)換子程序和顯示子程序,這三個(gè)程序模塊構(gòu)成了整個(gè)系統(tǒng)軟件的主程序,如圖4-1所示。
圖4.1 數(shù)字式直流電壓表主程序框圖
4.2.2 系統(tǒng)子程序設(shè)計(jì)(一)初始化程序
所謂初始化,是對(duì)將要用到的51系列單片機(jī)內(nèi)部部件或擴(kuò)展芯片進(jìn)行初始工作狀態(tài)設(shè)定,初始化子程序的主要工作是設(shè)置定時(shí)器的工作模式,初值預(yù)置,開(kāi)中斷和打開(kāi)定時(shí)器等。
(二)AD轉(zhuǎn)換子程序
A/D轉(zhuǎn)換子程序用來(lái)控制對(duì)輸入的模塊電壓信號(hào)的采集測(cè)量,并將對(duì)應(yīng)的數(shù)值存入相應(yīng)的內(nèi)存單元,其轉(zhuǎn)換流程圖如圖4-2所示。
圖4-2 AD轉(zhuǎn)換子程序
(三) 顯示子程序
顯示子程序采用動(dòng)態(tài)掃描實(shí)現(xiàn)四位數(shù)碼管的數(shù)值顯示,在采用動(dòng)態(tài)掃描顯示方式時(shí),要使得LED顯示的比較均勻,又有足夠的亮度,需要設(shè)置適當(dāng)?shù)膾呙桀l率,當(dāng)掃描頻率在70HZ左右時(shí),能夠產(chǎn)生比較好的顯示效果,一般可以采用間隔10ms對(duì)LED進(jìn)行動(dòng)態(tài)掃描一次,每一位LED的顯示時(shí)間為1ms。
在本設(shè)計(jì)中,為了簡(jiǎn)化硬件設(shè)計(jì),主要采用軟件定時(shí)的方式,即用定時(shí)器0溢出中斷功能實(shí)現(xiàn)11μs定時(shí),通過(guò)軟件延時(shí)程序來(lái)實(shí)現(xiàn)5ms的延時(shí)。顯示子程序流程圖如圖4-3所示。
圖4-3 顯示子程序流程圖
在系統(tǒng)上電開(kāi)始測(cè)量前,要用萬(wàn)用表的電壓檔對(duì)被測(cè)電壓進(jìn)行估測(cè),然后以此選擇適當(dāng)?shù)牧砍,防止過(guò)大電壓燒壞A/D轉(zhuǎn)換器。首先用萬(wàn)用表按照原理圖逐步檢查中各器件的電源及各引腳的連接是否正確,有否斷路、短路或者虛焊,尤其是給電路供電的電源部分需重點(diǎn)檢查,用數(shù)字萬(wàn)用表測(cè)量0832輸出端的電壓是否是+10V,是否穩(wěn)定,能夠輸出+10V,且穩(wěn)定即可說(shuō)明電源電路的設(shè)計(jì)基本達(dá)到目的要求。如果電壓沒(méi)有達(dá)到預(yù)期要求,要及時(shí)排查解決,以免燒壞芯片和其他元器件。
軟件調(diào)試時(shí)先進(jìn)行單元測(cè)試,分別對(duì)各個(gè)代碼模塊進(jìn)行測(cè)試,看其是否實(shí)現(xiàn)了規(guī)定功能,再把已經(jīng)測(cè)試過(guò)的模塊組合起來(lái)進(jìn)行調(diào)試,一旦不能正確運(yùn)行,要找出程序中的代碼錯(cuò)誤,確定大致的錯(cuò)誤位置,研究有關(guān)部分的錯(cuò)誤程序,找出錯(cuò)誤的原因,修改設(shè)計(jì)和代碼,以排除故障。
我們?cè)诔绦蚓帉?xiě)完成后,就能利用仿真器初步調(diào)試,觀察在計(jì)算機(jī)里能否通過(guò)編譯與運(yùn)行并且達(dá)到設(shè)計(jì)的基本要求。在基本符合的情況下,利用仿真器和工作正常的硬件連接進(jìn)行仿真調(diào)試;或用編程器把程序燒寫(xiě)到芯片中,直接觀察能否正常運(yùn)行。如果達(dá)不到設(shè)計(jì)要求或者不能正常運(yùn)行,能直接在程序中進(jìn)行編譯和修改。
系統(tǒng)調(diào)試中遇到的問(wèn)題及解決的方法:
1)在應(yīng)用濾波電容的過(guò)程中,開(kāi)始時(shí)是把電容串聯(lián)在電路中,導(dǎo)致電路無(wú)法導(dǎo)通,而后我們短路電容,解決了問(wèn)題。
2)電源指示燈上,一開(kāi)始發(fā)現(xiàn)接上電源,指示燈不亮,經(jīng)過(guò)儀器測(cè)量發(fā)現(xiàn)正負(fù)極接反,后重新焊接。
3)由于源程序的多處錯(cuò)誤,使得仿真無(wú)法通過(guò),后經(jīng)過(guò)單步調(diào)試,把存在的錯(cuò)誤一一排除,通過(guò)了軟件仿真。
4)在燒錄芯片的過(guò)程中,由于選擇燒錄文件的錯(cuò)及芯片質(zhì)量的問(wèn)題(因多次燒錄,無(wú)法再次燒錄)使得燒錄失敗,后經(jīng)過(guò)查閱資料并且更換了AT89C51芯片,解決了問(wèn)題。
系統(tǒng)原理圖如圖5-1所示
圖5-1 系統(tǒng)原理圖
5.2軟件調(diào)試
圖5-2 仿真結(jié)果圖
6 總結(jié)經(jīng)過(guò)一段時(shí)間的努力,基于單片機(jī)的簡(jiǎn)易數(shù)字電壓表基本完成。但設(shè)計(jì)中的不足之處仍然存在。這次設(shè)計(jì)是我第一次設(shè)計(jì)電路,并用Proteus實(shí)現(xiàn)了仿真。在這過(guò)程中,我對(duì)電路設(shè)計(jì),單片機(jī)的使用等都有了新的認(rèn)識(shí)。通過(guò)這次設(shè)計(jì)學(xué)會(huì)了Proteus和Keil軟件的使用方法,掌握了從系統(tǒng)的需要、方案的設(shè)計(jì)、功能模塊的劃分、原理圖的設(shè)計(jì)和電路圖的仿真的設(shè)計(jì)流程,積累了不少經(jīng)驗(yàn)。
基于單片機(jī)的數(shù)字電壓表使用性強(qiáng)、結(jié)構(gòu)簡(jiǎn)單、成本低、外接元件少。在實(shí)際應(yīng)用工作應(yīng)能好,測(cè)量電壓準(zhǔn)確,精度高。系統(tǒng)功能、指標(biāo)達(dá)到了課題的預(yù)期要求、系統(tǒng)在硬件設(shè)計(jì)上充分考慮了可擴(kuò)展性,經(jīng)過(guò)一定的改造,可以增加功能。本文設(shè)計(jì)主要實(shí)現(xiàn)了簡(jiǎn)易數(shù)字電壓表測(cè)量一路電壓的功能,詳細(xì)說(shuō)明了從原理圖的設(shè)計(jì)、電路圖的仿真再到軟件的調(diào)試。
通過(guò)本次設(shè)計(jì),我對(duì)單片機(jī)這門(mén)課有了進(jìn)一步的了解。無(wú)論是在硬件連接方面還是在軟件編程方面。本次設(shè)計(jì)采用了AT89C51單片機(jī)芯片,與以往的單片機(jī)相比增加了許多新的功能,使其功能更為完善,應(yīng)用領(lǐng)域也更為廣泛。設(shè)計(jì)中還用到了模/數(shù)轉(zhuǎn)換芯片ADC0832,以前在學(xué)單片機(jī)時(shí)只是對(duì)其理論知識(shí)有了初步的理解。通過(guò)這次設(shè)計(jì),對(duì)它的工作原理有了更深的理解。在調(diào)試過(guò)程中遇到很多問(wèn)題,硬件上的理論知識(shí)學(xué)得不夠扎實(shí),對(duì)電路的仿真方面也不夠熟練。
總之這次電路的設(shè)計(jì)和仿真,基本上達(dá)到了設(shè)計(jì)的功能要求。在以后的實(shí)踐中,我將繼續(xù)努力學(xué)習(xí)電路設(shè)計(jì)方面的理論知識(shí),并理論聯(lián)系實(shí)際,爭(zhēng)取在電路設(shè)計(jì)方面能有所提升。
通過(guò)這次設(shè)計(jì),使我深入了解了AT89C51單片機(jī)和ADC0832(A\D轉(zhuǎn)換器)的結(jié)構(gòu)和特點(diǎn)及數(shù)字電壓表的工作原理,加深了對(duì)課本理論知識(shí)的理解,鍛煉了實(shí)踐動(dòng)手能力,理論知識(shí)與實(shí)踐設(shè)計(jì)相結(jié)合,培養(yǎng)了創(chuàng)新開(kāi)發(fā)的思維。在此次設(shè)計(jì)中,收獲知識(shí)的同時(shí),我還收獲了閱歷。在此過(guò)程中,我們通過(guò)查找資料,以及不懈的努力,不僅培養(yǎng)了獨(dú)立思考、動(dòng)手操作的能力,在各種其它能力上也都有了提高。
在電量的測(cè)量中,電壓、電流和頻率是最基本的三個(gè)被測(cè)量,其中電壓量的測(cè)量最為經(jīng)常。而且隨著電子技術(shù)的發(fā)展,更是經(jīng)常需要測(cè)量高精度的電壓,所以數(shù)字電壓表就成為一種必不可少的測(cè)量?jī)x器。數(shù)字電壓表簡(jiǎn)稱DVM,它是采用數(shù)字化測(cè)量技術(shù),把連續(xù)的模擬量轉(zhuǎn)換成不連續(xù)、離散的數(shù)字形式并加以顯示的儀表。由于數(shù)字式儀器具有讀數(shù)準(zhǔn)確方便、精度高、誤差小、測(cè)量速度快等特而得到廣泛應(yīng)用。
傳統(tǒng)的指針式刻度電壓表功能單一,進(jìn)度低,容易引起視差和視覺(jué)疲勞,因而不能滿足數(shù)字化時(shí)代的需要。采用單片機(jī)的數(shù)字電壓表,將連續(xù)的模擬量如直流電壓轉(zhuǎn)換成不連續(xù)的離散的數(shù)字形式并加以顯示,從而精度高、抗干擾能力強(qiáng),可擴(kuò)展性強(qiáng)、集成方便,還可與PC實(shí)時(shí)通信。數(shù)字電壓表是諸多數(shù)字化儀表的核心與基礎(chǔ)。以數(shù)字電壓表為核心,可以擴(kuò)展成各種通用數(shù)字儀表、專用數(shù)字儀表及各種非電量的數(shù)字化儀表。目前,由各種單片機(jī)和A/D轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表作全面深入的了解是很有必要的。
最近的幾十年來(lái),隨著半導(dǎo)體技術(shù)、集成電路(IC)和微處理器技術(shù)的發(fā)展,數(shù)字電路和數(shù)字化測(cè)量技術(shù)也有了巨大的進(jìn)步,從而促使了數(shù)字電壓表的快速發(fā)展,并不斷出現(xiàn)新的類型。數(shù)字電壓表從1952年問(wèn)世以來(lái),經(jīng)歷了不斷改進(jìn)的過(guò)程,從最早采用繼電器、電子管和形式發(fā)展到了現(xiàn)在的全固態(tài)化、集成化(IC化),另一方面,精度也從0.01%-0.005%。
目前,數(shù)字電壓表的內(nèi)部核心部件是A/D轉(zhuǎn)換器,轉(zhuǎn)換的精度很大程度上影響著數(shù)字電壓表的準(zhǔn)確度,因而,以后數(shù)字電壓表的發(fā)展就著眼在高精度和低成本這兩個(gè)方面。
本文是以簡(jiǎn)易數(shù)字直流電壓表的設(shè)計(jì)為研究?jī)?nèi)容,本系統(tǒng)主要包括三大模塊:轉(zhuǎn)換模塊、數(shù)據(jù)處理模塊及顯示模塊。其中,A/D轉(zhuǎn)換采用ADC0832對(duì)輸入的模擬信號(hào)進(jìn)行轉(zhuǎn)換,控制核心AT89C51再對(duì)轉(zhuǎn)換的結(jié)果進(jìn)行運(yùn)算處理,最后驅(qū)動(dòng)輸出裝置LED顯示數(shù)字電壓信號(hào)。
背景及意義
眾所周知,在當(dāng)今的社會(huì)中電已成為人們?nèi)粘Ia(chǎn),生活中一個(gè)必不可缺的因素。電的發(fā)現(xiàn)和應(yīng)用極大的節(jié)省了人類的體力勞動(dòng)和腦力勞動(dòng),使人類的力量長(zhǎng)上了翅膀,使人類的信息觸角不斷延伸。而在這其中,電壓,電流等已成為描述電的一-些重要參數(shù)。
在電氣測(cè)量中,電壓是一個(gè)很重要的參數(shù)。如何準(zhǔn)確地測(cè)量模擬信號(hào)的電壓值,一直是電測(cè)儀器研究的內(nèi)容之一。數(shù)字電壓表是通用儀器中使用較廣泛的種測(cè)試儀器,很多電量或非電量經(jīng)變化后都用可數(shù)字電壓表完成測(cè)試。目前,由各種單片A/D轉(zhuǎn)換器構(gòu)成的數(shù)字電壓表,已被廣泛用于電子及電工測(cè)量、工業(yè)自動(dòng)化儀表、自動(dòng)測(cè)試系統(tǒng)等智能化測(cè)量領(lǐng)域,顯示出強(qiáng)大的生命力。
這個(gè)課題的目的和意義在于使自己掌握對(duì)數(shù)字電壓表的理解,自己動(dòng)手設(shè)計(jì)數(shù)字電壓表與仿真,它可以廣泛的應(yīng)用于電壓測(cè)量外,通過(guò)各種變換器還可以測(cè)量其它電量和非電量,測(cè)量是一種認(rèn)識(shí)過(guò)程嗎,就是用實(shí)驗(yàn)的方法將被測(cè)量和被選用的相同參量進(jìn)行比較,從而確定它的大小。DVM廣泛應(yīng)用于測(cè)量領(lǐng)域每期測(cè)量的準(zhǔn)確度和可信度取決于它的主要性能和技術(shù)指標(biāo)。所以我們要學(xué)習(xí)和掌握如何設(shè)計(jì)DVM就顯得十分重要。
歡迎光臨 (http://www.torrancerestoration.com/bbs/) | Powered by Discuz! X3.1 |