• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于STC15單片機的高精度頻率計設(shè)計

    2018-01-02 08:44:58李一民邵玉斌楊道福
    軟件 2017年12期
    關(guān)鍵詞:頻率計晶振計數(shù)器

    齊 宣,李一民,邵玉斌,龍 華,楊道福

    (昆明理工大學 信息工程與自動化學院,云南 昆明 650504)

    基于STC15單片機的高精度頻率計設(shè)計

    齊 宣,李一民,邵玉斌,龍 華,楊道福

    (昆明理工大學 信息工程與自動化學院,云南 昆明 650504)

    本文提出一種基于STC15W4K48S4單片機的高精度數(shù)字頻率計的設(shè)計方法,內(nèi)部軟件設(shè)計采用多周期同步測量法實現(xiàn),設(shè)計中對測量的數(shù)據(jù)進行相應的調(diào)整減少誤差。由于采用了32 MHz的晶振,測量范圍可在1 Hz ~10 MHz,并且在高頻下誤差相對很小。本次設(shè)計給出的頻率計的設(shè)計方案,不但切實可行,而且設(shè)計簡單、成本低、可測頻帶寬,大大降低了設(shè)計成本和實現(xiàn)復雜度。

    精度; 單片機; 頻率計

    0 引言

    頻率是電子技術(shù)中最基本的參數(shù)之一,并且與其它許多電參數(shù)的測量方案和測量結(jié)果都有密切的關(guān)系,因此頻率的測量顯得非常重要[1]。而現(xiàn)在的單片機設(shè)計的頻率計測量頻率低,精度差。目前在頻率測量領(lǐng)域中,對于高頻率信號高精度測量大都使用 ARM FPGA等高速處理器加專用計數(shù)芯片來完成[2]。這種方法不僅編程復雜,而且成本高,在一些小型的設(shè)備中并不適用。

    本文提出的基于STC15單片機的頻率計的設(shè)計方法,以STC15W4K48S4單片機為控制芯片,充分采用內(nèi)部的軟硬件資源,采用同步測量法控制單片機內(nèi)部的定時器/計數(shù)器,并控制 LCD顯示。該方法充分發(fā)揮了STC15系列單片機在高頻晶振下計數(shù)的特點,實驗測量中也表現(xiàn)出較高的準確度。

    1 功能需求與系統(tǒng)方案論證

    為達到監(jiān)播機的系統(tǒng)使用需要。設(shè)計的頻率計需要具有以下的技術(shù)要求:

    1. 頻率計的計數(shù)范圍為1 Hz-5 MHz,且對超出頻域的部分也能顯示。

    2. 頻率計有動態(tài)顯示,顯示實時的測量頻率,且更新速度不低于2秒/次。

    3. 頻率計部分可單獨工作,不影響其它模塊中斷的響應。

    為實現(xiàn)實驗要求并達到預期效果,需對硬件系統(tǒng)與軟件系統(tǒng)進行設(shè)計,其理由是1. 普通單片機無法達到需要的頻率要求;2. 數(shù)字頻率計軟件中涉及數(shù)學運算,并要保存大量信息。對測量結(jié)果要驅(qū)動LCD顯示屏顯示,作為系統(tǒng)的一部分要有多個定時器/計數(shù)器和中斷,以此選用增強型的STC15系列單片機。

    1.1 系統(tǒng)結(jié)構(gòu)框圖

    系統(tǒng)總體框圖如圖 1所示。電路以 STC15W-4K48S4單片機為核心,來完成它待測信號的計數(shù)、運算、顯示的控制。由于單片機對測量的波形有要求,所以必須將要測量的信號信號或者外接信號(包括方波、三角波、正弦波)轉(zhuǎn)換為單片機可以接受的CMOS方波信號[3]才能輸入單片機的計數(shù)引腳(P3.4)。

    圖1 系統(tǒng)結(jié)構(gòu)圖Fig.1 System structure diagram

    被整形后的信號送入單片機端口,利用其內(nèi)部的定時/計數(shù)器完成待測信號周期/頻率的測量。單片機 STC15W4K48S4內(nèi)部具有 5個定時/計數(shù)器,本設(shè)計中選用T0,T1兩個定時/計數(shù)器,并由編程來實現(xiàn)定時、計數(shù)的模式和產(chǎn)生計數(shù)溢出時中斷內(nèi)部的功能。

    1.2 多周期同步測頻的原理

    同步測頻法是為了提高周期測量法的精度而對其進行改進的方法,其核心是使標準高頻信號的采樣與待測信號同步,并確保測量時間為整數(shù)個待測信號,從而使得該測量方法的原理誤差不超過一個標準高頻信號周期,大大提高了測量精度[4]。采用同步測頻法對被測信號進行測量要求使用兩個計數(shù)器,分別對被測量信號和晶振信號同時計數(shù),以被測量信號為標準對其計數(shù),使被測量信號計數(shù)器溢出的次數(shù)為整數(shù)倍,而這時另一個計數(shù)器對晶振的計數(shù)次數(shù)就是時間,通過計算便可得出被測信號的頻率[4,5]。

    其測量原理如圖2所示,fx為被測信號頻率,fosc為晶振產(chǎn)生的標準頻率;當計數(shù)器 1(T0)對 fx計數(shù)并且控制它計滿整數(shù) n個溢出次數(shù)時,計數(shù)器 2(T1)的溢出次數(shù)為nosc,則T0對fx的計數(shù)次數(shù)為Nx=n×65536次,而 T1對 fosc的計數(shù)次數(shù)為 Nosc=nosc×65536+TH1×256+TL1,TH1與 TL1是 T1寄存器中的數(shù)值。

    圖2 多周期同步測頻原理Fig.2 Multi-cycle synchronous frequency measurement principle

    由于計數(shù)器1與計數(shù)器2是同時開始與停止的,所以是經(jīng)過了相同的時間T,所以被測頻率為:

    由于在計數(shù)過程中,同步控制使得 fx的計數(shù)為寄存器的整數(shù)倍,也不存在±1誤差,所以誤差與fx無關(guān)。外部晶振采用32 MHz的有源晶振,保證晶振的穩(wěn)定,所以誤差極小控制在10-6范圍內(nèi)。

    2 硬件電路設(shè)計

    數(shù)字頻率計的設(shè)計原則主要是縮小系統(tǒng)體積降低作品硬件成本,提高系統(tǒng)的可靠性和使用便捷性等,而在監(jiān)播機系統(tǒng)中對硬件的體積要求盡可能小,同時不能干擾放大電路、檢測電路等,因此在單片機的選型及封裝,LCD液晶屏,電路等方面要求在滿足功能要求的同時減少空間的占用。

    2.1 單片機最小系統(tǒng)

    本設(shè)計采用的是STC15W4K48S4系列芯片,為宏晶公司生產(chǎn)的高性能單片機,封裝格式為SOP28。復位電路和時鐘電路是維持單片機最小系統(tǒng)運行的基本模塊。為防止系統(tǒng)在運行過程中出現(xiàn)程序跑飛的情況,需要設(shè)置系統(tǒng)復位按鈕。

    高頻的時鐘信號可以加快單片機的運行速度,同時實現(xiàn)對高頻信號的采樣。STC15提供了可達1T的主頻速度和高分辨率的定時器,因此才可以實現(xiàn)高精度和更款范圍的測量。本次設(shè)計采用 32 MHz的有源晶振。P3.4腳為被測頻率的輸入引腳,P3.5為外部晶振的輸入引腳。由于單片機內(nèi)部采樣原理的限制,理論上可以實現(xiàn)16 MHz信號的采樣,但由于誤差的影響,頻率越高時誤差會越大。

    2.2 LCD顯示模塊

    顯示電路設(shè)計的關(guān)鍵問題是顯示器件的選擇,對于本產(chǎn)品設(shè)計的頻率計為系統(tǒng)的必要模塊,需要與主板一起裝置在已提供好的功能箱中。可供選擇的器件有 LED 數(shù)碼顯示器和 LCD 顯示器,其中LED適用于室內(nèi),比較醒目;LCD 比較精細,顯示信息多。本作品采用LCD1602型字符顯示器,它可以顯示2行各16個字符的各種ASCII碼字符,因此只要設(shè)計合理,就可以將要顯示的內(nèi)容提示,結(jié)果信息等全部顯示出來,比一般的數(shù)碼管更直觀、更有效[6]。

    本次設(shè)計采用1602LCD顯示模塊,由于單片機封裝形式為SOP28,考慮到引腳較少的問題采用四線制驅(qū)動LCD1602以減少引腳的占用。

    編號 符號 引腳說明1 VSS 地2 VDD 正極3 VL 背光調(diào)節(jié)4 RS 數(shù)據(jù)/命令選擇5 R/W 讀/寫選擇6 E 使能信號7-14 D0-D7 總線端口15 BLA 背光源正極16 BLK 背光源負極

    3 軟件設(shè)計

    頻率計的軟件設(shè)計工具選用Keil Vision5,使用C語言設(shè)計,整體采用模塊化設(shè)計方法,整個軟件部分由初始化模塊、定時器設(shè)置模塊,計算模塊、顯示模塊組成。系統(tǒng)結(jié)構(gòu)圖如圖3所示。上電后對單片機初始化,然后分別對T0、T1設(shè)置;設(shè)置T0為16位計數(shù)器,T0對時鐘信號進行12分頻(此時AUXR=0X40);T1為 16位定時器,對時鐘信號進行計數(shù)。

    被測量的頻率信號由單片機的P3.4腳輸入,當T0溢出滿10次后,分別對T0和T1的計數(shù)次數(shù)進行求和,得出Nx和Nosc,然后求出被測頻率。

    求出被測頻率的主要程序:

    void CallFrecency(){

    unsigned long int sum_T0=0;

    unsigned long int sum_T1=0;

    double a_adjust=0.0;

    sum_T0=10*65536;//計算T0計數(shù)值

    sum_T1=(cycle2*65536)+TH1*256+TL1;

    Nx_adjust=(a0+0.0)/(a1+0.0);

    Nx=FOSC*a_adjust;

    cycle1=0;

    cycle2=0;

    }

    為了減少每次的誤差,對測量結(jié)果調(diào)整,每測量10次取平均值。

    數(shù)值調(diào)整的部分程序:

    If(flag=1){

    CallFrecency();

    //將每次計算的Nx值放入數(shù)組

    Result_num[flag_10]=Nx;

    Flag_10++;

    For(i=0;i<10;i++){

    Sum_result+=result_num[i];

    }

    ave_result=sum_result/10;

    }

    圖3 軟件流程設(shè)計Fig.3 Software process design

    4 測量結(jié)果

    實驗測量中采用32 MHz外部有源晶振作為時鐘,在正常室溫條件下對信號發(fā)生器產(chǎn)生的方波信號進行測頻,結(jié)果如下表。

    從實驗結(jié)果可以看出,在1 MHz內(nèi)測量精度很高,在5 MHz內(nèi)會出現(xiàn)極小誤差,范圍控制再0.1‰內(nèi)。與普通單片機實現(xiàn)的頻率計設(shè)計相比較,能達到較大的量程且在10 M內(nèi)的誤差很小,采用本設(shè)計方法能達到較高的精度要求。

    表1 測量結(jié)果Tab.1 Measurement results

    5 結(jié)語

    數(shù)字頻率計作為一種基本的測量儀器,在多種場合中都有應用;而單片機具有體積小,較強的功能和低廉的價格。本文給出的頻率計的設(shè)計方法,可以在保持較高精度的情況下測量高達10 MHZ高頻信號。在不增加外部器件的情況下通過軟件的設(shè)計達到目的要求。本設(shè)計簡單,穩(wěn)定性高,可以極好的滿足在廣播監(jiān)播機中的頻率和精度要求。

    [1] 肖春芳, 韓緒鵬 基于單片機控制的數(shù)字頻率計設(shè)計[J].電子設(shè)計工程. 2012, 20(1): 140-143.

    [2] 張糧雨 基于51單片機的高頻頻率計設(shè)計 [J]. 電子科技.2014, 27(2): 82-84.

    [3] 夏禹 基于單片機的數(shù)字頻率計及信號發(fā)生器 [J]. 電子世界. 2012.

    [4] 甕巍巍, 丁天懷. 同步測頻法的誤差分析及其在單片機測量系統(tǒng)中的實現(xiàn)[J]. 電測與儀表2002(1): 13-16.

    [5] 廖 磊, 梁文海, 蔣濤. 一種多周期同步測頻的改進方法及誤差分析[J]. 樂山師范學院學報 2011(12): 15-17.

    [6] 應朝龍, 李 超, 劉春霞, 趙瑞青. 基于單片機的實用數(shù)字信號源與頻率計設(shè)計[J]. 電子設(shè)計工程 2015(20): 141- 147.

    [7] 張志成 基于 STM32 單片機的頻率計的設(shè)計[J]. 電子制作. 2013(20): 1, 9.

    [8] 李莉, 熊晶 基于CPLD和單片機的等精度數(shù)字頻率計設(shè)計[J]. 現(xiàn)代電子技術(shù). 2015. 38(10): 118-120.

    [9] 胡學武 用AT89C52 實現(xiàn)智能型頻率計[J]. 蘇州大學學報(工科版), 2009. 29(4): 33-35.

    [10] 凌振寶, 葉劍峰, 孫正光 多功能數(shù)字頻率計的設(shè)計與研究[J]. 吉林大學學報(信息科學版), 2011(4): 376-381.

    [11] 姚永平. STC15數(shù)據(jù)手冊[DB/CD], 2013.

    [12] 楊春蘭. 基于單片機的多功能數(shù)字頻率計的設(shè)計[J]. 懷化學院學報. 2016. 35(5): 64-67.

    [13] 馮宴銘, 陸小龍, 趙世平. 基于C8051F020單片機的高精度測頻計數(shù)和計時模塊設(shè)計[J]. 電子測量技術(shù). 2014(4):72-75.

    [14] 姜志健, 莊建軍等 基于FPGA的高精度頻率計的設(shè)計與實現(xiàn)[J]. 電子測量技術(shù). 2017. 40(5): 41-46.

    [15] 王少軍, 張啟榮, 彭宇, 等. 一種新型的高精度數(shù)字頻率計設(shè)計[J]. 儀器儀表學報. 2014. 35(6): 1206-1209.

    [16] 劉傳朋, 楊翡. 基于STC12C5A60S2單片機頻率計的設(shè)計與實現(xiàn)[J]. 電子技術(shù)與軟件工程. 2015(2): 260-261.

    Design of High Precision Frequency Meter with STC15

    QI Xuan, LI Yi-min, SHAO Yu-bin, LONG Hua, YANG Dao-fu
    (College of Information Engineering and Automation , Kunming University of Science and Technology , Kunming 650504, China)

    This article presents a high-precision digital frequency meter design method based on sigle chip computer STC15W4K48S4, the mater adopts the method called ‘Mutli-Period Synchronism’to realize the design,and adjust the measured data accordingly to reduce the error. As a result of the use of 32 MHz crystal,the meter can measure the frequency from 1 Hz to 10 MHz, and the error is relatively small at high frequencies. The design given in this article, not only pracyical, but also simple, and wide frequency range can be measured. It has a certain application.

    Precision, MCU, Frequency meter

    TP368

    B

    10.3969/j.issn.1003-6970.2017.12.043

    本文著錄格式:齊宣,邵玉斌,楊道福. 基于STC15單片機的高精度頻率計設(shè)計[J]. 軟件,2017,38(12):220-222

    齊宣,碩士研究生,研究方向為:通信信號處理技術(shù);邵玉斌,碩士,教授,碩士生導師,研究方向為:移動通信和個人通信系統(tǒng);楊道福,碩士研究生,研究方向為通信信號處理技術(shù)。

    猜你喜歡
    頻率計晶振計數(shù)器
    采用虛擬計數(shù)器的電子式膜式燃氣表
    煤氣與熱力(2022年2期)2022-03-09 06:29:30
    兩非門晶振振蕩電路的設(shè)計
    基于晶振的高性能時間保持方法研究
    幾種導致恒溫晶振頻率偏移的因素分析
    電子測試(2018年14期)2018-09-26 06:04:14
    恒溫晶振環(huán)境溫度特性測試系統(tǒng)設(shè)計
    電子測試(2018年1期)2018-04-18 11:52:05
    計數(shù)器競爭冒險及其處理的仿真分析
    無晶振輸出頻率計的自動檢定裝置研究
    基于等精度測量原理頻率計的設(shè)計與實現(xiàn)
    任意N進制計數(shù)器的設(shè)計方法
    河南科技(2014年10期)2014-02-27 14:09:30
    基于51單片機的數(shù)字頻率計設(shè)計
    河南科技(2014年3期)2014-02-27 14:05:49
    托里县| 德兴市| 乳源| 时尚| 安义县| 班玛县| 巴林右旗| 繁昌县| 柘城县| 江都市| 宿松县| 泗水县| 许昌县| 苍梧县| 哈尔滨市| 鄄城县| 柘荣县| 毕节市| 朔州市| 朝阳区| 韩城市| 城口县| 文昌市| 长顺县| 简阳市| 东兴市| 金秀| 汝城县| 龙江县| 英吉沙县| 鹰潭市| 澎湖县| 万州区| 彰武县| 临泽县| 浮梁县| 乐山市| 沭阳县| 宜春市| 虹口区| 拉孜县|