版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、西安郵電學(xué)院開(kāi)放性實(shí)驗(yàn)報(bào)告-基于f330的差分電容檢測(cè)系統(tǒng)班級(jí):微電子0803姓名: 溫長(zhǎng)珍一 前言 電容傳感器廣泛的應(yīng)用于多種檢測(cè)系統(tǒng)中,用以測(cè)量諸如液位、壓力、位移、加速度等物理量,但目前大部分電容測(cè)量方法集成化水平低、精度低,因而對(duì)電容特別是對(duì)微小電容的精確測(cè)量始終是一個(gè)很重要的課題。在某些場(chǎng)合,傳感電容的變化量往往僅有幾個(gè)皮法大小,這就對(duì)電容測(cè)量電路提出了更高的要求。 目前用于解決測(cè)量微小電容的方法主要有電荷轉(zhuǎn)移法和交流法,這兩種電路的基本測(cè)量原理是通過(guò)激勵(lì)信號(hào)連續(xù)對(duì)電容充放電,形成與被測(cè)電容成比例的電流或電壓信號(hào),從而測(cè)量出被測(cè)電容值。它們的共同缺點(diǎn)是脈動(dòng)噪聲大,需使用濾波器及考慮相
2、位補(bǔ)償,電路結(jié)構(gòu)相對(duì)復(fù)雜,成本也較高。本次試驗(yàn)將利用ad7745 c-digital芯片設(shè)計(jì)微小電容檢測(cè)電路,將電容信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)上傳到f330單片機(jī),然后輸出示波器上。從而實(shí)現(xiàn)對(duì)微小電容或微小電容差的檢測(cè)。二 設(shè)計(jì)目標(biāo) 利用電容電壓轉(zhuǎn)換芯片和單片機(jī)實(shí)現(xiàn)數(shù)字式電容電壓轉(zhuǎn)換電路的功能,實(shí)現(xiàn)對(duì)微小電容或微小電容差的檢測(cè)。三 設(shè)計(jì)內(nèi)容 利用ad7745 c-digital芯片設(shè)計(jì)微小電容檢測(cè)電路,其中ad7745與單片機(jī)c8051f330進(jìn)行連接,f330做主機(jī),ad7745做從機(jī),ad7745與f330之間通過(guò)i2c總線協(xié)議進(jìn)行連接,將ad7745的輸出信號(hào)送至f330,并利用單片機(jī)內(nèi)部自帶的
3、數(shù)模轉(zhuǎn)換功能將數(shù)字信號(hào)轉(zhuǎn)換為模擬電壓信號(hào)進(jìn)行最后的輸出,從而實(shí)現(xiàn)對(duì)微小電容或微小電容差的檢測(cè)。 系統(tǒng)主要包括電源模塊、電容轉(zhuǎn)換模塊、信號(hào)放大模塊。其中電源模塊主要是將15v的直流電壓轉(zhuǎn)換為3.3v來(lái)給f330和ad7745供電,電容轉(zhuǎn)換模塊是將電容信號(hào)轉(zhuǎn)換成相應(yīng)的數(shù)字信號(hào),f330從ad7745中讀出此數(shù)字信號(hào)之后經(jīng)過(guò)相應(yīng)的處理再輸出。而信號(hào)放大模塊是將f330的輸出信號(hào)加以放大,從而能夠更好的在示波器上顯示出來(lái)。主要芯片介紹(只介紹本次試驗(yàn)使用到的部分) 1、f330 1.1存儲(chǔ)系統(tǒng)c8051f330/1 器件是完全集成的混合信號(hào)片上系統(tǒng)型 mcu。cip-51 有標(biāo)準(zhǔn) 8051 的程序和數(shù)
4、據(jù)地址配置。它包括 256 字節(jié)的數(shù)據(jù) ram,其中高 128字節(jié)為雙映射。用間接尋址訪問(wèn)通用 ram 的高128 字節(jié),用直接尋址訪問(wèn) 128 字節(jié)的 sfr地址空間。數(shù)據(jù) ram 的低 128 字節(jié)可用直接或間接尋址方式訪問(wèn)。前 32 個(gè)字節(jié)為 4 個(gè)通用寄存器區(qū),接下來(lái)的 16 字節(jié)既可以按字節(jié)尋址也可以按位尋址。程序存儲(chǔ)器包含 8kb 的flash。該存儲(chǔ)器以 512 字節(jié)為一個(gè)扇區(qū),可以在系統(tǒng)編程,且不需特別的編程電壓。 1.2指令系統(tǒng)cip-51 采用流水線結(jié)構(gòu),與標(biāo)準(zhǔn)的 8051 結(jié)構(gòu)相比指令執(zhí)行速度有很大的提高。在一個(gè)標(biāo)準(zhǔn)的 8051 中,除 mul和 div以外所有指令都需要
5、 12 或 24 個(gè)系統(tǒng)時(shí)鐘周期,最大系統(tǒng)時(shí)鐘頻率為 12-24mhz。而對(duì)于 cip-51 內(nèi)核,70%的指令的執(zhí)行時(shí)間為 1 或2個(gè)系統(tǒng)時(shí)鐘周期,只有 4 條指令的執(zhí)行時(shí)間大于 4 個(gè)系統(tǒng)時(shí)鐘周期。cip-51 工作在最大系統(tǒng)時(shí)鐘頻率 25mhz 時(shí),它的峰值速度達(dá)到 25mips。 1.3片內(nèi)調(diào)試電路c8051f330/1器件具有片內(nèi)silicon labs 2線(c2)接口調(diào)試電路,支持使用安裝在最終應(yīng)用系統(tǒng)中的產(chǎn)品器件進(jìn)行非侵入式、全速的在系統(tǒng)調(diào)試。 silicon labs的調(diào)試系統(tǒng)支持觀察和修改存儲(chǔ)器和寄存器,支持?jǐn)帱c(diǎn)和單步執(zhí)行。不需要額外的目標(biāo)ram、程序存儲(chǔ)器、定時(shí)器或通信通
6、道。在調(diào)試時(shí)所有的模擬和數(shù)字外設(shè)都正常工作。當(dāng)mcu單步執(zhí)行或遇到斷點(diǎn)而停止運(yùn)行時(shí),所有的外設(shè)(adc和smbus除外)都停止運(yùn)行,以保持與指令執(zhí)行同步。 1.4 i/o接口c8051f330有17個(gè)i/o引腳(兩個(gè)8位口和一個(gè)1位口) 。c8051f330/1端口的工作情況與標(biāo)準(zhǔn)8051相似,但有一些改進(jìn)。每個(gè)端口引腳都可以被配置為模擬輸入或數(shù)字i/o。被選擇作為數(shù)字i/o的引腳還可以被配置為推挽或漏極開(kāi)路輸出。在標(biāo)準(zhǔn)8051中固定的“弱上拉”可以被總體禁止,這為低功耗應(yīng)用提供了進(jìn)一步節(jié)電的能力。 數(shù)字交叉開(kāi)關(guān)允許將內(nèi)部數(shù)字系統(tǒng)資源映射到端口i/o引腳。可通過(guò)設(shè)置交叉開(kāi)關(guān)控制寄存器將片內(nèi)的計(jì)
7、數(shù)器/定時(shí)器、串行總線、硬件中斷、比較器輸出以及微控制器內(nèi)部的其它數(shù)字信號(hào)配置為出現(xiàn)在端口i/o引腳。這一特性允許用戶根據(jù)自己的特定應(yīng)用選擇通用端口i/o和所需數(shù)字資源的組合。 1.5 串行端口c8051f330/1系列mcu內(nèi)部有一個(gè)smbus/i2c接口、一個(gè)具有增強(qiáng)型波特率配置的全雙工uart和一個(gè)增強(qiáng)型spi接口。每種串行總線都完全用硬件實(shí)現(xiàn),都能向cip-51產(chǎn)生中斷,因此需要很少的cpu干預(yù)。 1.6 10位電流輸出dacc8051f330內(nèi)部有一個(gè)10位電流方式數(shù)/模轉(zhuǎn)換器(ida0) 。ida0的最大輸出電流可以有三種不同的設(shè)置:0.5ma、1ma和2ma。ida0具有靈活的輸
8、出更新機(jī)制,允許無(wú)縫滿度變化,支持無(wú)抖動(dòng)波形更新。ida0有三種更新方式:寫ida0h、定時(shí)器溢出或外部引腳邊沿。 1 芯片信息2 相關(guān)寄存器配置 2、ad7745 2.1 工作原理 ad7745的核心是一個(gè)高精度的轉(zhuǎn)換器,由 1個(gè)二階調(diào)制器和1 個(gè)三階數(shù)字濾波器構(gòu)成。ad7745可以配置成一個(gè)電容數(shù)字轉(zhuǎn)換器(cdc),也可以配置成一個(gè)經(jīng)典的模數(shù)轉(zhuǎn)換器(adc)。除了轉(zhuǎn)換器外,ad7745集成了一個(gè)多路復(fù)用器、一個(gè)激勵(lì)源和電容數(shù)模轉(zhuǎn)換器(cap-dac)作為電容的輸入、一個(gè)溫度傳感器、一個(gè)時(shí)鐘發(fā)生器、一個(gè)控制校正邏輯、i2c接口。ad7745的功能框圖如圖 1 所示。下面對(duì)圖中的主要部分進(jìn)行功
9、能說(shuō)明。(1)-調(diào)制器 -調(diào)制器是 ad7745的核心,它是將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)的器件,其工作原理是:被測(cè)的電容cx被連接在cdc激勵(lì)輸出(exca或者excb)與-調(diào)制器輸入(vin(+)之間,在 1 個(gè)轉(zhuǎn)換周期,一個(gè)方波激勵(lì)信號(hào)(從 exca 或者excb 輸出)被加到 cx,-調(diào)制器連續(xù)采樣經(jīng)過(guò) cx 的電荷。數(shù)字濾波器處理-調(diào)制器的輸出,數(shù)據(jù)經(jīng)過(guò)數(shù)字濾波器輸出,經(jīng)過(guò)校正,由 i2c 串行接口將數(shù)據(jù)讀出。 (2)電容數(shù)模轉(zhuǎn)換器(capdac) 電容數(shù)模轉(zhuǎn)換器(capdac)可以被理解成一個(gè)負(fù)電容直接內(nèi)部連接到 cin 引腳。在ad77415中有 2個(gè) capdac,一個(gè)連接到 cin
10、1(+),另一個(gè)連接到 cin1(一),如圖 2所示。輸入電容 cx,cy(差分模式下)與輸出數(shù)據(jù)(data)之間的關(guān)系如下:電容數(shù)模轉(zhuǎn)換器可以用來(lái)編程被測(cè)電容的輸入范圍,通過(guò)設(shè)置 capdac(+)和capdac(一)的值,可以改變被測(cè)電容的范圍,比如在單端模式下,將 cap-dac設(shè)置成溫度傳感器4 pf,被測(cè)電容的變化范圍成了 08 pf。 (3)i2c 串行接口 ac7745支持 i2c 兼容2線串行接口,i2c 總線上的 2 根線是 scl(時(shí)鐘)和 sda(數(shù)據(jù)),所有的地址、控制和數(shù)據(jù)信息都通過(guò)這 2根線進(jìn)行傳輸。2.2 引腳功能 ad7745的引腳分布如圖 3 所示可知。各引腳
11、功能描述如下: scl:i2c 串行時(shí)鐘輸入; rdy:邏輯輸出。當(dāng)該引腳信號(hào)的下降沿到來(lái)時(shí),表示在已經(jīng)使能的通道轉(zhuǎn)換已經(jīng)完成,同時(shí)新的數(shù)據(jù)已經(jīng)到達(dá)該通道; exca,excb:cdc 激勵(lì)輸出。被測(cè)電容接在 exc 引腳和cin 引腳之間; refin(+),refin(-):差分參考電壓輸入; cin1(-):在差分模式下,cdc 的負(fù)電容輸入;在單端模式下,該引腳內(nèi)部斷開(kāi); cin1(+):在差分模式下,cdc 的正電容輸入;在單端模式下,cdc 的電容輸入; nc:空管腳; vin(+),vin(-):adc 的差分電壓輸入。此引腳同時(shí)連接外部溫度探測(cè)二極管;gnd:接地端; vdd:
12、電源端;2.75.25 v 單電源供電; sda:雙向i2c 串行數(shù)據(jù)線。2.3 ad7745的工作模式 (1) 差分模式 當(dāng)被測(cè)電容傳感器是差分式電容傳感器,其連接方法如圖 2所示,差分電容探測(cè)器的正電容輸入連接到cin1(+),負(fù)電容輸入連接到cin1(-)。通過(guò)i2c接口將ad7745中的電容設(shè)置寄存器(cap setup register)中的capdif位設(shè)置成 1。 (2) 單端模式 當(dāng)被測(cè)電容傳感器是是單端電容傳感器,其連接方法如圖 4所示??梢酝ㄟ^(guò)設(shè)定capdac(+)的值調(diào)整被測(cè)的電容傳感器的輸出范圍。四 軟件設(shè)計(jì)4.1、i2c協(xié)議規(guī)則4.1.1、i2c工作原理:i2c總線是
13、由數(shù)據(jù)線sda和時(shí)鐘線scl構(gòu)成的串行總線,可發(fā)送和接收數(shù)據(jù)。在主機(jī)和從機(jī)之間、從機(jī)與從機(jī)之間進(jìn)行雙向數(shù)據(jù)傳輸,串行的8位雙向數(shù)據(jù)傳輸位速率在標(biāo)準(zhǔn)模式下可達(dá)100kb/s,快速模式下可達(dá)400kb/s,高速模式下可達(dá)3.4mb/s。每個(gè)連接到總線上的器件都是并聯(lián)在總線上的,即可以作為發(fā)送器也可以作為接收器,并且它們都有唯一的地址。i2c總線在傳送數(shù)據(jù)過(guò)程中共有三種類型信號(hào): 開(kāi)始信號(hào):scl為高電平時(shí),sdl由高電平向低電平跳變,開(kāi)始傳送數(shù)據(jù); 結(jié)束信號(hào):scl為高電平時(shí),sdl由低電平向高電平跳變,結(jié)束傳送數(shù)據(jù); 應(yīng)答信號(hào):接收數(shù)據(jù)的從機(jī)在接收到8bit數(shù)據(jù)后,向發(fā)送數(shù)據(jù)的主機(jī)發(fā)出特定的低電
14、平脈沖,表示已收到數(shù)據(jù);主機(jī)向從機(jī)發(fā)出一個(gè)信號(hào)后,等待從控制器發(fā)出一個(gè)確認(rèn)信號(hào),主機(jī)接到確認(rèn)信號(hào)后根據(jù)實(shí)際情況判斷是否繼續(xù)傳遞信號(hào)。4.1.2、ad7745應(yīng)用i2c總線的讀寫過(guò)程:ad7745/6有一個(gè)固定地址,二進(jìn)制數(shù)為1001000x,最低位為方向位,因此主機(jī)讀操作時(shí)發(fā)送地址0x91,寫操作時(shí)發(fā)送地址0x90。讀操作過(guò)程:主機(jī)發(fā)送起始標(biāo)志主機(jī)發(fā)送地址0x90從機(jī)回復(fù)確認(rèn)標(biāo)志主機(jī)發(fā)送寄存器地址值從機(jī)回復(fù)確認(rèn)標(biāo)志主機(jī)發(fā)起始標(biāo)志主機(jī)發(fā)送地址0x91從機(jī)回復(fù)確認(rèn)標(biāo)志從機(jī)回復(fù)數(shù)據(jù)首字節(jié)主機(jī)發(fā)送確認(rèn)標(biāo)志從機(jī)回復(fù)最末字節(jié)主機(jī)不確認(rèn)主機(jī)發(fā)送停止位寫操作過(guò)程:主機(jī)發(fā)送起始標(biāo)志主機(jī)發(fā)送地址0x90從機(jī)回復(fù)確
15、認(rèn)標(biāo)志主機(jī)發(fā)送寄存器地址值從機(jī)回復(fù)確認(rèn)標(biāo)志主機(jī)發(fā)送數(shù)據(jù)首字節(jié)從機(jī)回復(fù)確認(rèn)標(biāo)志主機(jī)發(fā)送最末數(shù)據(jù)字節(jié)從機(jī)發(fā)送確認(rèn)標(biāo)志主機(jī)發(fā)送停止位。主機(jī)連續(xù)讀或?qū)憦臋C(jī)寄存器時(shí),從機(jī)寄存器地址自動(dòng)加1。4.2、流程圖主程序流程圖: f330初始化振蕩器初始化:oscicn=0xc3關(guān)閉看門狗:pca0md &= 0xbf開(kāi)總中斷:ea = 1端口初始化:xb0=0x04,xb1=0x40,p0skip = 0x0f定時(shí)器1初始化:產(chǎn)生總線時(shí)鐘定時(shí)器3初始化:總線時(shí)鐘超時(shí)檢測(cè)smbus初始化:smb0cf = 0xdd,eie1 |= 0x01內(nèi)部da初始化:ida0cn |= 0xf2ad7745初始化cap se
16、t-up 0x07:0xa0exc set-up 0x09:0x0bconfiguration 0x0a:0x01讀ad7745的狀態(tài)寄存器電容轉(zhuǎn)換是否完成,即讀rdy位是否為0rdy = 1rdy = 0讀cap data register中24位數(shù)據(jù)把10位的數(shù)據(jù)寫入ida0rdy = 1中斷處理程序流程圖:?jiǎn)?dòng)中斷處理程序判斷狀態(tài)向量smb0cn & 0xf0發(fā)送從機(jī)地址主發(fā)送器模式0xc0主接收器模式0x80起始條件已發(fā)送0xe0停止傳輸再發(fā)送起始條件否ack是否為1清除中斷標(biāo)志位si=0是否否從機(jī)地址是否發(fā)送了寄存器地址是否發(fā)送是是停止傳輸釋放總線發(fā)送數(shù)據(jù)寫判斷是讀ad7745狀態(tài)還
17、是寫狀態(tài)發(fā)送寄存器地址讀發(fā)送起始條件更改lsb=1主接收器模式0x80保存rdy位讀轉(zhuǎn)換數(shù)據(jù)保存讀出的數(shù)據(jù)讀rdy位判斷是讀rdy位,還是讀轉(zhuǎn)換數(shù)據(jù)ack=0發(fā)終止條件釋放總線清除中斷標(biāo)志位si=04.3、ad7745關(guān)鍵寄存器的配置1、 cap data regisister:這是一個(gè)24位的只讀寄存器,它由三個(gè)8位的寄存器組成,這三個(gè)寄存器用來(lái)存儲(chǔ)和不斷的更新測(cè)得的電容信息寄存器地址指針位7位0cap data h0x010x00(高8位)cap data m0x020x00(中8位)cap data l0x030x00(低8位)2、cap set-up register(電容頻道設(shè)置):
18、 地址指針 0x07位位7位6位5位4位3位2位1位0助記符capencin2capdiff-capchop默認(rèn)值00000000本次實(shí)驗(yàn)值10100000說(shuō)明:位7:capen = 1使電容渠道單一的轉(zhuǎn)換,連續(xù)的轉(zhuǎn)換,和(或)校準(zhǔn)位6:cin2 = 1開(kāi)關(guān)的內(nèi)部信號(hào)到第二個(gè)電容式輸入的ad7746位5:diff = 1設(shè)置差分模式為選定的電容輸入位4 1:無(wú)效位,全部置0位0:capchop = 0表示特定的電容頻道性能 capchop = 1加倍電容頻道轉(zhuǎn)化時(shí)間并且提高電容信道噪音性能為最長(zhǎng)的轉(zhuǎn)換時(shí)間3、exc set-up register(電容頻道激勵(lì)設(shè)置): 地址指針 0x09位位7
19、位6位5位4位3位2位1位0助記符clkctrrlexconexcbexcaexclvl1exclvl0默認(rèn)值00000011本次實(shí)驗(yàn)值00000011說(shuō)明:位7:clkctrrl = 0 選擇ad7745clkctrrl = 1 選擇ad7746位6:excon = 0 只有在電容頻道轉(zhuǎn)換時(shí)激勵(lì)信號(hào)呈現(xiàn)在輸出端 excon = 1 在電容和電壓/溫度轉(zhuǎn)換時(shí)激勵(lì)信號(hào)都呈現(xiàn)在輸出端位5:excb = 1使excb針為激勵(lì)輸出位4:excb = 1使excb針為反激勵(lì)輸出位3:exca = 1使exca針為激勵(lì)輸出位2:exca = 1使exca針為反激勵(lì)輸出位1位0:激勵(lì)電壓水平(都置1是靈敏度
20、最高)4、configuration register(轉(zhuǎn)換器更新速率和經(jīng)營(yíng)方式設(shè)置):地址指針 0x0a位位7位6位5位4位3位2位1位0助記符vtf1vtf0capf2capf1capf0md2md1md0默認(rèn)值10100011本次實(shí)驗(yàn)值00000001說(shuō)明:位7位6:和本次實(shí)驗(yàn)無(wú)關(guān)位5位3:這三個(gè)位是用來(lái)設(shè)置電容頻道數(shù)字濾波器和轉(zhuǎn)換時(shí)間/更新速率的,三個(gè)位全置1時(shí)轉(zhuǎn)換時(shí)間最長(zhǎng)、更新速率最長(zhǎng),但數(shù)字濾波器的帶寬最小,使得噪聲最低位2位0:這三個(gè)位用來(lái)設(shè)置轉(zhuǎn)換器的運(yùn)作模式的md2md1md0模式000空閑001連續(xù)010單一011掛起101校準(zhǔn)待添加的隱藏文字內(nèi)容15、cap dac a r
21、egister(電容的dac設(shè)置):地址指針0x0b位位7位6位5位4位3位2位1位0標(biāo)識(shí)符dacaena daca默認(rèn)值0 0x00本次實(shí)驗(yàn)值 1 0x80說(shuō)明:位7:dacaena = 1連接電容的daca到正的電容輸入端位6位1:daca的值,0x0、0 = 0 pf,0x7f = 滿量程6、cap dac b register(電容的dac設(shè)置):地址指針 0x0c位位7位6位5位4位3位2位1位0標(biāo)識(shí)符dacaenb daca默認(rèn)值0 0x00本次實(shí)驗(yàn)值 1 0x80說(shuō)明:位7:dacaenb = 1連接電容的dacb到負(fù)的電容輸入端位6位1:dacb的值,0x00代表0 pf,0x
22、7f代表滿量程4.4、f330相關(guān)寄存器的配置1、 時(shí)鐘設(shè)置 tr0=0; /關(guān)閉定時(shí)器0 tmod=0x20; /設(shè)置定時(shí)器1的工作方式 ckcon=0x01; /定時(shí)器使用系統(tǒng)4分頻 tl1=0xef; /給定時(shí)器1 th1=0xef; / 裝初值 tr1=1; /允許定時(shí)器12、ida0設(shè)置ida0cn=0xf2; /ida0使能,寫ida0h觸發(fā)dac輸出更 新,2.0ma滿度輸出電流。3、交叉開(kāi)關(guān)設(shè)置 p0mdin=0xff; /p0.n引腳不被配置為模擬輸入 p0mdout=0xcd; p0skip=0x0f; /交叉開(kāi)關(guān)跳過(guò)p0.00.3 xbr0=0x04; /smbus連到端
23、口引腳 smb0cf=0xcd; / 配置sum配置寄存器,使能 xbr1=0xc0; / 交叉開(kāi)關(guān)使能 4、 中斷 eie1=0x81; /允許smbus中斷 eip1=0x01; /設(shè)smbus中斷優(yōu)先級(jí)為高 ie=0x80; /開(kāi)總中斷 si = 0; / sm_busy中斷標(biāo)志位清0 4.5、程序data unsigned char a0,a1,a2;data float c;unsigned char data i,j,k,l;#include #include bit smb_busy;bit flag;bit send_start;bit add_shujv;bit w_r; /
24、主接收模式,主發(fā)送模式標(biāo)志bit flag1; /等待標(biāo)志位bit flag2; /*系統(tǒng)初始化*/ / 忙碌標(biāo)志位 void system_initial (void) k=0; pca0md &= 0x40; /關(guān)閉看們狗/*設(shè)置定時(shí)器1,功能:用來(lái)提供總線的時(shí)鐘源 將總線的頻率設(shè)置為208khz* tr0=0; /關(guān)閉定時(shí)器0 tmod=0x20; /設(shè)置定時(shí)器1的工作方式/ ckcon=0x01; /定時(shí)器使用系統(tǒng)4分頻 tl1=0xef; /給定時(shí)器1 th1=0xef; / 裝初值 tr1=1; /允許定時(shí)器1/*ida0設(shè)置* ida0cn=0xf2; /ida0使能,寫ida0
25、h觸發(fā)dac輸出更新,2.0ma滿度輸出電流。 /*交叉開(kāi)關(guān)和sumbus設(shè)置* p0mdin=0xff; p0mdout=0xcd; p0skip=0x0f; /交叉開(kāi)關(guān)跳過(guò)p0.00.3 xbr0=0x04; /smbus連到端口引腳 smb0cf=0xcd; / 配置sum配置寄存器,使能 xbr1=0xc0; / 交叉開(kāi)關(guān)使能 /*中斷使能* eie1=0x81; /允許定時(shí)器3和smbus中斷 eip1=0x01; /設(shè)定定時(shí)器3中斷為低優(yōu)先級(jí),smbus中斷為高 ie=0x80; /開(kāi)總中斷 si = 0; / sm_busy中斷標(biāo)志位清0 /*初始化ad7745*void ad_
26、chushi(void) w_r=0; send_start=0; i=0; /全局變量置初值0, add_shujv=0; flag=0; sta=1; /產(chǎn)生起始條件 while(!flag); /等待配置ad7745寄存器/*讀數(shù)據(jù)*void read(void) flag1=0; flag2=0; j=0; sta=1; / 產(chǎn)生起始條件 while(!flag1); /*數(shù)據(jù)轉(zhuǎn)換* datachange (a0,a1,a2) ida0h=a0; ida0l=a1;/*主程序*void main() system_initial(); ad_chushi(); while(1) rea
27、d(); datachange(a0,a1,a2); /*中斷程序*void smbus_isr (void) interrupt 7 k=smb0cn; l=k&0xe0; if(!flag2)switch (l) case 0xe0: send_start=1; si = 0; sta = 0; sto=0; smb_busy=1; /發(fā)送了起始條件 if(!w_r) smb0dat = 0x90; if(i5) w_r=1; / 發(fā)送從機(jī)地址和寫 else smb0dat=0x91;sto=0;w_r=0;flag2=1; break; case 0xc0: if (ack) / 地址或
28、者數(shù)字字節(jié)已經(jīng)發(fā)出 if (send_start) / 已經(jīng)發(fā)送過(guò)起始條件和從機(jī)地址? if(!w_r) while(i5) /將從機(jī)寄存器地址裝入 if(!add_shujv) switch(i) case 0: add_shujv=1;smb0dat=0x07;break; case 1: add_shujv=1;smb0dat=0x09;break; case 2: add_shujv=1;smb0dat=0x0a;break; case 3: add_shujv=1;smb0dat=0x0b;break; case 4: add_shujv=1;smb0dat=0x0c;break;
29、else switch(i) case 0: smb0dat=0xa0;add_shujv=0;i+;break; case 1: smb0dat=0x0b;add_shujv=0;i+;break; case 2: smb0dat=0x01;add_shujv=0;i+;break; case 3: smb0dat=0x80;add_shujv=0;i+;break; case 4: smb0dat=0x80;add_shujv=0;i+;break; si=0;break; if(i=5) sto=1;si=0;flag=1;i+; /產(chǎn)生結(jié)束條件 else smb0dat=0x01; s
30、i=0; w_r=1; send_start=0; else sta=1;sto=0;si=0; else sta=1;sto=0;si=0; break; case 0x80: if(j=0) a0=smb0dat;ack=1;si=0;j+; else if(j=1) a1=smb0dat;ack=1;si=0; j+; else if(j=2) a2=smb0dat;ack=0;si=0;sta=0;sto=1;flag1=1; break; else si=0;flag2=0; 五 實(shí)驗(yàn)測(cè)試結(jié)果5.1 單電容的測(cè)試(08p)單端模式:capdiff=0 capdaca(+) = 8p capdacb(-) = 0p1、測(cè)試結(jié)果電容2.02.23.04.75.06.27.08.29.010電壓0.6930.6980.3700.7880.8101.101.321.531.762.052、 數(shù)據(jù)分析為了畫出輸出電壓v關(guān)于電容差c的曲線將以上數(shù)據(jù)用matlab軟件進(jìn)行分析,結(jié)果如圖51: 圖51 圖51中的曲線近似于圖5
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度智能車庫(kù)租賃與數(shù)據(jù)分析服務(wù)合同4篇
- 2025年度房屋建筑節(jié)能技術(shù)與承建項(xiàng)目合同4篇
- 二零二五版美容院美容院線上線下?tīng)I(yíng)銷推廣合同3篇
- 二零二五版港口貨物裝卸設(shè)備租賃合同4篇
- 個(gè)體戶簽訂勞動(dòng)合同范文
- 年度輸電線路鐵塔市場(chǎng)分析及競(jìng)爭(zhēng)策略分析報(bào)告
- 二零二五年度大學(xué)教授教學(xué)成果獎(jiǎng)勵(lì)聘用合同(教學(xué)質(zhì)量)4篇
- 二零二四年體育場(chǎng)館賽事舉辦權(quán)租賃合同樣本3篇
- 2025年度航空航天精密零件委托加工及保密合同4篇
- 2025年度個(gè)人房屋買賣合同解除后的房屋返還協(xié)議4篇
- 海外資管機(jī)構(gòu)赴上海投資指南(2024版)
- 山東省青島市2023-2024學(xué)年七年級(jí)上學(xué)期期末考試數(shù)學(xué)試題(含答案)
- 墓地銷售計(jì)劃及方案設(shè)計(jì)書
- 從偏差行為到卓越一生3.0版
- 優(yōu)佳學(xué)案七年級(jí)上冊(cè)歷史
- 鋁箔行業(yè)海外分析
- 紀(jì)委辦案安全培訓(xùn)課件
- 超市連鎖行業(yè)招商策劃
- 城市道路智慧路燈項(xiàng)目 投標(biāo)方案(技術(shù)標(biāo))
- 【公司利潤(rùn)質(zhì)量研究國(guó)內(nèi)外文獻(xiàn)綜述3400字】
- 工行全國(guó)地區(qū)碼
評(píng)論
0/150
提交評(píng)論