【正文】
ned int long int t=0。// 待測信號的計(jì)數(shù)值Nx:T0對外部待測信號的計(jì)數(shù)值。預(yù)置門時(shí)間大約為1s,由T2定時(shí)器產(chǎn)生。其中,瓦對被測信號fx// 進(jìn)行計(jì)數(shù),T1對內(nèi)部頻標(biāo)f0進(jìn)行計(jì)數(shù)。// 可以對被測信號進(jìn)行分頻以達(dá)到擴(kuò)展測量范圍的目的。由D觸發(fā)器輸出的同步門控信號加給INT0和INT1, 由INT0和INT1控制T0和T1同步計(jì)數(shù)。fx=(f0/N0)*Nx當(dāng)單片機(jī)的晶振測頻為12MHz時(shí),f0=1MHz.頻標(biāo)信號f0:單片機(jī)晶振頻率的十二分之一即f0=1MHz,用T1對內(nèi)部頻標(biāo)信號進(jìn)行計(jì)數(shù)待測頻率fx:最高可測500KHz,用T0對外部待測信號進(jìn)行計(jì)數(shù)。在測量開始后。37參考文獻(xiàn)參考文獻(xiàn)參考文獻(xiàn)[1] 申忠如.《MCS51單片機(jī)原理及系統(tǒng)設(shè)計(jì)》[M]..西安:西安交通大學(xué)出版社,2007年.[2] 楊栓科.《模擬電子技術(shù)》[M].西安:高等教育出版社,2003年.[3] 張克農(nóng).《數(shù)字電子技術(shù)》[M].西安:高等教育出版社,2003年4月.[4] 張超琦 鐘明哲 盧世彬.《單片機(jī)原理及實(shí)例》[M].上海:上海交通大學(xué)出版社,2007 年.[5] 裴立云 朱靜。金老師花費(fèi)大量了的時(shí)間和心血在我的論文上,才有我今天的定稿。由于自身對等精度頻率的測量的理解還不是很成熟,所做的工作還很粗糙,希望將來能夠改進(jìn)!西安交通大學(xué)城市學(xué)院本科生畢業(yè)設(shè)計(jì)(論文)致謝致 謝 在論文完成之際,我的心情萬分激動(dòng)。我個(gè)人認(rèn)為軟件設(shè)計(jì)是個(gè)即靈活又細(xì)膩的工作,它要求耐心和細(xì)心去不斷完善,同時(shí)還需要有良好的邏輯思維能力。再次,在精神方面鍛煉了思想、磨練了意志。畢業(yè)設(shè)計(jì)是一次綜合性的實(shí)踐,它將各種知識(shí)結(jié)合到一起綜合運(yùn)用到實(shí)踐上來擴(kuò)展、彌補(bǔ)、串聯(lián)所學(xué)的知識(shí)。當(dāng)然本設(shè)計(jì)只是基于各種理想的實(shí)驗(yàn)條件下得出的結(jié)論,設(shè)計(jì)當(dāng)中不可避免的存在一些問題。這個(gè)誤差的大小是用單片機(jī)的內(nèi)部時(shí)鐘決定的,采用高頻率的晶振來為單片機(jī)提供內(nèi)部時(shí)鐘,則能減少此誤差。:待測10Hz50Hz100Hz500Hz1kHz50kHz實(shí)測10HZ100HZ501HZ 待測100kHz200kHz300kHz400kHz500kHz實(shí)測 經(jīng)過分析,本次設(shè)計(jì)的頻率計(jì)的誤差來源主要有兩部分,分頻所帶來的誤差和單片機(jī)定時(shí)計(jì)數(shù)帶來的誤差。課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)是學(xué)生走向就業(yè)的重要實(shí)踐環(huán)節(jié)。因此,Proteus 有較高的推廣利用價(jià)值。可使設(shè)計(jì)時(shí)間大為縮短、耗資大為減少,也可降低工程制造的風(fēng)險(xiǎn)。這在相當(dāng)程度上替代了傳統(tǒng)的單片機(jī)實(shí)驗(yàn)教學(xué)的功能,例:元器件選擇、電路連接、電路檢測、電路修改、軟件調(diào)試、運(yùn)行結(jié)果等。 PROTEUS 是單片機(jī)課堂教學(xué)的先進(jìn)助手。這些都盡可能減少了儀器對測量結(jié)果的影響。 2.Proteus可提供的仿真儀表資源 :示波器、邏輯分析儀、虛擬終端、SPI調(diào)試器、I2C調(diào)試器、信號發(fā)生器、模式發(fā)生器、交直流電壓表、交直流電流表。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。系統(tǒng)的軟件程序框圖如圖42所示:開始開中斷初始化定時(shí)/計(jì)數(shù)器啟動(dòng)定時(shí)/計(jì)數(shù)器等待Gate變低計(jì)數(shù)停止數(shù)據(jù)處理計(jì)算顯示等待Gate變高42軟件程序框圖5 系統(tǒng)仿真與調(diào)試 Proteus軟件簡介 Proteus軟件是英國Labcenter electronics公司出版的EDA工具軟件(該軟件中國總代理為廣州風(fēng)標(biāo)電子技術(shù)有限公司)。這樣依次輸出各位上的譯碼值,逐個(gè)選通數(shù)碼管。通過對被測信號和標(biāo)準(zhǔn)頻率信號的周期測量,根據(jù)公式:f1/N1=f2/N2得到:f1= f2﹡N1/N2測得被測信號的實(shí)際頻率。 在閘門信號開啟時(shí)對被測信號計(jì)數(shù),閘門信號開啟時(shí)間為1s,所以計(jì)數(shù)值即為被測信號的頻率,計(jì)數(shù)值從0~999999,計(jì)數(shù)模塊要求的輸出為6位10進(jìn)制數(shù)。通過對軟件功能的分析,基于單片機(jī)控制測量的恒精度頻率計(jì)可以用4個(gè)模塊來實(shí)現(xiàn),如圖41所示,它們分別是:定時(shí)中斷模塊,計(jì)數(shù)模塊,測量模塊,顯示模塊。Keil 本身是一個(gè)純軟件工具,不能直接進(jìn)行硬件仿真,必須掛接類似TKS系列仿真器的硬件才可以進(jìn)行仿真。(5)動(dòng)態(tài)顯示電路特點(diǎn):有閃爍,用元器件少,占I/O線少,必須掃描,花費(fèi)CPU時(shí)間,編程復(fù)雜。通常每個(gè)段筆畫要串一個(gè)數(shù)百歐姆的降壓電阻。其中,T0對被測信號的輸出Q仍然為1,因此兩個(gè)計(jì)數(shù)器并不停止計(jì)數(shù),直到隨后而至的待測信號的上升沿到來時(shí),才使得D觸發(fā)器的輸出為0,同步門關(guān)閉,兩個(gè)計(jì)數(shù)器才同時(shí)停止計(jì)數(shù)。如圖35所示。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。XTAL2:來自反向振蕩器的輸出。需注意的是:如果加密位LB1 被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。 PSEN:程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器的讀選通信號,當(dāng)AT89C52 由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器存儲(chǔ)兩次PSEN 有效,即輸出兩個(gè)脈沖。對Flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖(PROG)。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器存儲(chǔ)以上高電平將使單片機(jī)復(fù)位。對P3 口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。在訪問8 位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行MOVX RI 指令)時(shí),P2 口輸出P2鎖存器的內(nèi)容。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。在訪問外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8 位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。圖34 AT89C52管腳圖 VCC:供電電壓?! T89C52有40個(gè)引腳,32個(gè)外部雙向輸入/輸出(I/O)端口,同時(shí)內(nèi)含2個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫口線,AT89C52可以按照常規(guī)方法進(jìn)行編程,也可以在線編程。單一+5V電源供電 CPU:由運(yùn)算和控制邏輯組成,同時(shí)還包括中斷系統(tǒng)和部分外部特殊功能寄存器; RAM:用以存放可以讀寫的數(shù)據(jù),如運(yùn)算的中間結(jié)果、最終結(jié)果以及欲顯示的數(shù)據(jù); ROM:用以存放程序、一些原始數(shù)據(jù)和表格; I/O口:四個(gè)8位并行I/O口,既可用作輸入,也可用作輸出; T/C:兩個(gè)定時(shí)/記數(shù)器,既可以工作在定時(shí)模式,也可以工作在記數(shù)模式; 五個(gè)中斷源的中斷控制系統(tǒng); 一個(gè)全雙工UART(通用異步接收發(fā)送器)的串行I/O口,用于實(shí)現(xiàn)單片機(jī)之間或單片機(jī)與微機(jī)之間的串行通信; 片內(nèi)振蕩器和時(shí)鐘產(chǎn)生電路,石英晶體和微調(diào)電容需要外接。外部數(shù)據(jù)存儲(chǔ)器尋址空間為64kB 21個(gè)專用寄存器 4kbytes程序存儲(chǔ)器(ROM) (52為8K) 需要注意的是52系列的單片機(jī)一般不具備自編程能力。圖32 單片機(jī)周邊電路 51單片機(jī)及AT89C52介紹 51單片機(jī)是對所有兼容Intel 8031指令系統(tǒng)的單片機(jī)的統(tǒng)稱。INT0INT1T0顯示電路D Q 被測信號圖31 單片機(jī)周邊電路框圖在本系統(tǒng)中,等精度測量硬件電路需要一個(gè)標(biāo)準(zhǔn)頻率信號。表21等精度頻率計(jì)的相對誤差:同步門時(shí)間TS(s)相對誤差︱︱10ˉ410ˉ5110ˉ61010ˉ7 本章就等精度頻率計(jì)原理進(jìn)行了簡單的闡述,主要介紹了等精度頻率計(jì)所用到的元器件及相關(guān)知識(shí),和等精度頻率計(jì)的計(jì)量原理。 由測量原理可以知道: (1) 由此可以推出: (2) 等精度頻率計(jì)的誤差分析 設(shè)所測頻率的準(zhǔn)確值為fX。等精度測量原理如圖22所示?;绢l率測量要求: 幅度:~5V 頻率:1Hz~500kHz 測量誤差≤%。設(shè)計(jì)要求: 頻率測量 幅度:~5V 頻率:1Hz~500kHz 測量誤差≤%。:輸入阻抗由輸入電阻和輸入電容兩部分組成。4.輸入靈敏度:輸入靈敏度是指在側(cè)頻范圍內(nèi)能保證正常工作的最小輸入電壓。2.周期測量范圍:數(shù)字頻率計(jì)最大的測量周期,一般為10s,可測周期的最小時(shí)間,依不同類型的頻率計(jì)而定。本次采用單片機(jī)技術(shù)設(shè)計(jì)一種數(shù)字顯示的頻率計(jì),測量準(zhǔn)確度高,響應(yīng)速度快,體積小等優(yōu)點(diǎn)。它是一種用十進(jìn)制數(shù)字顯示被測信號頻率的數(shù)字測量儀器。 頻率測量是電子學(xué)測量中最為基本的測量之一。 單片機(jī)系統(tǒng)的研究現(xiàn)狀在我國,單片機(jī)的推廣、普及、開發(fā)應(yīng)用已經(jīng)經(jīng)過十多個(gè)年頭,在此期間也涌現(xiàn)出了不少單片機(jī)的專家和技術(shù)成果,使我國在單片機(jī)技術(shù)應(yīng)用方面獲得了長足的進(jìn)步。重點(diǎn)為同步門邏輯控制電路,同步門邏輯控制電路以單片機(jī)芯片AT89C52為核心,接復(fù)位電路和晶體振蕩器,與D觸發(fā)器相連,分別用于對標(biāo)準(zhǔn)頻率脈沖和被測頻率脈沖進(jìn)行計(jì)數(shù)。單片微機(jī)完成對計(jì)數(shù)數(shù)據(jù)進(jìn)行運(yùn)算處理功能。秒信號結(jié)束時(shí)閘門關(guān)閉,計(jì)數(shù)器停止計(jì)數(shù)。 若在一定時(shí)間間隔T內(nèi)測得這個(gè)周期性信號的重復(fù)變化次數(shù)N,則其頻率可表示為f=N/T。 11 AT89C52主要性能 13 13 13 14 154軟件設(shè)計(jì) 17 KEIL51軟件簡介 17 17 17 18 18 185 系統(tǒng)仿真與調(diào)試 19 Proteus軟件簡介 19 Proteus的電路仿真 20 22總 結(jié) 35致 謝 35參考文獻(xiàn) 37附 錄 391程序 3951 緒 論 數(shù)字頻率計(jì)簡介數(shù)字頻率計(jì)是計(jì)算機(jī)、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器。其待測頻率值使用LCD液晶顯示器顯示,并可以自動(dòng)切換量程。AT89C51單片機(jī)是頻率計(jì)的控制核心,來完成它待測信號的計(jì)數(shù),譯碼,顯示以及對分頻比的控制。頻率計(jì)主要是由信號輸入和放大電路、單片機(jī)模塊、分頻模塊及顯示電路模塊組成。以AT89C51單片機(jī)為核心,通過單片機(jī)內(nèi)部定時(shí)/計(jì)數(shù)器的門控時(shí)間,方便對頻率計(jì)的測量。IIIABSTRACTABSTRACTFrequency measurement is the most basic measurement in Electronic field. Frequency meter is mainly posed of a signal input and an amplifying circuit, SCM module, frequency module and a display circuit module. AT89C51 MCU is the control core frequency of dollars to plete its count of the signal under test, decoding, display and control of the frequency division ratio. Using its internal timer or counter to plete the signal of the under test cycle / frequency of measurement. Throughout the design process, periodic measurement of the frequency meter application and the corresponding mathematical treatment to achieve 1Hz ~ 500 KHz frequency measurements, and can automatically switch the flow to achieve scale. To the core of AT89C51 microcontroll