基于單片機的低頻數字相位測量儀的設計
發布時間:2007/8/24 0:00:00 訪問次數:738
西安工業學院陜西 史國清,倪晉平,劉文軍
摘 要:提出了一種基于AT89C52單片機開發的低頻數字相位測量儀的設計。系統以單片機AT89C52及可編程邏輯器件為核心,構成完備的測量系統。可以對10 Hz~20 kHz頻率范圍的信號進行頻率、相位等參數的精確測量,測相絕對誤差不大于1°;采用數碼管顯示被測信號的頻率、相位差。硬件結構簡單,軟件采用匯編語言實現,程序簡單可讀寫性強,效率高。與傳統的電路系統相比,其有處理速度快、穩定性高、性價比高的優點。
關鍵詞:單片機;低頻;集成電路;可編程邏輯器件;絕對誤差
頻率是信號的重要參數之一,如何獲得這一準確數據已經在信息領域顯得越來越重要了[1,2]。相位測量在信號提取、檢測、處理等方面有著重要的應用[3]。本設計采用89C52單片機和可編程邏輯器件(CPLD)為核心,利用單片機進行數據處理并顯示結果,軟件采用匯編語言實現,構成低頻信號頻率相位測量儀。
1 系統工作原理
本設計以89C52單片機和可編程邏輯器件(CPLD)為核心,構成低頻信號頻率相位測量儀。該儀器具有移相、頻率和相位測量2大功能。移相電路由移相網絡和信號放大電路組成,對固定頻率信號(100 Hz,1 kHz,10 kHz)可滿足-45~+45的相移要求;頻率、相位測量電路由阻抗變換電路、整形電路、分頻電路、計數器電路、鎖存器、數據處理和顯示電路等組成,可對10 Hz~20 kHz信號進行頻率和相位測量。單片機系統是整個硬件系統的核心,他既是協調整機工作的控制器,又是數據處理器,并完成對最終顯示的控制。
1) 單片機89C52(內部帶8 kB FLASH ROM)、地址鎖存器74LS573和數據存儲器6264(內部 RAM為8 kB)構成的[4]。
2) 數據處理主要是正確判斷對所輸入的信號是測頻還是測相,并完成測頻、測相的功能。
3) 由控制面板、顯示接口芯片8279構成顯示電路。
2 精度分析
本設計要求相位測量精度絕對誤差≤1°,因此,在所測信號一個周期中,只有計數數值超過360次時才能達到要求。對于被測信號頻率為20 kHz時,其周期為50 μs,在50 μs內計數值為360次,由此可計算出時間基準信號的頻率為20 kHz×360=7.2 MHz,所以采用8 MH z晶振作為時基信號源,完全可以滿足精度要求[5]。
3 系統設計總框圖
系統設計總框圖如圖1所示。
4 測頻、測相的實現
測頻、測相電路是本次設計的主要內容,此部分采用可編程邏輯器件(CPLD)完成,由單片 機控制。單片機的匯編程序就是按照CPLD的設計原理而編寫的[6,7]。
圖2,圖3分別為測頻、測相的流程圖。為了便于說明,畫出此系統結構圖,如圖4所示。
CPLD電路描述:首先經過掃描P11控制74257(2選1)電路,選擇測頻還是測相,如果為高 電平則測頻,利用單片機產生10次中斷產生的秒信號,即在1s中信號的脈沖數,其中計數器是由6個74193搭成的24位計數器,經鎖存器鎖存,等待單片機讀出;如果為低電平則測相。測相時先調用了測頻的程序但并不顯示,而是存起來待用,然后給D觸發器清零,否則得到的異或值不同,如圖3所示。a′,b′經過異或生成相位信號并發出中斷請求,與8 MH
西安工業學院陜西 史國清,倪晉平,劉文軍
摘 要:提出了一種基于AT89C52單片機開發的低頻數字相位測量儀的設計。系統以單片機AT89C52及可編程邏輯器件為核心,構成完備的測量系統。可以對10 Hz~20 kHz頻率范圍的信號進行頻率、相位等參數的精確測量,測相絕對誤差不大于1°;采用數碼管顯示被測信號的頻率、相位差。硬件結構簡單,軟件采用匯編語言實現,程序簡單可讀寫性強,效率高。與傳統的電路系統相比,其有處理速度快、穩定性高、性價比高的優點。
關鍵詞:單片機;低頻;集成電路;可編程邏輯器件;絕對誤差
頻率是信號的重要參數之一,如何獲得這一準確數據已經在信息領域顯得越來越重要了[1,2]。相位測量在信號提取、檢測、處理等方面有著重要的應用[3]。本設計采用89C52單片機和可編程邏輯器件(CPLD)為核心,利用單片機進行數據處理并顯示結果,軟件采用匯編語言實現,構成低頻信號頻率相位測量儀。
1 系統工作原理
本設計以89C52單片機和可編程邏輯器件(CPLD)為核心,構成低頻信號頻率相位測量儀。該儀器具有移相、頻率和相位測量2大功能。移相電路由移相網絡和信號放大電路組成,對固定頻率信號(100 Hz,1 kHz,10 kHz)可滿足-45~+45的相移要求;頻率、相位測量電路由阻抗變換電路、整形電路、分頻電路、計數器電路、鎖存器、數據處理和顯示電路等組成,可對10 Hz~20 kHz信號進行頻率和相位測量。單片機系統是整個硬件系統的核心,他既是協調整機工作的控制器,又是數據處理器,并完成對最終顯示的控制。
1) 單片機89C52(內部帶8 kB FLASH ROM)、地址鎖存器74LS573和數據存儲器6264(內部 RAM為8 kB)構成的[4]。
2) 數據處理主要是正確判斷對所輸入的信號是測頻還是測相,并完成測頻、測相的功能。
3) 由控制面板、顯示接口芯片8279構成顯示電路。
2 精度分析
本設計要求相位測量精度絕對誤差≤1°,因此,在所測信號一個周期中,只有計數數值超過360次時才能達到要求。對于被測信號頻率為20 kHz時,其周期為50 μs,在50 μs內計數值為360次,由此可計算出時間基準信號的頻率為20 kHz×360=7.2 MHz,所以采用8 MH z晶振作為時基信號源,完全可以滿足精度要求[5]。
3 系統設計總框圖
系統設計總框圖如圖1所示。
4 測頻、測相的實現
測頻、測相電路是本次設計的主要內容,此部分采用可編程邏輯器件(CPLD)完成,由單片 機控制。單片機的匯編程序就是按照CPLD的設計原理而編寫的[6,7]。
圖2,圖3分別為測頻、測相的流程圖。為了便于說明,畫出此系統結構圖,如圖4所示。
CPLD電路描述:首先經過掃描P11控制74257(2選1)電路,選擇測頻還是測相,如果為高 電平則測頻,利用單片機產生10次中斷產生的秒信號,即在1s中信號的脈沖數,其中計數器是由6個74193搭成的24位計數器,經鎖存器鎖存,等待單片機讀出;如果為低電平則測相。測相時先調用了測頻的程序但并不顯示,而是存起來待用,然后給D觸發器清零,否則得到的異或值不同,如圖3所示。a′,b′經過異或生成相位信號并發出中斷請求,與8 MH