鄒 玲,張紅娟
(湖北工業(yè)大學電氣工程學院,湖北武漢 430068)
一種基于STC10F08XE的數(shù)字電壓表設計
鄒 玲,張紅娟
(湖北工業(yè)大學電氣工程學院,湖北武漢 430068)
圍繞數(shù)字電壓表的A/D轉換、數(shù)據(jù)處理、顯示和按鍵控制、通信等模塊進行分析。其中A/D轉換器采用芯片CS5460A對輸入信號進行轉換,并通過控制核心芯片STC10F08XE對轉換的結果進行運算和處理,并驅動數(shù)顯裝置輸出數(shù)字電壓信號。同時可以通過按鍵修改參數(shù)并進行設置。
STC10F08XE;A/D轉換;CS5460A;數(shù)字電壓表
隨著電子技術的高速發(fā)展,數(shù)字電壓表已成為一種必不可少的測量儀器,廣泛運用于電子、電工測量,自動化計測系統(tǒng)等領域。本設計是在以單片機STC10F08XE為控制中心的基礎上設計的數(shù)字電壓表,硬件電路簡易,具有方便讀數(shù),使用誤差小,穩(wěn)定性好等特點,對于日常的簡單測量具有較高的應用價值。
本設計通過對數(shù)字電壓表的功能要求進行分析,可以將其分為A/D轉換模塊、單片機控制模塊、顯示模塊、按鍵模塊和通信模塊五部分。A/D轉換模塊采用CS5460A作為轉換芯片[1],其作用是對待測電壓進行采樣分析,將模擬信號轉換成24位的二進制數(shù),并通過端口P3.5和P3.6將二進制數(shù)送至單片機控制模塊。單片機控制模塊的核心采用STC10F08XE,其作用是對A/D轉換模塊傳輸來的數(shù)據(jù)進行分析處理,從而驅動顯示模塊的數(shù)碼管對測量結果進行顯示[2]。系統(tǒng)設計框圖見圖1。
圖1 數(shù)字電壓表系統(tǒng)框圖
2.1 單片機控制電路
用單片機STC10F08XE作為系統(tǒng)主控電路部分(單片機控制電路見圖2),可以將CS5460A所采集到的數(shù)據(jù)進行運算和控制,并對數(shù)碼管及按鍵進行控制,它可以在提高精度的同時使控制電路變得簡單,并且有利于實現(xiàn)對數(shù)據(jù)的交換和智能化控制。
圖2 單片機控制電路
2.2 A/D轉換電路
本文采用的A/D轉換芯片是CS5460A(A/D采樣電路見圖4),該芯片是高度集成的ΔΣ模擬-數(shù)字轉換器,它將兩個ΔΣA/D,高速能量計算功能和一個串行接口集成在一個單芯片上[3]。它用于精確測量和計算:單相2線或3線功率表的能量,瞬間功率,IRMS和VRMS。CS5460A可以使用低成本的分流器或互感器測量電壓或電流。本文采用2mA∶2mA的電流型精密微型電壓互感器(電壓互感電路見圖3),輸入輸出電流比為1∶1,由于輸入電壓為20VAC,因此將電壓互感器的二次側電阻R28的阻值設為20K,這樣就能夠保證留有足夠的余量,避免器件被燒壞。在給CS5460A的電壓采樣通道輸入信號時,將電阻R1設為51Ω,這是因為CS5460A電壓采樣通道的輸入信號范圍是0~250 mV,而最大的不飽和正弦波電壓輸入信號的典型值應為250mV/sqrt(2)=176.78mV,為了避免超出滿量程的70.7%,將R1設為51Ω。
圖3 電壓互感電路
圖4 CS5460A電路
2.3 按鍵和顯示電路
本文采用了四位共陽極數(shù)碼管,其中P0口控制數(shù)碼管的段碼設置,位碼分別通過P4.1,P4.4,P4.5和P4.6口控制,可以顯示出所測量的數(shù)值。四個按鍵set,left,up和down鍵則是對電壓表進行參數(shù)設置,分別通過P2.4,P2.5,P2.6和P2.7控制。其電路原理見圖5。
圖5 按鍵和顯示電路
2.4 通信電路
本設計以單片機自帶的異步通信接口,外接75176芯片轉換成485總線。為了實現(xiàn)總線與單片機系統(tǒng)的隔離,在單片機的異步通信口與75176之間采用光耦隔離。電路原理見圖6。通過P4.3口對485通信進行控制[4]。當P4.3口為低電平時,為讀狀態(tài)。本設計默認的波特率為4 800bps,可以通過按鍵修改波特率,其通信協(xié)議見表1。
表1 通信協(xié)議
圖6 RS485接口通信電路
3.1 A/D的初始化程序和數(shù)據(jù)采樣的讀取程序
CS5460A在工作前必須進行系統(tǒng)初始化,選擇K為1,N為4000,電壓有效值的計算以1Hz的頻率進行計算,每個計算周期結束后,最新的值將存入相應的寄存器中,等待MCU進行讀取。CS5460A與單片機接口簡單,但初始化的寄存器命令較多,在初始化時需要特別注意。在初始化編程中,可以分模塊進行編程,使用時調(diào)用,并進行調(diào)試,這樣可確保程序運行的準確可靠。CS5460A的初始化程序見圖7。圖8則為CS5460A的數(shù)據(jù)采集子程序,在采集數(shù)據(jù)前,都需要對CS5460A進行讀/寫,在讀/寫程序之前,都需向CS5460A發(fā)送8字節(jié)的命令字,CS5460A根據(jù)所發(fā)的命令字判斷是讀或寫操作,當判別完成后,發(fā)送24字節(jié)的數(shù)據(jù)位給單片機,再通過發(fā)送命令來計算有效值,并通過單片機讀出所發(fā)出的數(shù)據(jù)。
圖7 CS5460A初始化流程圖
圖8 數(shù)據(jù)采集子程序
3.2 按鍵程序
圖9為按鍵子程序,當按下set鍵大于3S后,則進入密碼設置子目錄中,通過left,up和down鍵輸入1111,進入各種參數(shù)設置,可以重新設置密碼,電壓的變比PT,實現(xiàn)寬范圍的測量,以及電壓的上下限報警,波特率和通信地址的修改。
圖9 按鍵子程序
測試結果如表2所示,通過對表中結果的分析,測量的精度較高,穩(wěn)定性強,誤差小于0.2%。該電壓表的最大輸入電壓為20VAC,并可以通過調(diào)節(jié)電壓變比,進行寬范圍測量,現(xiàn)已將該電路做成成品,廣泛應用于測量交流電壓。
表2 電壓表測試數(shù)據(jù)表V
本設計是以單片機STC10F08XE為控制核心,CS5460A為A/D轉換芯片,四位數(shù)碼管顯示的四位交流數(shù)字電壓表,使用誤差在0.2%左右,電路設計簡潔、使用方便、測量靈敏度高、精度可靠,適用于交流電壓的測量,具有一定的使用價值,現(xiàn)已投入生產(chǎn)。實物見圖10所示。
圖10 電壓表實物圖
[1] 郝建國,鄭 燕,薛延俠.單片機在電子電路設計中的應用[M].北京:清華大學出版社,2006:258-295.
[2] 唐彬夏,許建明.基于單片機的數(shù)字電壓表設計[J].設計與應用,2013(01):132.
[3] 徐小軍,陳躍東.基于CS5460A的三相智能電能表的設計[J].安徽工程科技學院學報,2010,25(03):27-30.
[4] 余旺新.RS485遠程通信電路系統(tǒng)設計[J].計算機與網(wǎng)絡,2009(10):621-622.
[責任編校:張巖芳]
The Design of a Digital Voltmeter Based on a MCU of STC10F08XE
ZOU Ling,ZHANG Hong-juan
(School of Electrical﹠Electronic Engin.,Hubei Univ.of Tech.,Wuhan 430068,China)
This study analysed the digital voltmeter including A/D conversion,data processing,display and button control and communication.The A/D converter adopted chip CS5460Ato transform the input signal,and computed and processed the results of A/D conversion by controlling the core chip STC10F08XE,and drove the digital display device output voltage signal.At the same time,the parameters could be modified by set buttons.This voltmeter has high accuracy,reliable performance and low cost.
STC10FXE;A/D conversion;CS5460A;digital voltmeter
TH7
A
1003-4684(2014)01-0016-04
2013-08-29
鄒 玲(1962-),女,湖北武漢人,湖北工業(yè)大學教授,研究方向為電磁場數(shù)值計算與電網(wǎng)絡分析