趙巧妮(1.西南交通大學,四川成都,610031;2.湖南鐵道職業技術學院,湖南株洲,412001)
?
基于Proteus 仿真軟件的DVM電路的仿真與設計
趙巧妮1,2
(1.西南交通大學,四川成都,610031;2.湖南鐵道職業技術學院,湖南株洲,412001)
摘要:基于AT89C51單片機設計的數字電壓表,可測試0—5V的電壓值。電路采用AD轉換芯片ADC0809將模擬測試電壓信號轉換為數字信號,并送入單片機中處理后,結合Proteus仿真軟件在四位LED數碼管上顯示被測的電壓值。
關鍵詞:AT89C51 ADC0809 Proteus 數字電壓表
Proteus軟件是英國Lab Center Electronics公司出版的EDA工具軟件,由于其仿真功能的強大,是目前較好的仿真單片機及其外圍期間的工具。
數字電壓表,簡稱DVM,是如今應用極為廣泛、高性能價格比,廣受測試工作者歡迎的最基本電子測量儀器。數字電壓表具有高準確度、高可靠性、高分辨率、高性價比的優良特性,得到了人們的喜愛。利用Proteus仿真軟件結合keil編程軟件設計一款數字電壓表,可直觀的顯示出被測電壓的大小。
(1)直流電壓:0—5V
(2)轉換時間:100us
(3)精度:0.02V

圖1 電路系統框圖
將要待測的模擬電壓信號轉換為數字信號并準確顯示在LED顯示屏上,需要單片機最小系統電路(單片機、時鐘電路、復位電路)、顯示電路和A/D轉換電路,如圖1所示。
硬件電路圖如圖2所示,包括了最小系統電路、顯示電路、A/D轉換電路。
3.1 最小系統電路
單片機的最小系統電路包括時鐘電路、復位電路,時鐘電路由如圖2中的單片機AT89C51、電容(C1、C2)、晶振X1構成,晶振振蕩頻率為12M,為單片機提供工作時鐘,則單片機工作的機器周期為1uS。
復位電路由圖2中的電阻Rf、電容C3和按鍵組成。按下按鍵則手動給單片機復位,上電后通過電阻Rf、電容C3分壓給單片機的 9腳輸入高電平復位信號,即滿足上電復位條件,保證單片機能正常工作。
3.2 A/D轉換電路
A/D轉換電路是數字電壓表的核心部分,A/D轉換需要經過采樣、保持、量化和編碼四個步驟,選擇的A/D芯片決定了數字電壓表的測試指標,依據指標選擇ADC0808轉換芯片來完成AD轉換工作。
ADC0808有8個模擬量的輸入端IN0~IN7,可由3個通道地址選擇輸入ADDC~ADDC依次編碼決定哪個輸入端有效。
每次模擬轉換完成后輸出8位數字量D0~D7,送入單片機的P0口,這個位數8決定了數字電壓表的精度,計算如下:
精度=最大值/2N=5/28=0.019(V)
對比設定要求的精度要求,符合要求。
AD0808芯片的時鐘端CLK頻率取值范圍為10KHZ~1280KHZ,頻率的值決定了AD轉換的時間,將時鐘頻率設為12.5KHz,即周期為80uS,半個周期為40 uS。可用單片機的定時器TO來給ADC0809做時鐘信號,定時器TO定時40 uS ,經74LS74D觸發器的輸入端D與/Q相連,二分頻后輸出頻率為12.5KHz的時鐘信號,通過單片機的P3.3口輸出。
啟動A/D轉換端START接P3.0口,轉換結束信號端EOC接P3.2口,輸出允許信號端OE接P3.1口,通道地址鎖存允許信號端ALE接START接P3.0K口。
A/D轉換電路由ADC0809轉換芯片、74LS74D觸發器、模擬電壓信號RV1構成,如圖2所示,芯片接5V的電源電壓。
3.3 顯示電路
為了節省成本,顯示電路選用4位一體的共陽數碼管來顯示測量的電壓值,單片機的I/O口不能直接驅動數碼管,所以用4 個NPN三極管Q1--Q4來做驅動電路。數碼管的引腳較多,不能直接與單片機的I/O口連接,故數碼管的顯示利用人眼的惰性采用動態掃描分時顯示。
數碼管4個公共端1,2,3,4 分別接驅動電路中三極管中的發射極,單片機的P2.4—P2.7接三極管驅動電路的基極,為數碼管電路的位控端。當P2.4—P2.7中任意端為輸出高電平時,對應三極管Q1—Q4導通,數碼管的公共端為高電平,即數碼管的共陽數碼管的位控端有效,其中一位數碼管顯示相應的數字,其對應電路圖如圖2中所示。
軟件設計包括主程序和各個子程序。主程序包含初始化部分,調用A/D轉換子程序,調用數據處理子程序和調用顯示子程序,初始化部分包含存通道數據緩沖區初始化和顯示緩沖區初始化。主程序流程圖如圖3所示。各個子程序中A/D轉換為核心部分,流程圖如圖4所示。
4.1 主程序流程圖
4.2 A/D轉換步驟

圖2 硬件電路圖
(1)初始化:使ST和OE信號全為低電平。
(2)設置ADC0809的IN0為通道地址;
(3)在ST端給出一個至少有100ns寬的正脈沖信號。
(4)A/D轉換是否完畢:當EOC變為高電平時,轉換完畢,此時給OE為高電平,轉換的數據就輸出給單片機。
采集電壓從0-5V連續變化,記錄被測試電壓的顯示數值,記錄在表格1中。部分仿真結果如圖5所示。
表1 仿真結果測試表


圖3 主程序流程圖

圖4 A/D子程序流程圖
將測試值對比仿真結果可知,誤差較小,系統較穩定。驗證了單片機AT89C51為核心控制器結合ADC0809轉 換 器設計的數字電壓表電路是正確可行的。該系統的數字電壓表電路簡單,所用的元件較少,成本低。
參考文獻
[1] 王瑾 基于Proteus的數字電壓表仿真設計.電子設計工程[J]2013.1︰122-124
[2]朱曉玲 直流數字電壓表設計與Proteus應用.通信電源技術[J] 2012.3︰
[3] 劉楊俊 基于Proteus和PLD的數字電壓表的設計.電氣電子教學學報[J] 2010.8︰49-51
[4] 朱清慧 基于Proteus的全硬件LED數字電壓表設計與仿真液晶與顯示[J] 2016.3︰296-300
[5] 王永祥 雙通道數據采集數字電壓表的Proteus仿真設計 自動化與儀器儀表 [J] [J]2015.12︰182(185)
Design and Simulation of DVM circuit based Proteus
Zhao Qiaoni1,2
(1.SouthWest JiaoTong University,Si Chuan,Chengdu,610031;2.Hunan Railway Professional Technology College,Zhuzhou,412001)
Abstract:The digital voltmeter is designed by AT89C51 single-chip,which can test the voltage of 0-5V.It is used AD converter chip ADC0809 to transform analog signal into digital signal.The digital signal is sent into the microcontroller to be processed and is displayed on four LED digital with the Proteus simulation software.
Keywords:AT89C51;ADC0809;Proteus;DVM
中圖分類號:TP 319
文獻標識碼B
基金項目:湖南省教育廳課題:基于模糊控制的機車雨刮控制器的設計(14C0754)
作者簡介
趙巧妮 女,生于1982年,湖南鐵道職業技術學院講師,學歷研究生,研究方向為電子技術,傳感器技術

圖5 部分仿真測試結果