<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于PlCl6LF874單片機(jī)的電容測(cè)量模塊設(shè)計(jì)

          基于PlCl6LF874單片機(jī)的電容測(cè)量模塊設(shè)計(jì)

          作者: 時(shí)間:2011-09-08 來源:網(wǎng)絡(luò) 收藏

            電容式傳感器已廣泛應(yīng)用于工業(yè)、醫(yī)學(xué)、軍事等領(lǐng)城。但目前大部分電容測(cè)量方法集成化水平低、精度低,因而對(duì)電容特別是對(duì)微小電容的精確測(cè)量始終是一個(gè)很重要的內(nèi)容。振蕩法電路結(jié)構(gòu)簡(jiǎn)單、抗干擾能力差,板間內(nèi)電容影響測(cè)量結(jié)果;電橋法利用電橋平衡原理測(cè)量電容,測(cè)量結(jié)果受橋臂電容性能影響較大。本文用到美國 Micmchip公司PICl6LF874單片機(jī),該單片機(jī)采用RISC精簡(jiǎn)指令集、哈佛總線結(jié)構(gòu)、流水線指令方式,具有抗干擾能力強(qiáng)、功耗低、高性能、價(jià)格低等特性。

            1 PICl6LF874單片機(jī)

            PICl6系列單片機(jī)采用精簡(jiǎn)指令集(Reduced InstrucTIon Set Computer,RISC)結(jié)構(gòu),突破了傳統(tǒng)單片機(jī)對(duì)PC機(jī)在結(jié)構(gòu)上存在的自然依賴性;加上哈佛總線的存儲(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í)用的高性價(jià)比的單片機(jī)。

            PICl6LF874系列單片機(jī)包括一系列不同型號(hào)的器件。主要特點(diǎn)有:

            1)精簡(jiǎn)指令集技術(shù) PIC指令系統(tǒng)是專門根據(jù)小型機(jī)特點(diǎn)設(shè)計(jì)的,力求每一條指令達(dá)到更高的效率,減少指令功能的重復(fù)。高中低檔的門PIC單片機(jī)指令數(shù)分別為58條、35條和 33條。這就帶來了兩方面的好處,一方面可以使代碼的利用率大大提高,有利于提高執(zhí)行速度。另一方面給用戶學(xué)習(xí)、記憶和應(yīng)用帶來了極大的好處,編程和調(diào)試相對(duì)就更加容易,而且同樣的功能所需的編碼減少,節(jié)約了開發(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è)指令周期就可以完成訪問和操作。

            6)一次性可編程(OTP)技術(shù) OTP可以實(shí)現(xiàn)產(chǎn)品上市零等待(Zero time to market),并且可以根據(jù)用戶定制,滿足特定需要。產(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í),耗電電流典型值不超過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ī)連接的接口電路。

            


            電容測(cè)量模塊工作原理為:電容式傳感器輸出微弱的電容信號(hào),電容信號(hào)通過信號(hào)調(diào)理電路。進(jìn)入PS02l型電容數(shù)字轉(zhuǎn)換器,該器件的測(cè)量電容測(cè)量范嗣從0到幾十nF(無限制),經(jīng)過器件內(nèi)部轉(zhuǎn)換,通過對(duì)PS02l內(nèi)部寄存器的設(shè)置,得到需要的值;通過SPI把數(shù)據(jù)傳送到PICl6LF-874單片機(jī),測(cè)得的數(shù)據(jù)再通過單片機(jī)異步串行通信接口USART送到上位機(jī)(計(jì)算機(jī)),最后由上位機(jī)應(yīng)用程序來顯示測(cè)量結(jié)果以及保存測(cè)試數(shù)據(jù)。

            3 系統(tǒng)硬件連接

            本測(cè)量電路需要控制器件來控制數(shù)據(jù)的讀取和寫入,選用結(jié)構(gòu)簡(jiǎn)單,功能強(qiáng)大,并且兼容SPI串行接口的PICl6LF874單片機(jī)。由于PS02l的外圍接口是SPI,因此單片機(jī)能很好的控制PS02l工作,同時(shí)測(cè)量數(shù)據(jù)可以通過USART串行接口送入到上位機(jī)中。單片機(jī)的連接如圖2所示,PS02l的連接圖如圖3所示。

            

            

            4 系統(tǒng)軟件功能的實(shí)現(xiàn)

            基于PS021設(shè)計(jì)的應(yīng)用軟件包括檢測(cè)、控制、數(shù)據(jù)處理、數(shù)據(jù)庫管理和系統(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)鍵是選擇合適的軟件開發(fā)工具編寫相應(yīng)的應(yīng)用軟件。以圖形化編程語言開發(fā)該測(cè)試模塊。該開發(fā)環(huán)境能提供一個(gè)集成的開發(fā)環(huán)境,與儀器硬件連接方便,具有良好的用戶界面。根據(jù)上位機(jī)應(yīng)用程序設(shè)計(jì)的原理,得到測(cè)試系統(tǒng)的軟件,通過在軟件的主界面設(shè)置一些參數(shù),硬件電路和上位機(jī)相連,就能顯示測(cè)量結(jié)果。測(cè)量結(jié)果在數(shù)據(jù)顯示界面顯示,如圖4所示。

            

          基于PlCl6LF874單片機(jī)的電容測(cè)量模塊設(shè)計(jì)

            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ì)超過25%(PS02l的極限值)。參考電容是一個(gè)非常重要的部分,對(duì)于測(cè)量的質(zhì)量以及測(cè)量的溫度穩(wěn)定性有直接的影響。推薦的電容材料:CFCAP(太陽誘電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í)間來確定放電電阻阻值,最后選擇適當(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所示。

            

          基于PlCl6LF874單片機(jī)的電容測(cè)量模塊設(shè)計(jì)

            表1反映了被測(cè)電容測(cè)量值和標(biāo)稱值之間的相對(duì)誤差,同時(shí)也得知被測(cè)電容電容值越大,測(cè)量值和標(biāo)稱值相對(duì)誤差越小。由于被測(cè)電容受到環(huán)境溫度、焊錫量多少以及被測(cè)電容質(zhì)量等因素的影響,存在一定的誤差。通過多次測(cè)量進(jìn)行平均,以獲取更穩(wěn)定的電容值。在標(biāo)定好的系統(tǒng)下,對(duì)固定電容進(jìn)行測(cè)量來驗(yàn)證測(cè)量模塊的精確度,測(cè)量值和標(biāo)稱值非常接近,可認(rèn)為被測(cè)電容標(biāo)稱值誤差較小,進(jìn)一步得知電容測(cè)量模塊測(cè)量精度較高。

            6 結(jié)束語

            單片機(jī)能夠很好的控制電容測(cè)量模塊,對(duì)研究電容式傳感器有很好的促進(jìn)作用,該單片機(jī)簡(jiǎn)化了電路設(shè)計(jì),使測(cè)量結(jié)果達(dá)到較高的精度;同時(shí)這種測(cè)量模塊可以減小電路板的體積,從而減小整個(gè)裝置的體積;大大簡(jiǎn)化了電路設(shè)計(jì)過程、降低產(chǎn)品的開發(fā)難度、對(duì)加速產(chǎn)品的研制、降低生產(chǎn)成本具有非常重要的意義。實(shí)驗(yàn)結(jié)果證明,此測(cè)量模塊具有較好的實(shí)用性。

          晶振相關(guān)文章:晶振原理


          關(guān)鍵詞: PlCl6LF874 PlCl6LF874

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();