基于單片機C8051F410的精確信號模擬電路設計
引言
在對某型發(fā)射裝置進行檢測時.需要提供三組以11.50伏為基準的精確直流電壓信號。為配合測試流程,這三組信號需要在不同的時段取18個不同的直流電壓值,幅度分布在9.33-12.13伏范圍之內。原有的測試儀采用22個精密電阻組成的分壓器,配合波段開關選擇來產生這18種不同的精確直流電壓信號。這種設計方法價格昂貴,并且不能實現(xiàn)自動化檢測,需要通過手工撥動波段開關來實現(xiàn)測試步驟的轉換。為了實現(xiàn)對發(fā)射裝置的自動測試。采用微機技術設計了新型的檢測儀。新的檢查儀以CPU模塊為核心,通過程序控制D/A轉換器來產生這三組精確直流電壓信號,簡化了設計,降低了成本,實現(xiàn)了測試步驟的自動切換。但是在檢測儀的使用過程中發(fā)現(xiàn)經常出現(xiàn)重測合格 (RTOK)現(xiàn)象,即檢測儀測定某件裝備不合格,但是更換儀器或重新開機后再對該裝備進行測試時結果良好.這種狀況嚴重影響裝備單位的使用和維護。后經分析.認為主要是檢測儀中產生這三組精確信號的模擬電路存在工作點漂移問題,精度不高。電壓輸出不穩(wěn)定,從而導致測試狀態(tài)不正確。為了解決這個問題,本文基于C8051F410單片機。采用PWM調制技術和負反饋測量技術設計了~種新的精確信號模擬電路,有效抑制了工作點漂移問題提高了模擬電路輸出精度.解決了裝備維護使用工作中存在的實際問題。
1 電路結構及原理
電路設計采用了閉環(huán)控制結構,如圖l所示。電路以C8051F410單片機為核心.通過程序設定需要輸出電壓的初始參數(shù),控制單片機內部的可編程計數(shù)器陣列(PCA)產生適當占空比的PWM波形,經二級信號放大電路和推挽式輸出電路放大后得到精確直流電壓信號。為了抑制-亡作點漂移并保證足夠的輸出精度,將輸出信號經分壓后引回至C8051F410單片機,利用單片機內部的數(shù)/模轉換器測量該電壓,并與初始設定參數(shù)相比較.通過程序調節(jié)PWM波形的占空比.從而得到具有高可靠性和較高精度的直流電壓輸出信號。
圖1電路結構框圖
本電路的基本思想就是利用單片機具有的PWM端口,在不改變PWM方渡周期的前提下.通過軟件的方法調整單片機的PWM控制寄存器來調整PWM的占空比,從而得到所需要的電壓信號。本電路所要求的單片機必須具有ADC端口和PWM端口這兩個必需條件,ADC的位數(shù)要求盡鼉高,單片機的工作速度要求盡量快。在調整輸出電壓前,單片機先快速讀取輸出電壓的大?。缓蟀言O定的輸出電壓與實際讀取到的輸出電壓進行比較,若實際電壓值偏小,則向增加輸出電壓的方向調整PWM的占空比:若實際電壓偏大,則向減小輸出電壓的方向調整PWM的占空比。經選型發(fā)現(xiàn),C8051F410單片機處理器最高運行時鐘可達 50MHz:具有6個PCM模塊.可實現(xiàn)PWM輸出;具有1個12位ADC模塊,滿足電壓測量精度要求。
2 硬件設計
整個電路的硬件設計主要包括C8051F410單片機的外圍電路設計、放大電路設計以及電壓反饋測量前置電路設計三個部分。如圖2所示。
圖2硬件電路示意圖
整個電路以C805IF410單片機為核心。C805IF410單片機具有P0、P1、和P2數(shù)字/模擬可配置的I/0 口,所有的數(shù)字和模擬資源都可以通過這三組24個I/O引腳使用。輸出一路精確模擬信號,需要設置—個引腳作為PWM輸出口,一個作為ADC輸入口。在這里,我們設置PO.1為PWM輸出口,P0.2為ADC輸人口。
C8051F410單片機外圍電路設計主要包括在線調試和下載電路、外部參考電壓電路和濾波電路設計。本文利用單片機提供的C2調試接口設計了在線調試和下載電路.如圖2左上側電路所示.通過計算機串口實現(xiàn)單片機的快速編程和系統(tǒng)在線調試。圖2下右側為外部參考電壓電路璉接到單片機的Vref引腳.為單片機ADC等模塊提供2.048伏電壓參考.可通過電位器進行調校。
放大電路包括二級電壓放大電路和推挽式功率輸出電路兩個部分.如圖2右側電路所示。二級信號放大電路和推挽式輸出電路均為經典電路,在此不再贅述。
電壓反饋測量前置電路如圖2右側上部所示,實質為分壓電路。由于設定C8051F410單片機參考電壓為2.048伏,而輸出電壓最大值為12伏左右,因此選擇電阻R15=4.3K,R16=20K,電位器Pv1標稱電阻為5K,并可通過調節(jié)電位器來改變電壓倍數(shù)。
3 軟件設計
本電路中運用c語言編程來實現(xiàn)PWM控制,利用C8051F410芯片的可編程計數(shù)器陣列組成PWM發(fā)生器。C805IF410芯片的可編程計數(shù)器陣列由一個專用的16位計數(shù)器/定時器和3個16位捕捉/比較模塊組成.捕捉/比較模塊有六種工作方式:邊沿觸發(fā)捕捉、軟件定時器、高速輸出、頻率輸出、8位PWM和16位PWM。每個捕捉,比較模塊的丁作方式都可以被獨立配置。對PCA的配置和控制是通過系統(tǒng)控制器的特殊功能寄存器來實現(xiàn)的.主要有以下幾個:
1) PCAOCN可編程計數(shù)器陣列控制寄存器。該寄存器包括溢出標志、運行控制標志以及捕捉/比較標志。
2) PCAOMD可編程計數(shù)器陣列方式寄存器。該寄存器用于設置可編程計數(shù)器陣列的工作模式及時鐘源。
3) PCAOCPMn可編程計數(shù)器陣列捕捉/比較寄存器。該寄存器可進行捕捉/比較模塊n的工作方式。
4) PCAOCPn可編程計數(shù)器陣列捕捉,比較寄存器(高低字節(jié))。該寄存器用于設置捕捉/比較模塊n的高低字節(jié)。
本電路主要利用PCA模塊2來產生PWM波形。初始設置PCAOCN為0x40.置位PCA模塊2捕捉/比較標志.在發(fā)生一次捕捉時該位由硬件置位,該位置‘1’將導致CPU轉向PCA中斷服務程序。初始設置PCAOMD為0x08.PCA計數(shù)器,定時器時鐘選擇系統(tǒng)時鐘。初始設置 PCAOCPM2為0xc2,使能16位脈沖寬度調制、比較器功能和PCA模塊2的脈寬調制方式。PCAOCP2的值將在程序流程中實時設定。軟件流程如圖3所示。
圖3軟件流程圖
具體實現(xiàn)方法與步驟如下:
1)初始設置:根據設定電壓值生成初始PWM波形和頻率參數(shù)。
2)電壓測最:測量此時輸出電壓和設定值之間的偏差,用于調整PWM參數(shù)。
3)調整PWM參數(shù):把設定的輸出電壓與實際讀取到的輸出電壓進行比較.若實際電壓值偏小,則向增加輸出電壓的方向調整PWM的占空比;若實際電壓偏大,則向減小輸出電壓的方向調整PWM的占空比。
4)使能PWM輸出。
另外.在軟件PWM的調整過程中還要注意ADC的讀數(shù)偏差和電源工作電壓等引入的紋波干擾。合理采用算術平均法等數(shù)字濾波技術。
4 結論
本電路針對裝備維護存在的實際問題?;贑8051F410單片機,利用PWM調制技術和負反饋測量技術克服了原電路因工作點不穩(wěn)定的問題。經實驗驗證,將本電路替換掉原來的模擬電路模塊后,榆測設備重測合格的現(xiàn)象不再出現(xiàn)。本電路從處理器到被控系統(tǒng)信號都是數(shù)字形式的,無需進行數(shù)模轉換,抗噪性能強,工作穩(wěn)定,具有較高的輸出精度,對于同類電路的設計具有一定的借鑒意義。
本文作者創(chuàng)新點:本文基于C8051F410單片機,采用PWM調制技術和負反饋測量技術設計了一種新的精確信號模擬電路,能程控輸出高精度模擬電壓信號,無需進行數(shù)模轉換,抗噪性能強,有效抑制了信號產生電路普遍存在的工作點漂移問題,具有一定的借鑒意義。