單片機典型案例開發(fā)(五)
一、基于單片機設計的小電阻測試儀
本文引用地址:http://butianyuan.cn/article/171409.htm1、引言
在電路測試過程中常常會碰到由于忽略某些小電阻的影響引起實驗數(shù)據(jù)與理論值之間存在較大誤差,從而影響測試效果。例如電感器、變壓器中往往存在銅電阻,地鐵鐵軌的電阻;由于其數(shù)值較小,一般的指針萬用表無法測量出來;通常實驗室里會用電橋進行測量,但電橋操作手續(xù)較煩,又不能直接讀出被測電阻阻值。鑒于此,我們采用了單片機,利用單片機的優(yōu)勢設計了該測量儀。該測量儀可直接從LCD顯示屏上讀出所測得的電阻值,測量范圍為10μΩ~2.9999kΩ,同時可以把測試的數(shù)據(jù)進行儲存,然后經串行口送入上位機,通過上位機的強大功能,可以對所測得的數(shù)據(jù)進行分析、處理。該測試儀的測量精度高達±0.1%,并采用四端測量法,電阻值不受引線長短及接觸電阻的影響。不僅測量簡便,讀數(shù)直觀,且測量精度、分辨率也高于一般電橋??捎糜趯嶒炇摇⒀芯克?,尤其適用于工作現(xiàn)場。
2、測試原理
如上圖本機的基本原理是采用在被測電阻上通過已知的恒定電流,取出被測電阻上的壓降,經放大器放大轉換為0~3V直流電壓,然后送入C8051F005A/D轉換的輸入端,經單片機處理,最后經過液晶顯示器直接顯示電阻阻值。
由于要實現(xiàn)對微小電阻的測量,所以要求放大器的分辨率高(高潮達10μV),線性度好,輸入阻抗高,并要求漂移低、抑制噪聲和抗干擾能力強,為此我們設計了如圖2中信號處理電路所示的差動放大器。此放大器由運放A1、A2組成第一級差分式電路,A3組成第二級差分式電路,R3、R4、RW組成反饋網絡,引入了深度電壓串聯(lián)負反饋,故有較高的輸入阻抗,且A1、A2都選同相端作為輸入端,則它們的共模輸出電壓和漂移電壓也都相等,再經過A3組成的差分式電路,可以互相抵消,故它有很強的共模抑制能力和較小的輸出漂移電壓;A4是電壓反向跟隨器,其作用是使前后級隔離。分析此電路可得下列方程。
當R5= R7、R6= R8時,上述方程化簡可得:
從(3)式知輸出電壓U4與被測電阻RX成正比。放大器的倍數(shù)由R3、R4、RW而定,由于A/D轉換器的輸入電壓為0~3V,本儀器設置放大器的放大倍數(shù)為10倍,在U4端得到0~3V的直流電壓。為了保證放大器的分辨率和穩(wěn)定性,除上述電路本身優(yōu)點外,集成運放A1、A2、A3選用了高精度、低噪聲、低漂移的max495,反饋支路的電阻均選用高精度、低溫度系數(shù)的精密電阻,此外還采取了一些屏蔽措施有效地抑制了噪聲和干擾。測試時被測電阻與測試儀器間采用四端接線法,恒流源電流經IN1輸入從IN2輸出,測量時用四根專用導線與被測電阻Rx連接,當被測電阻較小時,為了避免導線電阻和接觸電阻的影響,四根連接導線要做到特性一致、阻抗相同,這樣就可以消除導線電阻和接觸電阻的影響。
3、小電阻測試儀的硬件設計
該儀器的核心部分是能夠實現(xiàn)各種功能的電路板,它采用了CYGNAL公司的C8051Fxxx型單片機C8051F005。該系統(tǒng)主要包括電源電路、信號采集電路、信號放大電路、液晶驅動及顯示電路、串行通訊電路、系統(tǒng)復位電路和C8051F005單片機系統(tǒng)電路(包括模數(shù)轉換電路)。系統(tǒng)各部分的詳細電路如圖2所示。
3.1、C8051F005單片機系統(tǒng)電路
本系統(tǒng)使用的是C8051F005,它具有如下特點:
片內有多達60KB的Flash ROM和2KB RAM,用戶無需再外擴存儲器;
一個12位的A/D轉換器ADC12,自帶采樣保持功能;
兩通道串行通訊接口,可用于異步或同步模式;
一個模擬比較器,可實現(xiàn)電壓比較或基準電壓的輸出。
ADC12是12位精度的A/D轉換模塊,帶有采樣保持功能,具有高速、通用的特點。它有8個外部信號采樣通道和4個內部通道。由差動放大器輸出的信號由通道0輸入單片機,A/D轉換的時鐘、轉換模式和參考電壓源都可以由用戶用軟件設置。
由于該單片機內部集成了眾多的外圍模塊,不但使電路的設計變得簡單,還可以大大縮小電路板的尺寸。另外,在電路板上預留一個JTAG接口,再配以一個普通的PC機,就可以很方便地實現(xiàn)系統(tǒng)軟件的調試。
圖2、系統(tǒng)詳細電路圖
3.2、串行通訊電路
C8051F005單片機內部集成了兩個通用串行同步/異步模塊USART0和USART1,均支持兩種不同的串行協(xié)議,即;通用異步協(xié)議(UART協(xié)議)和同步協(xié)議(SPI協(xié)議)。本電路采用UART協(xié)議,再通過一個RS232接口芯片MAX3221E與PC機通訊。
MAX3221E是工作電壓為+3.0~+5.5V、僅需1μA的供給電流且具有自動關閉功能的單路RS-232收發(fā)器。C8051F005單片機的一大特點就是低功耗,它有多種功耗狀態(tài)可以編程控制。MAX3221E也是具有低功耗特點的接口器件,通過EN、FORCEON、FORCEOFF引腳可以控制驅動器、接收器的工作狀態(tài),啟動或禁止自動降低功耗功能,從而使其工作在不同的能耗狀態(tài),達到降低功耗的目的。
3.3、電源電路
本系統(tǒng)采用電池供電,這樣既可以保持系統(tǒng)運行的穩(wěn)定可靠又可便于在實驗室以外的環(huán)境下使用。
3.3、LCD驅動及顯示電路
LCD顯示選用型號為SMS0501C段碼顯示驅動器。該液晶顯示器的接口方式為二線式串行接口,顯示方式為反射式正顯示,工作電壓為2.7V~5.5V。
3.4、其他電路
除了以上幾個主要的電路外,系統(tǒng)還有電源欠壓檢測電路和系統(tǒng)復位電路等。電源欠壓檢測電路采用的是C8051F005單片機內部集成的模擬比較器來實現(xiàn)。系統(tǒng)復位電路采用按鈕復位形式,利用電容的充放電對單片機進行正確復位。當按鈕被按下時,C8051F005單片機的RST引腳即為低電平,只要這個低電平保持2個機器周期以上,單片機即可正確復位。
4、軟件設計
本系統(tǒng)的軟件設計采用模塊化設計的方法,整個程序包括主程序、數(shù)據(jù)采集程序、數(shù)據(jù)處理程序、串行通訊程序、定時器中斷程序、LCD顯示程序。所有的程序均采用C語言編寫,可以很方便地調試和下載程序代碼。限于篇幅,本文只給出主程序的流程圖,如圖3所示。
系統(tǒng)的主程序主要完成C8051F005單片機系統(tǒng)的初始化、設置系統(tǒng)時鐘和中斷字,調用鍵盤處理程序,根據(jù)不同的按鍵轉入相應的服務程序,完成不同的功能,如數(shù)據(jù)的采集與處理、串行通信以及歷史記錄的查詢。其中串行通訊子程序不僅可以將單片機存儲的數(shù)據(jù)傳送到PC機進行處理分析,用戶也可以根據(jù)情況從PC機上設置待測數(shù)據(jù)多少以及測試時間的長短等。
5、結束語
測試準確,該儀器在對10μΩ~10Ω的微小電阻測試時讀數(shù)穩(wěn)定性也較好,且測量精度高。
根據(jù)如上所述的電路原理,開發(fā)出了樣機,經實驗證明該儀器的功耗低,這樣就大大增加了電池的使用壽命;體積小,重量輕,便于攜帶,很適合在野外及工作現(xiàn)場使用。
二、用89C2051單片機制作的電話回撥器
該電話回撥器采用單片機控制,具有電路簡單、接觸可靠、使用方便等優(yōu)點。
一、工作原理
電路見附圖所示,系統(tǒng)由摘機,掛機電路、單片機撥號控制電路、DTMF號碼產生及放大電路、電源電路等四部分組成,下面分別予以介紹
1.摘機/掛機電路
圖中,J1為電話線進線插座,J2為該裝置所并聯(lián)的電話機插座,Rl為保險電阻;DI—D4為極性保護電路,用于將線路上極性不確定的電壓轉換成極性固定的電壓,保證無論電話線的正負極如何連接,都能使進入開關管VI發(fā)射極的一端始終是正電壓;V1是電子開關,該開關的通、斷受單片機P3.7口控制,當P3.7為高電平時.V2、VI相繼導通,電話線路上的48V電壓通過VI加到R5兩端,電話線上有電流通過,此時處于摘機狀態(tài);當P3.7為低電平時.V2、VI截止。電話線上沒有電流通過,此時處于掛機狀態(tài)。在摘機狀態(tài),由電話機房送出的48V供電電壓大部分由電話線的線路電阻衰減.R5兩端產生的電壓降大約在5V~15V之問。
2.單片機撥號控制電路
89C2051完成對撥號芯片的控制,R8、c5為復位元件,完成上電復位,JTI為6MHz晶振。
用Pl口的8根線完成對撥號芯片的控制。
3.DTMF號碼產生及放大電路
使用MK5087型DTMF撥號專用芯片。該芯片原本是行列式按鍵輸入芯片,即4條行線及4條列線組成16個按鍵,實踐證明,該芯片不但具有行列式鍵盤輸入,而且與51系列單片機具有良好的接口性能。下面對該芯片各引腳的功能予以介紹。
第(1)腳:電源正極,工作電壓范圍為3.5V—10V。(2)腳:狀態(tài)輸出端,當芯片發(fā)出DTMF信號時。該腳呈低電平,否則呈高電平。(3)、(4)、(5)、(9)腳:鍵盤列線輸入端,內接下拉電阻,高電平有效,當該腳與任一行線連接,或者一條行線與一條列線同時有效時,此時芯片發(fā)出DTMF信號。
(6)腳:電源負極。(7)、(8)腳:振蕩輸入、輸出端,接3.58MHz晶體。(10)腳:該腳與第(2)腳正好相反,當芯片發(fā)出DTMF信號時,該腳呈高電平,否則呈低電平。(11)、(12)、(13)、(14)腳:鍵盤行線輸入端,內接上拉電阻,低電平有效,當該腳與任一列線連接,或者一條行線與一條列線同時有效時,芯片發(fā)出DTMF信號。(15)腳:單音是否有效控制端,內接上拉電阻,當該腳接地時,芯片只能發(fā)
出雙音頻,而不能發(fā)出單音頻:當該腳接高電平或懸空時,芯片既允許發(fā)出單音,又允許發(fā)出雙音,只有在行線和列線不同時有效的情況下,芯片才能發(fā)出單音頻信號。(16)腳:DTMF信號輸出端:(16)腳發(fā)出的DTMF信號經V3放大后,從V3集電極送入到線路中。
該芯片行列鍵盤與DTMF號碼為對應關系,當某一按鍵按下時,相當于該按鍵的行線R為低電平、列線C為高電平;同樣,當某一行線R為低電平、列線C為高電平時,等效于該行線與該列線交叉的按鍵被按下。
4.電源電路
電源電路中,220V交流電壓經變壓器B變?yōu)?V.然后經D5~D8整流,CI、C2濾波,再經ICl(7805)穩(wěn)壓.C3、C4濾波后輸出穩(wěn)定的Sv電壓,供單片機及號碼產生電路使用。
采用外加交流電源供電的優(yōu)點是:當電話線路過長(比如大干20km甚至更多)。如果電話線上的電壓因為線路過長衰耗太大,以致于到了終端,電壓降不能維持終端設備工作甚至為零的情況下,該系統(tǒng)仍然能夠正常工作。
二、制作安裝
所有元件安裝在50mmx80mm的板上。板上有8個螺絲孔,兩個用于將變壓器固定在線路板上,一個用于固定7805,其余5個用于將線路板和機殼固定。電話進線插座和出線插座安裝在機殼上,并通過連線與板上的JI和J2桿|連。指示燈LED在線路板上設計有安裝位置,也可根據(jù)外觀的設計需要將指示燈引出。J3為220V電雎輸入端.J4用于和機殼上的開關K連接。為便于改寫程序,單片機IC2不直接焊接在板上,而是通過IC插座插入,這樣改寫程序時,可直接將單片機從板子上拿下來。需要指出的是,由于R5產生的功耗較大,一定要用功率為IW或2W的水泥電阻.Rl要用不大干51Ω的保險電阻。變壓器用2W的即可,其他元件沒有特殊要求。
三、程序流程(見下圖)
四、源程序清單
下面是以撥手機號碼18797130900為例的源程序代碼:
評論