1 PIC16LF874單片機(jī)
PIC16系列單片機(jī)采用精簡(jiǎn)指令集(Reduced InSTructiON Set Computer,,RISC)結(jié)構(gòu),,突破了傳統(tǒng)單片機(jī)對(duì)PC機(jī)在結(jié)構(gòu)上存在的自然依賴(lài)性;加上哈佛總線的存儲(chǔ)器結(jié)構(gòu)、兩級(jí)流水線指令結(jié)構(gòu),、單周期指令等技術(shù),,從而在單片機(jī)硬件結(jié)構(gòu)上獨(dú)辟蹊徑,大大提高了系統(tǒng)運(yùn)行的效率,。除此之外,,針對(duì)單片機(jī)機(jī)應(yīng)用的特點(diǎn),從功耗,、驅(qū)動(dòng)能力,、外圍模塊設(shè)計(jì)等方面,PIC單片機(jī)也有一些獨(dú)到之處,,從而使得PIC成為一款方便實(shí)用的高性?xún)r(jià)比的單片機(jī),。
PIC16LF874系列單片機(jī)包括一系列不同型號(hào)的器件。主要特點(diǎn)有:
1)精簡(jiǎn)指令集技術(shù) PIC指令系統(tǒng)是專(zhuān)門(mén)根據(jù)小型機(jī)特點(diǎn)設(shè)計(jì)的,,力求每一條指令達(dá)到更高的效率,,減少指令功能的重復(fù)。高中低檔的門(mén)PIC單片機(jī)指令數(shù)分別為58條,、35條和 33條,。這就帶來(lái)了兩方面的好處,一方面可以使代碼的利用率大大提高,,有利于提高執(zhí)行速度,。另一方面給用戶(hù)學(xué)習(xí)、記憶和應(yīng)用帶來(lái)了極大的好處,,編程和調(diào)試相對(duì)就更加容易,,而且同樣的功能所需的編碼減少,,節(jié)約了開(kāi)發(fā)時(shí)間。
2)哈佛(Harvard)總線結(jié)構(gòu) 哈佛結(jié)構(gòu)是程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器獨(dú)立編址,,即兩者位于不同的物理空間,。PIC系列單片機(jī)不僅采用哈佛體系結(jié)構(gòu),而且采用哈佛總線結(jié)構(gòu),,從而充分發(fā)揮了哈佛結(jié)構(gòu)的潛在優(yōu)勢(shì),。大大提升了系統(tǒng)的運(yùn)行效率和數(shù)據(jù)可靠性。
3)單字節(jié)指令 單字節(jié)指令對(duì)單片機(jī)系統(tǒng)是革新性的變化,。高中低檔的PIC單片機(jī)的指令位數(shù)分別為16位,、14位、12位,。ROM和RAM的尋址相對(duì)獨(dú)立,,所有的指令實(shí)現(xiàn)了單字節(jié)化,不僅使數(shù)據(jù)的存取更加安全,,其運(yùn)行速度也得到了顯著的提高,。
4)兩級(jí)流水線指令結(jié)構(gòu) 由于采用了哈佛總線結(jié)構(gòu),在器件內(nèi)部將數(shù)據(jù)總線和指令總線分離,,并且采用了不同的總線寬度,。當(dāng)一條指令被執(zhí)行時(shí),下一條指令同時(shí)被取出,,使得在每個(gè)時(shí)鐘周期可以獲得更高的效率,。
5)寄存器組結(jié)構(gòu) PIC的所有寄存器,包括I/O端口,、定時(shí)器和程序計(jì)數(shù)器等都采用RAM結(jié)構(gòu)形式,并且只需要一個(gè)指令周期就可以完成訪問(wèn)和操作,。
6)一次性可編程(OTP)技術(shù) OTP可以實(shí)現(xiàn)產(chǎn)品上市零等待(Zero time to market),,并且可以根據(jù)用戶(hù)定制,滿(mǎn)足特定需要,。產(chǎn)品定制可以顯著提高產(chǎn)品的生命周期,,增強(qiáng)產(chǎn)品的市場(chǎng)競(jìng)爭(zhēng)力。
7)功耗低 供電電壓為2.0~5.5V,,當(dāng)使用4 MHz晶振,,供電電壓為3V時(shí),耗電電流典型值不超過(guò)6 mA:當(dāng)用32 kHz晶振,,供電電壓力3 V時(shí),,耗電電流典型值為20 mA,睡眠模式耗電電流更是低于lμA,。
8)品種齊全,、方便選擇 PIC系列單片機(jī)目前已形成具有高,、中、低3檔共50多種型號(hào)的龐大家族,,功能靈活多樣,,能適應(yīng)多種應(yīng)用場(chǎng)合的不同需要。
2 電容測(cè)量模塊工作原理
電容測(cè)量模塊總體設(shè)計(jì)原理框圖如圖l所示,,包括電源管理電路,、PICl6LF874單片機(jī)、電容式傳感器,、信號(hào)調(diào)理電路,、PS021電容數(shù)字轉(zhuǎn)化器以及與計(jì)算機(jī)連接的接口電路。
圖1 電容測(cè)量模塊原理圖
電容測(cè)量模塊工作原理為:電容式傳感器輸出微弱的電容信號(hào),,電容信號(hào)通過(guò)信號(hào)調(diào)理電路,。進(jìn)入PS02l型電容數(shù)字轉(zhuǎn)換器,該器件的測(cè)量電容測(cè)量范嗣從0到幾十nF(無(wú)限制),,經(jīng)過(guò)器件內(nèi)部轉(zhuǎn)換,,通過(guò)對(duì)PS02l內(nèi)部寄存器的設(shè)置,得到需要的值;通過(guò)SPI把數(shù)據(jù)傳送到PICl6LF-874單片機(jī),,測(cè)得的數(shù)據(jù)再通過(guò)單片機(jī)異步串行通信接口USART送到上位機(jī)(計(jì)算機(jī)),,最后由上位機(jī)應(yīng)用程序來(lái)顯示測(cè)量結(jié)果以及保存測(cè)試數(shù)據(jù)。
3 系統(tǒng)硬件連接
本測(cè)量電路需要控制器件來(lái)控制數(shù)據(jù)的讀取和寫(xiě)入,,選用結(jié)構(gòu)簡(jiǎn)單,,功能強(qiáng)大,并且兼容SPI串行接口的PICl6LF874單片機(jī),。由于PS02l的外圍接口是SPI,,因此單片機(jī)能很好的控制PS02l工作,同時(shí)測(cè)量數(shù)據(jù)可以通過(guò)USART串行接口送入到上位機(jī)中,。單片機(jī)的連接如圖2所示,,PS02l的連接圖如圖3所示。
圖2 PIC16LF874單片機(jī)的連線
圖3 PSO21測(cè)量電容連線
4 系統(tǒng)軟件功能的實(shí)現(xiàn)
基于PS021設(shè)計(jì)的應(yīng)用軟件包括檢測(cè),、控制,、數(shù)據(jù)處理、數(shù)據(jù)庫(kù)管理和系統(tǒng)界面等程序,。在程序運(yùn)行速度和存儲(chǔ)容量許可的條件下,,盡量用軟件實(shí)現(xiàn)傳統(tǒng)儀器系統(tǒng)的硬件功能,簡(jiǎn)化硬件配置,。此外,,界面是測(cè)試系統(tǒng)和虛擬儀器的“窗口”,是系統(tǒng)顯示功能信息的主要途徑。軟件設(shè)計(jì)不僅要實(shí)現(xiàn)功能,,而且要界面美觀,。在確定測(cè)試系統(tǒng)的硬件平臺(tái)后,關(guān)鍵是選擇合適的軟件開(kāi)發(fā)工具編寫(xiě)相應(yīng)的應(yīng)用軟件,。以圖形化編程語(yǔ)言開(kāi)發(fā)該測(cè)試模塊,。該開(kāi)發(fā)環(huán)境能提供一個(gè)集成的開(kāi)發(fā)環(huán)境,與儀器硬件連接方便,,具有良好的用戶(hù)界面,。根據(jù)上位機(jī)應(yīng)用程序設(shè)計(jì)的原理,得到測(cè)試系統(tǒng)的軟件,,通過(guò)在軟件的主界面設(shè)置一些參數(shù),,硬件電路和上位機(jī)相連,就能顯示測(cè)量結(jié)果,。測(cè)量結(jié)果在數(shù)據(jù)顯示界面顯示,,如圖4所示。
圖4 測(cè)量數(shù)據(jù)顯示頁(yè)面
5 試驗(yàn)與結(jié)果
運(yùn)用上述軟件測(cè)量,。在測(cè)量之前,,必須對(duì)測(cè)量系統(tǒng)進(jìn)行標(biāo)定,標(biāo)定時(shí)PS02l要求參考電容Cref與被測(cè)電容Cmeas在同一電容值范圍,,即確保 Cmeas/Cref比率不會(huì)超過(guò)25%(PS02l的極限值),。參考電容是一個(gè)非常重要的部分,對(duì)于測(cè)量的質(zhì)量以及測(cè)量的溫度穩(wěn)定性有直接的影響,。推薦的電容材料:CFCAP(太陽(yáng)誘電Taiyo Yuden公司的多層陶瓷電容)系列,,COG或者NPO陶瓷電容。放電電阻Rdis與放電時(shí)間密切相關(guān),,放電時(shí)間τ=0.7R(C+20 pF),,時(shí)間常數(shù)τ范圍為2~10μs(推薦5μs)。根據(jù)公式計(jì)算之放電電阻阻值,。
試驗(yàn)中,,分別選取1、2,、3、5.1,、6.8,、8.2、9.1,、12,、13、15,、16.5,、18 pF的固定電容作為被測(cè)電容,。根據(jù)被測(cè)電容的范圍確定參考電容的大小,然后根據(jù)被測(cè)電容和參考電容值,,并結(jié)合放電時(shí)間來(lái)確定放電電阻阻值,,最后選擇適當(dāng)?shù)臏y(cè)量模式進(jìn)行測(cè)量。在標(biāo)定好的系統(tǒng)下,,在參考端和被測(cè)端分別接一只參考電容,,此時(shí)在數(shù)據(jù)顯示界面顯示的值為參考電容值以及寄生電容值的和(圖3中 Sensor l顯示的數(shù)據(jù));然后在被測(cè)端參考電容的基礎(chǔ)上再并聯(lián)被測(cè)電容,此時(shí)測(cè)得的數(shù)據(jù)為被測(cè)電容值,、參考電容值以及寄生電容值的總和,,以上兩步所測(cè)值相減就是被測(cè)的電容值,最后得到的被測(cè)電容值統(tǒng)計(jì)如表l所示,。
表1反映了被測(cè)電容測(cè)量值和標(biāo)稱(chēng)值之間的相對(duì)誤差,,同時(shí)也得知被測(cè)電容電容值越大,測(cè)量值和標(biāo)稱(chēng)值相對(duì)誤差越小,。由于被測(cè)電容受到環(huán)境溫度,、焊錫量多少以及被測(cè)電容質(zhì)量等因素的影響,存在一定的誤差,。通過(guò)多次測(cè)量進(jìn)行平均,,以獲取更穩(wěn)定的電容值。在標(biāo)定好的系統(tǒng)下,,對(duì)固定電容進(jìn)行測(cè)量來(lái)驗(yàn)證測(cè)量模塊的精確度,,測(cè)量值和標(biāo)稱(chēng)值非常接近,可認(rèn)為被測(cè)電容標(biāo)稱(chēng)值誤差較小,,進(jìn)一步得知電容測(cè)量模塊測(cè)量精度較高,。
6 結(jié)束語(yǔ)
PlCl6LF874單片機(jī)能夠很好的控制電容測(cè)量模塊,對(duì)研究電容式傳感器有很好的促進(jìn)作用,,該單片機(jī)簡(jiǎn)化了電路設(shè)計(jì),,使測(cè)量結(jié)果達(dá)到較高的精度;同時(shí)這種測(cè)量模塊可以減小電路板的體積,從而減小整個(gè)裝置的體積;大大簡(jiǎn)化了電路設(shè)計(jì)過(guò)程,、降低產(chǎn)品的開(kāi)發(fā)難度,、對(duì)加速產(chǎn)品的研制、降低生產(chǎn)成本具有非常重要的意義,。實(shí)驗(yàn)結(jié)果證明,,此測(cè)量模塊具有較好的實(shí)用性。