




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本 科 生 畢 業(yè) 設(shè) 計(jì) 論 文參照前一稿批注, 基于I2C總線的多通道溫度實(shí)時(shí)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)傅煜院 系: 機(jī)電學(xué)院 專 業(yè): 機(jī)電一體化專業(yè) 班 級(jí): 112班 學(xué) 號(hào): 120702210 指導(dǎo)教師: 薛建國 職稱(或?qū)W位): 副教授 2014年 4月原創(chuàng)性聲明 本人鄭重聲明:所呈交的論文(設(shè)計(jì)),是本人在導(dǎo)師的指導(dǎo)下,獨(dú)立進(jìn)行研究工作所取得的成果。除文中已經(jīng)注明引用的內(nèi)容外,本論文(設(shè)計(jì))不含任何其他個(gè)人或集體已經(jīng)發(fā)表或撰寫過的作品成果。對(duì)本論文(設(shè)計(jì))的研究做出重要貢獻(xiàn)的個(gè)人和集體,均已在文中以明確方式標(biāo)明。本人完全意識(shí)到本聲明的法律結(jié)果由本人承擔(dān)。學(xué)生簽名: 年 月 日 指導(dǎo)
2、聲明本人指導(dǎo)的 同學(xué)的畢業(yè)論文(設(shè)計(jì))題目大小、難度適當(dāng),且符合該同學(xué)所學(xué)專業(yè)的培養(yǎng)目標(biāo)的要求。本人在指導(dǎo)過程中,通過網(wǎng)上文獻(xiàn)搜索及文獻(xiàn)比對(duì)等方式,對(duì)其畢業(yè)論文(設(shè)計(jì))內(nèi)容進(jìn)行了檢查,未發(fā)現(xiàn)抄襲現(xiàn)象,特此聲明。指導(dǎo)教師簽名: 年 月 日目 錄 HYPERLINK l _Toc23159 摘 要 PAGEREF _Toc23159 I HYPERLINK l _Toc12628 Abstract PAGEREF _Toc12628 II HYPERLINK l _Toc21087 1 緒論 PAGEREF _Toc21087 1 HYPERLINK l _Toc17030 1.1數(shù)據(jù)采集系統(tǒng)及發(fā)
3、展歷程 PAGEREF _Toc17030 1 HYPERLINK l _Toc27567 1.2 I2C總線及優(yōu)點(diǎn) PAGEREF _Toc27567 1 HYPERLINK l _Toc26889 2 系統(tǒng)方案 PAGEREF _Toc26889 3 HYPERLINK l _Toc5480 2.1 系統(tǒng)方案簡(jiǎn)介 PAGEREF _Toc5480 3 HYPERLINK l _Toc13880 2.2 系統(tǒng)總體方案的確定 PAGEREF _Toc13880 3 HYPERLINK l _Toc26731 2.2.1 主控制器方案的選型 PAGEREF _Toc26731 3 HYPERLI
4、NK l _Toc16536 2.2.2 I2C擴(kuò)展芯片的選型 PAGEREF _Toc16536 4 HYPERLINK l _Toc9649 2.2.3 溫度傳感器的選型 PAGEREF _Toc9649 4 HYPERLINK l _Toc16312 2.2.4 LCD液晶驅(qū)動(dòng)器的選型 PAGEREF _Toc16312 5 HYPERLINK l _Toc7961 2.2.5 A/D轉(zhuǎn)換器的選型 PAGEREF _Toc7961 5 HYPERLINK l _Toc7238 2.3總結(jié) PAGEREF _Toc7238 5 HYPERLINK l _Toc10174 3 P89LPC9
5、22單片機(jī)及I2C接口 PAGEREF _Toc10174 6 HYPERLINK l _Toc15754 3.1 P89LPC922單片機(jī)概述 PAGEREF _Toc15754 6 HYPERLINK l _Toc20475 3.1.1 芯片內(nèi)部框圖 PAGEREF _Toc20475 6 HYPERLINK l _Toc26590 3.3.2 引腳配置 PAGEREF _Toc26590 7 HYPERLINK l _Toc4736 3.4 I/O口 PAGEREF _Toc4736 7 HYPERLINK l _Toc23530 3.4.1 I/O端口配置 PAGEREF _Toc23
6、530 8 HYPERLINK l _Toc810 3.4.2 準(zhǔn)雙向口輸出配置 PAGEREF _Toc810 8 HYPERLINK l _Toc9379 3.4.3 開漏輸出配置 PAGEREF _Toc9379 8 HYPERLINK l _Toc21881 3.4.4 僅為輸入配置 PAGEREF _Toc21881 8 HYPERLINK l _Toc12898 3.4.5 推挽輸出配置 PAGEREF _Toc12898 9 HYPERLINK l _Toc32730 3.5 中斷 PAGEREF _Toc32730 9 HYPERLINK l _Toc5002 3.6 I2C總
7、線接口 PAGEREF _Toc5002 9 HYPERLINK l _Toc10785 3.6.1 概述 PAGEREF _Toc10785 9 HYPERLINK l _Toc24475 3.6.2 I2C特殊功能寄存器描述 PAGEREF _Toc24475 10 HYPERLINK l _Toc18655 3.6.3 I2C操作模式 PAGEREF _Toc18655 12 HYPERLINK l _Toc20390 3.7總結(jié) PAGEREF _Toc20390 13 HYPERLINK l _Toc5255 4 硬件電路設(shè)計(jì) PAGEREF _Toc5255 14 HYPERLIN
8、K l _Toc6004 4.1 單片機(jī)控制電路 PAGEREF _Toc6004 14 HYPERLINK l _Toc17009 4.2 LED顯示模塊 PAGEREF _Toc17009 15 HYPERLINK l _Toc27876 4.3 遠(yuǎn)程傳輸模塊 PAGEREF _Toc27876 16 HYPERLINK l _Toc22331 4.4 電源模塊 PAGEREF _Toc22331 18 HYPERLINK l _Toc22353 4.5 溫度測(cè)量模塊 PAGEREF _Toc22353 18 HYPERLINK l _Toc25900 4.5.1 A/D轉(zhuǎn)換器 PCF85
9、91 PAGEREF _Toc25900 19 HYPERLINK l _Toc28408 4.5.2 溫度傳感器AD590 PAGEREF _Toc28408 19 HYPERLINK l _Toc24172 4.6總結(jié) PAGEREF _Toc24172 20 HYPERLINK l _Toc13493 5 系統(tǒng)軟件設(shè)計(jì) PAGEREF _Toc13493 21 HYPERLINK l _Toc8794 5.1 Main函數(shù)設(shè)計(jì) PAGEREF _Toc8794 21 HYPERLINK l _Toc11415 5.2 I2C發(fā)送數(shù)據(jù)函數(shù) PAGEREF _Toc11415 22 HYPE
10、RLINK l _Toc26190 5.3 鍵盤中斷函數(shù) PAGEREF _Toc26190 23 HYPERLINK l _Toc31252 5.4 鍵盤處理函數(shù) PAGEREF _Toc31252 23 HYPERLINK l _Toc23925 5.5 LED顯示函數(shù) PAGEREF _Toc23925 24 HYPERLINK l _Toc29415 5.6 A/D轉(zhuǎn)換函數(shù) PAGEREF _Toc29415 24 HYPERLINK l _Toc24766 5.7總結(jié) PAGEREF _Toc24766 25 HYPERLINK l _Toc1506 6 總結(jié)與展望 PAGEREF
11、_Toc1506 26 HYPERLINK l _Toc7912 6.1 課題總結(jié) PAGEREF _Toc7912 26 HYPERLINK l _Toc32052 6.2 課題展望 PAGEREF _Toc32052 26 HYPERLINK l _Toc24105 致 謝 PAGEREF _Toc24105 28 HYPERLINK l _Toc8176 參 考 文 獻(xiàn) PAGEREF _Toc8176 29 HYPERLINK l _Toc25622 附 錄 元器件清單 PAGEREF _Toc25622 30 HYPERLINK l _Toc5348 附 錄 原理圖 PAGEREF
12、_Toc5348 31 基于I2C總線的多通道溫度實(shí)時(shí)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)傅煜(電子信息工程系 指導(dǎo)教師:薛建國)摘要:針對(duì)遠(yuǎn)距離多點(diǎn)數(shù)據(jù)的采集,節(jié)省微處理器的輸入輸出引腳,滿足多器件控制的要求,設(shè)計(jì)一套基于I2C總線的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)。本系統(tǒng)以帶有I2C接口的LPC900系列單片機(jī)作為主控MCU,來實(shí)現(xiàn)數(shù)據(jù)的處理;以P82B96驅(qū)動(dòng)器提高I2C總線的負(fù)載能力,提高傳輸距離從而實(shí)現(xiàn)數(shù)據(jù)的遠(yuǎn)程傳輸;以帶有I2C接口的A/D轉(zhuǎn)換器PCF8591來采集數(shù)據(jù)并進(jìn)行數(shù)據(jù)類型的轉(zhuǎn)換;以溫度傳感器AD590來測(cè)量環(huán)境溫度;以LED驅(qū)動(dòng)器ZLG7290驅(qū)動(dòng)數(shù)碼管顯示數(shù)據(jù)。通過不斷的調(diào)試和完善實(shí)現(xiàn)多點(diǎn)的溫度測(cè)量
13、,在數(shù)碼管上顯示即時(shí)溫度。 本系統(tǒng)采用LPC922單片機(jī)為主控制器,通過I2C總線實(shí)現(xiàn)遠(yuǎn)距離的溫度測(cè)量。本系統(tǒng)分為以下幾個(gè)模塊:微處理器核心模塊、LED顯示模塊、鍵盤模塊、溫度測(cè)量模塊、數(shù)據(jù)遠(yuǎn)距離傳輸模塊、電源模塊。關(guān)鍵詞:?jiǎn)纹瑱C(jī),I2C總線,遠(yuǎn)程數(shù)據(jù)采集Design and implementation ofreal time data acquisition system formultichannel temperaturebased on I2C busFuyu(Electronic & Information Engineering Department, Supervisor: X
14、ue Jianguo)Abstract: For long-distance multi-point data collection, to save the input and output pins of the microprocessor, to meet the requirementsthe control of multiple devices, design a set of I2C bus based remote data acquisition system. The system interfaces with LPC900 MCU I2C as a master MC
15、U, to achieve data processing; to P82B96 I2C bus drive to improve load capacity and improve transmission range in order to achieve the remote transmission of data; to I2C interface with A /D PCF8591 converter to capture data and perform data type conversions; to AD590 temperature sensor to measure a
16、mbient temperature; to drive ZLG7290 LED digital display driver data. Debug and improve through continuous multi-point temperature measurement, digital display in real-time temperature. This system uses the LPC922 microcontroller-based controller, through the I2C bus for remote temperature measureme
17、nts. The system is divided into the following modules: microprocessor core module, LED display module, keyboard module, temperature measurement module, remote data transmission module, power supply module.Key words: microcontroller, I2C bus, remote data acquisition1 緒論及發(fā)展歷程 數(shù)據(jù)采集是將被測(cè)對(duì)象(外部世界、現(xiàn)場(chǎng))的各種參量(
18、如物理量、化學(xué)量、生物量等)通過各種傳感元件作適當(dāng)轉(zhuǎn)換后,再經(jīng)信號(hào)調(diào)理、采樣、放大、濾波、量化、編碼,然后通過無線或有線的方式進(jìn)行傳輸?shù)炔襟E,最后送到控制器進(jìn)行數(shù)據(jù)處理或存儲(chǔ)紀(jì)錄的過程。 在進(jìn)行數(shù)據(jù)采集時(shí),由于許多被測(cè)對(duì)象離主控中心距離較遠(yuǎn)或現(xiàn)場(chǎng)環(huán)境不允許數(shù)據(jù)采集系統(tǒng)就近放置,只能用長線通過遠(yuǎn)距離傳送給主控制器,這便產(chǎn)生了遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)。應(yīng)用遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)可對(duì)生產(chǎn)現(xiàn)場(chǎng)的各種參數(shù)進(jìn)行采集、監(jiān)視和記錄,是提高產(chǎn)品質(zhì)量、降低成本、增加生產(chǎn)效率和節(jié)省人力的重要手段;另外,遠(yuǎn)程數(shù)據(jù)采集是控制系統(tǒng)實(shí)現(xiàn)控制的基本條件,只有準(zhǔn)確實(shí)時(shí)的獲取對(duì)象的運(yùn)行數(shù)據(jù)才能實(shí)施有效的控制。數(shù)據(jù)采集系統(tǒng)經(jīng)歷了幾個(gè)發(fā)展階段。早
19、期的數(shù)據(jù)采集系統(tǒng)基于ISA、PCI總線,采集的數(shù)據(jù)是模擬量,系統(tǒng)龐大,采集后需要將模擬信號(hào)經(jīng)過放大、調(diào)理通過長線傳送給計(jì)算機(jī)系統(tǒng);在長線傳輸過程中信號(hào)的電磁干擾是不可避免的,信號(hào)轉(zhuǎn)換的過程也存在干擾;基于串口傳輸數(shù)據(jù)的數(shù)據(jù)采集系統(tǒng)傳輸速度慢,而且多為主從式結(jié)構(gòu),系統(tǒng)穩(wěn)定性低?;趩纹瑱C(jī)的數(shù)據(jù)采集系統(tǒng)利用數(shù)字傳感器直接輸出數(shù)字信號(hào),經(jīng)過總線的傳輸直接送給計(jì)算機(jī)系統(tǒng),操作方便,無需信號(hào)轉(zhuǎn)換。1.2 I2C總線及優(yōu)點(diǎn) I2C(InterIntegrated Circuit)總線是一種由PHILIPS公司開發(fā)的兩線式串行總線,用于連接微控制器及其外圍設(shè)備,是微電子通信控制領(lǐng)域廣泛采用的一種總線標(biāo)準(zhǔn)。它
20、是同步通信的一種特殊形式,具有接口線少,控制方式簡(jiǎn)單,器件封裝形式小,通信速率較高等優(yōu)點(diǎn)。在主從通信中,可以有多個(gè)I2C總線器件同時(shí)連接到I2C總線上,所有I2C兼容的器件都具有標(biāo)準(zhǔn)的接口,通過地址來識(shí)別通信對(duì)象,使他們可以經(jīng)由I2C總線互相通信。 I2C總線很大程度上減輕了系統(tǒng)對(duì)I/O口需求的壓力,彌補(bǔ)了系統(tǒng)主處理芯片I/O口的不足,通過擴(kuò)展芯片總線的傳輸長度可高達(dá)1000米,并且能夠以最高以的最大傳輸速率支持40個(gè)組件。I2C總線是由數(shù)據(jù)線SDA和時(shí)鐘線SCL構(gòu)成的串行總線,可發(fā)送和接受數(shù)據(jù)。在CPU與被控IC之間,IC和IC之間進(jìn)行雙向傳送,各種被控電路均并聯(lián)在這條總線上,每個(gè)電路都有唯
21、一的地址。在信息傳輸過程中,I2C總線上并聯(lián)的每一個(gè)模塊電路既是被控器(或是主控器),又是發(fā)生器(或是接收器),這取決與它所要完成的功能。CPU發(fā)出的控制信號(hào)分為地址碼和數(shù)據(jù)碼兩部分:地址碼用來選址,及接通需要控制的電路;數(shù)據(jù)碼是通信的內(nèi)容,這樣各控制電路雖然掛在同一條總線上,卻彼此獨(dú)立。利用I2C總線實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)采集不但布線方便,傳輸速度快,操作方便,節(jié)省I/O資源,多主式的結(jié)構(gòu)更增加了系統(tǒng)的穩(wěn)定性。 2 系統(tǒng)方案2.1 系統(tǒng)方案簡(jiǎn)介 該系統(tǒng)設(shè)計(jì)是利用LPC900系列單片機(jī),通過I2C總線,實(shí)現(xiàn)遠(yuǎn)程的溫度采集。基于I2C的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)由主控制模塊和數(shù)據(jù)采集模塊兩大部分構(gòu)成。主控制模塊以L
22、PC900系列單片機(jī)為核心控制器,集成了鍵盤操作功能。溫度傳感器AD590測(cè)得溫度后轉(zhuǎn)換為電信號(hào)經(jīng)過放大和信號(hào)調(diào)理送入A/D轉(zhuǎn)換器PCF8591實(shí)現(xiàn)模數(shù)轉(zhuǎn)換,再通過由擴(kuò)展芯片P82B96擴(kuò)展后的I2C總線實(shí)現(xiàn)遠(yuǎn)距離通信。顯示模塊利用I2C總線可以并聯(lián)多個(gè)I2C接口器件的特性,使用ZLG7290作為LED驅(qū)動(dòng)器驅(qū)動(dòng)數(shù)碼管顯示。系統(tǒng)方案如下: 圖2- SEQ 圖 * ARABIC s 1 1 系統(tǒng)設(shè)計(jì)框圖2.2 系統(tǒng)總體方案的確定2.2.1 主控制器方案的選型 方案一:常用的51單片機(jī)89C51 89C51無硬件I2C,需用軟件模擬I2C時(shí)序,操作繁瑣,調(diào)試麻煩,內(nèi)部資源不充足,且5V工作電壓功耗
23、高、速度低,用于該課題無明顯優(yōu)勢(shì)。 方案二:LPC900系列單片機(jī) LPC900系列單片機(jī)具有體積小、有I2C引腳、超低的功耗(完全掉電時(shí)電流低至1A,工作電壓低至2.43.6V)、6倍速于80C51、工業(yè)級(jí)芯片、可靠性高、增強(qiáng)型I/O口、豐富的片內(nèi)資源和ICP在線編程方便快捷等優(yōu)勢(shì)。 用LPC93X系列單片機(jī)能滿足要求但資源浪費(fèi),價(jià)格高,故最終確定選用LPC922單片機(jī)。2.2.2 I2C擴(kuò)展芯片的選型 I2C的傳輸距離有限。實(shí)際應(yīng)用時(shí),必須擴(kuò)展I2C通信距離。P82B715和P82B96是Philips研制的應(yīng)用于遠(yuǎn)距離通信的I2C擴(kuò)展器。P82B715只有3000pF的輸出容性負(fù)載,且不
24、可電平轉(zhuǎn)換,而P82B96的最大輸出容性負(fù)載高達(dá)4000pF,支持電平轉(zhuǎn)換,還可以作為通用的準(zhǔn)雙向總線緩沖器。當(dāng)通信速率為31KHz可達(dá)到1000米。因此在這個(gè)系統(tǒng)里選用P82B96。2.2.3 溫度傳感器的選型 方案一:熱電偶傳感器 熱電偶傳感器的原理是將溫度變化轉(zhuǎn)換為電勢(shì)的變化。它是利用兩種不同材料的金屬連接在一起,構(gòu)成的具有熱點(diǎn)效應(yīng)原理的一種感溫元件。其優(yōu)點(diǎn)為精確度高、測(cè)溫范圍廣、結(jié)構(gòu)簡(jiǎn)單、使用方便、型號(hào)種類比較多且技術(shù)成熟。目前廣泛應(yīng)用于工業(yè)和民用產(chǎn)品中。熱電偶傳感器的種類很多,在選擇時(shí)必須考慮其靈敏度、可靠性、穩(wěn)定性等條件。 方案二:熱電阻傳感器 熱電阻傳感器的原理是將溫度變化轉(zhuǎn)換為
25、電阻值的變化。熱電阻傳感器是中低溫區(qū)最常用的一種溫度傳感器。它的主要特點(diǎn)是:測(cè)量精度高,性能穩(wěn)定、其中鉑電阻的測(cè)量精度是最高的,被制作成標(biāo)準(zhǔn)的基準(zhǔn)儀。從熱電阻的測(cè)溫原理可以知道,被測(cè)溫度的變化是直接通過熱電阻阻值的變化來變現(xiàn)的。因此,熱電阻的引出線的電阻的變化會(huì)給測(cè)溫帶來影響。為了消除引線電阻的影響,一般采用三線制或四線制。 方案三:半導(dǎo)體集成模擬溫度傳感器 半導(dǎo)體IC溫度傳感器是利用半導(dǎo)體PN結(jié)的電流、電壓與溫度變換關(guān)系來測(cè)溫的一種感溫元件。這種傳感器輸出線性好、精度高,而且可以把傳感器驅(qū)動(dòng)電路、信號(hào)處理電路等與溫度傳感器部分集成在同一硅片,體積小,使用方便,應(yīng)用比較廣泛的有AD590等。I
26、C溫度傳感器在微型計(jì)算機(jī)控制體系中,通常用于室溫的測(cè)量,以便微型計(jì)算機(jī)對(duì)溫度測(cè)量值進(jìn)行補(bǔ)償。 方案四:半導(dǎo)體集成數(shù)字溫度傳感器 隨著科學(xué)技術(shù)的不斷進(jìn)步和發(fā)展,新型溫度傳感器的種類繁多,應(yīng)用逐漸廣泛,并且開始由模擬式向著數(shù)字式、單總線式、雙總線式、多總線式發(fā)展。數(shù)字溫度傳感器更適合與各種微處理器的I/O接口相連接,組成自動(dòng)溫度控制系統(tǒng),這種系統(tǒng)克服課模擬傳感器與微處理器接口時(shí)需要信號(hào)調(diào)理電路和A/D轉(zhuǎn)換器的弊端,被廣泛應(yīng)用于工業(yè)控制、電子測(cè)溫等各種溫度控制系統(tǒng)中,數(shù)字溫度傳感器中比較有代表性的有DS18B20等。 本設(shè)計(jì)為設(shè)計(jì)方便,性能穩(wěn)定,準(zhǔn)確性高,決定選用半導(dǎo)體集成溫度傳感器,由于DS18B
27、20采用的是單總線技術(shù),不支持I2C總線,所以選用AD590模擬溫度傳感器。2.2.4 LCD液晶驅(qū)動(dòng)器的選型 方案一:LCD字符型液晶驅(qū)動(dòng)器PCF2113是LCD字符型液晶驅(qū)動(dòng)器,自身帶有I2C接口,I2C速率是400khz,工作電壓為2.5V到5V,可驅(qū)動(dòng)兩行、每行12個(gè)字符,片內(nèi)可產(chǎn)生LCD偏置電壓,功耗很低且本身自帶片內(nèi)RAM,但是外圍引腳多,操作繁瑣。方案二:LED驅(qū)動(dòng)器ZLG7290 ZLG7290是一種具有I2C接口的鍵盤及LED驅(qū)動(dòng)管理器件, 提供數(shù)據(jù)譯碼和循環(huán)、移位、段尋址等控制。它能夠直接驅(qū)動(dòng)8位共陰式數(shù)碼管(或64只獨(dú)立的LED ), 并可擴(kuò)展驅(qū)動(dòng)電流和驅(qū)動(dòng)電壓。 本系統(tǒng)
28、利用I2C總線接口,直接用數(shù)碼管顯示,所以選用ZLG7290可滿足要求。2.2.5 A/D轉(zhuǎn)換器的選型考慮到選用的A/D轉(zhuǎn)換器應(yīng)該有I2C總線接口,精度達(dá)到8位就可以滿足要求,芯片內(nèi)部應(yīng)該有多個(gè)通道來配合I2C總線進(jìn)行多點(diǎn)的數(shù)據(jù)采集,選用PCF8591芯片。 本章節(jié)主要介紹了系統(tǒng)的整體方案,給出了系統(tǒng)的設(shè)計(jì)方法和設(shè)計(jì)思路,同時(shí)對(duì)系統(tǒng)中的各個(gè)器件進(jìn)行選型,為系統(tǒng)的硬件設(shè)計(jì)最好準(zhǔn)備。3 P89LPC922單片機(jī)及I2C接口3.1 P89LPC922單片機(jī)概述P89LPC922是一款單片封裝的微控制器,適合于許多要求高集成度、低成本的場(chǎng)合,可以滿足多方面的性能要求。P89LPC922采用了高性能的處
29、理器結(jié)構(gòu),指令執(zhí)行時(shí)間只需要24個(gè)時(shí)鐘周期,6倍于標(biāo)準(zhǔn)80C51器件。P89LPC92集成了許多系統(tǒng)級(jí)的功能,這樣可大大地減少元件的數(shù)目、電路板面積以及系統(tǒng)的成本。LPC922的運(yùn)算速度很快,當(dāng)操作頻率為12MHz時(shí),除乘法和除法指令外80C51CPU的指令執(zhí)行時(shí)間為167333ns。同一時(shí)鐘頻率下,LPC922的速度為標(biāo)準(zhǔn)80C51器件的6倍。只需要較低的時(shí)鐘頻率即可達(dá)到同樣的性能,這樣無疑降低了功耗EMI;LPC922的操作電壓范圍為2.43.6V。I/O口可承受5V(可上拉或驅(qū)動(dòng)到5.5V)的電壓;它有2個(gè)16位定時(shí)/計(jì)數(shù)器,每一個(gè)定時(shí)器均可設(shè)置為溢出時(shí)觸發(fā)相應(yīng)端口輸出或作為PWM輸出;
30、LPC922有400kHz字節(jié)寬度的I2C通信端口;可以直接實(shí)現(xiàn)I2C總線通信;有8個(gè)鍵盤中斷輸入,另加2路外部中斷輸入;4個(gè)中斷優(yōu)先級(jí);低電平復(fù)位,使用片內(nèi)上電復(fù)位時(shí)不需要外接元件。復(fù)位計(jì)數(shù)器和復(fù)位干擾抑制電路可防止虛假和不完全的復(fù)位。另外還提供軟件復(fù)位功能;可配置的片內(nèi)振蕩器及其頻率范圍和RC振蕩器選項(xiàng)(通過用戶可編程Flash配置位選擇),選擇RC振蕩器時(shí)不需要外接振蕩器件。振蕩器選項(xiàng)支持的頻率范圍為20KHz12MHz可選擇RC振蕩器選項(xiàng)并且其頻率可進(jìn)行很好的調(diào)節(jié);LPC922有可編程端口輸出模式,準(zhǔn)雙向口,開漏輸出,推挽和僅為輸入功能模;所有口線均有LED驅(qū)動(dòng)能力20mA;LPC92
31、2最少有15個(gè)I/O口,選擇片內(nèi)振蕩和片內(nèi)復(fù)位時(shí)可多達(dá)18個(gè)I/O口。3.1.1 芯片內(nèi)部框圖LPC922單片機(jī)的功能框圖如3-1所示。圖3- SEQ 圖 * ARABIC s 1 1 功能框圖3.3.2 引腳配置 P0口是一個(gè)可由用戶定義輸出類型的8位I/O口。在上電復(fù)位時(shí),P0鎖存器配置為內(nèi)部上拉禁止的僅為輸入模式。P0口由口配置寄存器設(shè)定為輸出或輸入模式,每一個(gè)管腳均可單獨(dú)設(shè)定。P0口具有鍵盤輸入中斷功能。所有管腳都具有施密特觸發(fā)輸入。引腳有1,20,19,18,17,16,14,13。P1是一個(gè)可由用戶定義輸出類型的8位I/O口。在上電復(fù)位時(shí)P1鎖存器配置為內(nèi)部上拉禁止的僅為輸入模式。
32、P1口由口配置寄存器設(shè)定為輸出或輸入模式,每一位均可單獨(dú)設(shè)定。P1.2、P1.3作為輸出時(shí)為開漏。P1.5為僅為輸入模式。所有管腳都具有施密特觸發(fā)輸入。引腳12,11,10,9,8,4,3,2;其中4引腳是RST外部復(fù)位輸入(通過Flash 配置選擇)。作為復(fù)位管腳時(shí),輸入的低電平會(huì)使芯片復(fù)位,I/O口和外圍功能進(jìn)入默認(rèn)狀態(tài),處理器從地址0開始執(zhí)行。P3口是一個(gè)可由用戶定義輸出類型的2位I/O口,在上電復(fù)位時(shí),P3鎖存器配置為內(nèi)部上拉禁止的僅為輸入模式。P3口由口配置寄存器設(shè)定為輸出或輸入模式,每一個(gè)管腳均可單獨(dú)設(shè)定,所有管腳都具有施密特觸發(fā)輸入。 3.4 I/O口LPC922有3個(gè)I/O口P
33、0、P1和P3。P0和P1為8位I/O口而P3為2位I/O口。I/O口的具體數(shù)目取決于所選擇的振蕩和復(fù)位方式,具體如表3-1。表3-1 可用的I/O口數(shù)目時(shí)鐘源復(fù)位選項(xiàng)I/O口數(shù)目片內(nèi)振蕩器或看門狗振蕩器無外部復(fù)位上電時(shí)除外18使用外部復(fù)位腳RST17外部時(shí)鐘輸入無外部復(fù)位上電時(shí)除外17使用外部復(fù)位腳RST16低/中/高速振蕩器外部晶振或諧振器無外部復(fù)位上電時(shí)除外16使用外部復(fù)位腳RST153.4.1 I/O端口配置除了3個(gè)口(P1.2、P1.3和P1.5)以外,LPC922其他所有的I/O口均可由軟件配置成4種輸出類型之一,四種輸出類型分別為:準(zhǔn)雙向口(標(biāo)準(zhǔn)8051輸出模式)(PXM1.Y=
34、0,PXM2.Y=0);推挽(PXM1.Y=0,PXM2.Y=1);開漏輸出(PXM1.Y=1,PXM2.Y=1);僅為輸入功能(PXM1.Y=1,PXM2.Y=0)。每個(gè)口配置2個(gè)控制寄存器控制每個(gè)管腳輸出類型。P1.5(RST)只能作為輸入口,無法進(jìn)行配置。P1.2(SCL/T0)和P1.3(SDA/INT0)只能配置為輸入口或開漏口。3.4.2 準(zhǔn)雙向口輸出配置準(zhǔn)雙向口輸出類型可用作輸出和輸入功能而不需重新配置口線輸出狀態(tài)。這是因?yàn)楫?dāng)口線輸出為1時(shí)驅(qū)動(dòng)能力很弱,允許外部裝置將其拉低。當(dāng)管腳輸出為低時(shí),它的驅(qū)動(dòng)能力很強(qiáng),可吸收相當(dāng)大的電流。準(zhǔn)雙向口除了有三個(gè)上拉晶體管適應(yīng)不同的需要外,其特
35、性和開漏輸出有些相似。LPC922為3V器件,但管腳可承受5V電壓。在準(zhǔn)雙向口模式中如果用戶在管腳加上5V電壓將會(huì)有電流從管腳流向VDD。這將導(dǎo)致額外的功率消耗,因此建議不要在準(zhǔn)雙向口模式中向管腳施加5V電壓。準(zhǔn)雙向口帶有一個(gè)施密特觸發(fā)輸入以及一個(gè)干擾抑制電路。3.4.3 開漏輸出配置當(dāng)口線鎖存器為0時(shí),開漏輸出關(guān)閉所有的上拉晶體管而僅驅(qū)動(dòng)端口的下拉晶體管。作為一個(gè)邏輯輸出時(shí)這種配置方式必須有外部上拉,一般通過電阻外接到VDD。開漏端口帶有一個(gè)施密特觸發(fā)輸入以及一個(gè)干擾抑制電路。3.4.4 僅為輸入配置該配置無輸出驅(qū)動(dòng)器,它帶有一個(gè)施密特觸發(fā)輸入口以及一個(gè)干擾抑制電路。3.4.5 推挽輸出配置
36、推挽輸出配置的下拉結(jié)構(gòu)和開漏輸出以及準(zhǔn)雙向口的下拉結(jié)構(gòu)相同,但當(dāng)鎖存器為1時(shí)提供持續(xù)的強(qiáng)上拉。推挽模式一般用于需要更大驅(qū)動(dòng)電流的情況。推挽管腳帶有一個(gè)施密特觸發(fā)輸入以及一個(gè)干擾抑制電路。3.5 中斷LPC922采用4中斷優(yōu)先級(jí)結(jié)構(gòu)。這為P89LPC922的多中斷源的處理提供了極大的靈活性。LPC922支持12個(gè)中斷源:外部中斷0和1、定時(shí)器0和1、串口Tx、串口Rx、組合的串口Tx/Rx、掉電檢測(cè)、看門狗/實(shí)時(shí)時(shí)鐘、I2C、鍵盤中斷和比較器1和2。任何一個(gè)中斷源均可通過對(duì)IEN0和IEN1中相應(yīng)的位置位或清零,實(shí)現(xiàn)單獨(dú)使能或禁止。IEN0中還包含了一個(gè)全局禁止位EA,它可禁止所有中斷。每個(gè)中斷
37、源都可被單獨(dú)設(shè)置為四個(gè)中斷優(yōu)先級(jí)之一,分別通過清零或置位IP0、IP0H、IP1、IP1H中相應(yīng)位來實(shí)現(xiàn)(00最低優(yōu)先級(jí),11最高優(yōu)先級(jí))。一個(gè)中斷服務(wù)程序可響應(yīng)更高級(jí)的中斷,但不能響應(yīng)同優(yōu)先級(jí)或低級(jí)中斷。最高級(jí)中斷服務(wù)程序不響應(yīng)其它任何中斷。如果兩個(gè)不同中斷優(yōu)先級(jí)的中斷源同時(shí)申請(qǐng)中斷時(shí),響應(yīng)較高優(yōu)先級(jí)的中斷申請(qǐng)。如果兩個(gè)同優(yōu)先級(jí)的中斷源同時(shí)申請(qǐng)中斷,那么通過一個(gè)內(nèi)部查詢順序序列確定首先響應(yīng)哪一個(gè)中斷請(qǐng)求,這叫做仲裁隊(duì)列。3.6 I2C總線接口3.6.1 概述I2C(全稱:inter integrated chips)是一種串行通信協(xié)議,專利權(quán)歸屬于Philips公司。I2C有三種速度模式:標(biāo)
38、準(zhǔn)模式(0100kbps)、快速模式(0400kbps)、高速模式(03.4Mbps)。有嚴(yán)格的規(guī)范,如接口的電氣特性、信號(hào)時(shí)序、信號(hào)傳輸?shù)亩x、總線狀態(tài)設(shè)置、總線管理規(guī)則及總線狀態(tài)處理等。LPC922器件提供字節(jié)方式的I2C接口所支持的最大數(shù)據(jù)傳輸速率為400kHz。I2C總線用兩條線SDA和SCL在總線和器件之間傳遞信息。I2C總線的傳輸模式是主機(jī)和從機(jī)之間為雙向數(shù)據(jù)傳送,這樣主機(jī)和從機(jī)之間可以相互訪問;I2C總線也是多主機(jī)總線,它不存在中央主機(jī);在總線上的器件都可以當(dāng)做主機(jī)來發(fā)送數(shù)據(jù);多主機(jī)同時(shí)傳送時(shí)進(jìn)行仲裁來避免總線上數(shù)據(jù)沖突;而且串行時(shí)鐘同步使得不同位速率的器件可以通過一條串行總線進(jìn)
39、行通信;典型的I2C總線配置如圖3-2所示。 圖3-2 I2C總線配置3.6.2 I2C特殊功能寄存器描述I2DAT包含要發(fā)送的數(shù)據(jù)或剛接收的數(shù)據(jù)。當(dāng)8位直接尋址寄存器沒有處理移位數(shù)據(jù)時(shí),CPU可對(duì)其進(jìn)行讀和寫。這意味著用戶只能在SI置位時(shí)對(duì)I2DAT進(jìn)行訪問。I2DAT中的數(shù)據(jù)在SI置位時(shí)一直保持不變。I2DAT中的數(shù)據(jù)總是從右向左移位。寄存器各位如圖3-3。圖3-3 I2C數(shù)據(jù)寄存器CPU可以對(duì)I2ADR寄存器進(jìn)行讀或?qū)懖僮?。該寄存器僅在I2C處于從模式下才使用。在主模式中該寄存器的內(nèi)容無效。I2ADR的最低位(LSB)為通用調(diào)用位。當(dāng)該位置位時(shí)對(duì)通用調(diào)用地址(00H)進(jìn)行識(shí)別。寄存器各位
40、功能如圖3-4。圖3-4 I2C從地址寄存器CPU對(duì)I2CON寄存器進(jìn)行讀或?qū)懖僮鳎妶D3-5。其中兩個(gè)位受硬件影響:SI和STO位。SI由硬件置位而STO位由硬件清零。當(dāng)I2C處于主模式時(shí),CRSEL決定SCL的頻率,在從模式中,該位被忽略并自動(dòng)與主I2C器件的時(shí)鐘頻率(最大400KHz)同步。當(dāng)CRSEL=1時(shí),I2C接口將定時(shí)器1的溢出速率的1/2作為I2C的實(shí)鐘頻率。定時(shí)器1在8位自動(dòng)重裝模式(模式2)中由用戶編程。圖3-5 I2C控制寄存器I2STAT寄存器是個(gè)8位只讀寄存器。見圖3-6。它包含了I2C接口的狀態(tài)代碼。最低3位總是為0。I2C一共有26種可能的狀態(tài)。當(dāng)代碼為F8時(shí)表示
41、無可用的相關(guān)狀態(tài)信息,SI也不會(huì)置位。所以其他25種狀態(tài)碼都對(duì)應(yīng)一個(gè)已定義的I2C狀態(tài)。進(jìn)入任何一個(gè)狀態(tài)時(shí),SI都會(huì)置位。 圖3-6 I2C狀態(tài)寄存器當(dāng)設(shè)置CRSEL=0以選擇內(nèi)部SCL發(fā)生器作為I2C接口的時(shí)鐘源時(shí),用戶必須對(duì)I2SCLH和I2SCLL進(jìn)行設(shè)置以選擇合適的數(shù)據(jù)傳輸速率。I2SCLH定義SCL高電平的PCLK周期數(shù),I2SCLL定義SCL低電平的PCLK周期數(shù)。頻率由下面的公式?jīng)Q定: (3 SEQ 圖表 * ARABIC s 1 1)式中:Fpclk表示PCLK的頻率。用戶可以通過設(shè)置這兩個(gè)寄存器得到不同的SCL占空比。但寄存器的值必須確保I2C數(shù)據(jù)傳輸速率范圍為0400kHz
42、。因此對(duì)I2SCLH和I2SCLL的值有一些限制,建議兩個(gè)寄存器的取值都應(yīng)大于3個(gè)PCLK周期。3.6.3 I2C操作模式I2C操作模式有:主發(fā)送器模式、主接收器模式、從接收器模式和從發(fā)送器模式。在這里介紹主發(fā)送器模式。在該模式中,數(shù)據(jù)從主機(jī)發(fā)送到從機(jī)。在進(jìn)入主發(fā)送器模式之前,I2CON必須將I2EN置位使能I2C功能,STA、STO和SI必須設(shè)置為0,CRSEL定義串行位速率。如果AA位為0,而另一個(gè)器件成為總線的控制器時(shí),I2C將不會(huì)對(duì)它自身的從地址或通用調(diào)用地址產(chǎn)生應(yīng)答。換句話說,如果AA復(fù)位,I2C不能進(jìn)入從模式。第一個(gè)發(fā)送的數(shù)據(jù)包含接收器件的從地址(7位)和數(shù)據(jù)方向位。在此模式下,數(shù)
43、據(jù)方向位(R/W)為0表示執(zhí)行寫操作。因此第一個(gè)發(fā)送的字節(jié)為SLA+W。數(shù)據(jù)每次發(fā)送8位。每發(fā)送一個(gè)字節(jié),都接收到一個(gè)應(yīng)答位。起始和停止條件用于指示串行傳輸?shù)钠鹗己徒Y(jié)束。通過置位STA進(jìn)入I2C主發(fā)送模式。I2C邏輯在總線空閑后立即發(fā)送一個(gè)起始條件。當(dāng)發(fā)送完起始條件后,SI置位。此時(shí)狀態(tài)寄存器(I2STAT)中的狀態(tài)代碼應(yīng)當(dāng)為08H。該狀態(tài)碼用于指向一個(gè)中斷服務(wù)程序。該中斷程序?qū)牡刂泛蛿?shù)據(jù)方向位(SLA+W)裝入I2DAT。SI位必須在數(shù)據(jù)傳輸能夠進(jìn)行之前清零。當(dāng)從地址和方向位已經(jīng)發(fā)送且接收到應(yīng)答位之后,SI位再次置位,并且對(duì)于主模式,可能的狀態(tài)代碼為18H、20H或38H。圖3-7為主發(fā)送
44、器模式和從接收器模式的發(fā)送格式。圖3-7 主發(fā)生器和主接收器模式格式在圖中,各種符號(hào)的意義為:S:開始位(START);SLA:從機(jī)地址(Slave Address),7位從機(jī)地址;W:寫標(biāo)志位(Write),1位寫標(biāo)志;R:讀標(biāo)志位(Read),1位讀標(biāo)志;A:應(yīng)答位(Acknowledge),1位應(yīng)答;:非應(yīng)答位(Not Acknowledge),1位非應(yīng)答;D:數(shù)據(jù)位(DATA),每個(gè)數(shù)據(jù)都必須是8位;P:停止位(STOP);陰影:主機(jī)產(chǎn)生的信號(hào);無陰影:從機(jī)產(chǎn)生的信號(hào)。每個(gè)狀態(tài)代碼對(duì)應(yīng)的執(zhí)行動(dòng)作見 REF _Ref232337174 h * MERGEFORMAT 表3-1。表3- S
45、EQ 表 * ARABIC s 1 1 主發(fā)送器模式狀態(tài)代碼I2STATI2C總線硬件狀態(tài)寫I2CON硬件執(zhí)行的下一個(gè)動(dòng)作STASTOSIAA08H已經(jīng)發(fā)送起始條件x00 x將發(fā)送SLA+W,接收ACK位18H已經(jīng)發(fā)送SLA+W;已經(jīng)接收到ACK010100110000 xxxx將發(fā)送數(shù)據(jù)字節(jié),接收ACK位將發(fā)送重復(fù)起始條件將發(fā)送停止條件;STO標(biāo)志將復(fù)位將發(fā)送停止條件,然后發(fā)送起始條件;STO標(biāo)志將復(fù)位20H已經(jīng)發(fā)送SLA+W;已經(jīng)接收到非ACK28H已經(jīng)發(fā)送I2DAT中的數(shù)據(jù)字節(jié);已接收ACK30H已經(jīng)發(fā)送I2DAT中的數(shù)據(jù)字節(jié);已接收非ACK38H在SCL+R/W或數(shù)據(jù)字節(jié)中丟失仲裁01
46、0000 xxI2C總線被釋放;進(jìn)入不可尋址從模式,當(dāng)總線為空閑時(shí)發(fā)送起始條件 本章節(jié)主要介紹了核心MCU LPC922單片機(jī)的特性以及片內(nèi)資源,還有對(duì)其內(nèi)部的I2C總線接口相關(guān)的寄存器如何配置來確保I2C總線的通信。4 硬件電路設(shè)計(jì)4.1 單片機(jī)控制電路本設(shè)計(jì)中采用Philips LPC922單片機(jī)作為主控器,配以外部RC復(fù)位電路和晶振電路構(gòu)成了單片機(jī)系統(tǒng)。晶體振蕩電路在微控制器系統(tǒng)中非常重要,它決定了整個(gè)微控制器系統(tǒng)能否穩(wěn)定工作。P89LPC922提供幾個(gè)可由用戶選擇的振蕩器選項(xiàng)。這樣就滿足了從高精度到低成本的不同需求。這些選項(xiàng)在對(duì)Flash進(jìn)行編程時(shí)配置,包括片內(nèi)看門狗振蕩器、片內(nèi)RC振
47、蕩器、使用外部晶振的振蕩器或外部時(shí)鐘源。晶振可選擇低、中或高頻晶振,頻率范圍為20KHz到12MHz。本系統(tǒng)中選用6MHz的晶振,可以保證精度達(dá)到系統(tǒng)要求。RST管腳可作為低有效復(fù)位輸入或數(shù)字輸入口。當(dāng)UCFG1寄存器中的位RPE(復(fù)位管腳使能)置位時(shí),使能外部復(fù)位輸入功能。當(dāng)清零時(shí),復(fù)位腳可作為一個(gè)輸入管腳。每一個(gè)復(fù)位源在復(fù)位寄存器RSTSRC中都有一個(gè)對(duì)應(yīng)的標(biāo)志。用戶可讀取該寄存器以判斷最近的復(fù)位源是哪一個(gè)。這些標(biāo)志位可通過軟件寫入0清零。P0.0P0.4鍵盤中斷口連接5個(gè)按鍵,用來控制的數(shù)據(jù)的傳輸和采集。 單片機(jī)的外圍電路如下所示: 圖4-1 單片機(jī)鍵盤電路圖4-2 單片機(jī)復(fù)位及鍵盤電路
48、4.2 LED顯示模塊數(shù)字LED顯示屏由顯示數(shù)字0 9的數(shù)碼管和驅(qū)動(dòng)數(shù)碼管的芯片ZLG7290兩大部分組成,。ZLG7290外圍電路包括晶振電路、復(fù)位電路和I2C接口電路。數(shù)碼管是4位聯(lián)體式數(shù)碼管。ZLG7290是帶有I2C接口鍵盤管理和顯示驅(qū)動(dòng)的芯片,加入鍵盤管理可以實(shí)現(xiàn)儀器儀表的人機(jī)對(duì)話。在圖4-3中, U是LED 驅(qū)動(dòng)管理器件ZLG7290。圖中SegA SegDP對(duì)應(yīng)連接數(shù)碼管的8個(gè)“段”( a dp), DIG0 DIG7分別連接各數(shù)碼管的“位”(每個(gè)數(shù)碼管的公共端, 這里只有4位數(shù)碼管, 故只用了DIG0 DIG3)。按照I2數(shù)碼管必須是共陰式的, 不能直接使用共陽式的, 這里采用
49、4位聯(lián)體式數(shù)碼管。數(shù)碼管在工作時(shí)要消耗較大的電流, RP2是限流電阻, 阻值是220歐姆。如果要增大數(shù)碼管的亮度, 可以適當(dāng)減小電阻值。 圖4-3 LED顯示電路電路4.3 遠(yuǎn)程傳輸模塊 在使用I2C器件的過程中,I2C總線在應(yīng)用中常受到限制,例如:信號(hào)傳輸距離有限,常用于一個(gè)PCB板;總線上掛接的節(jié)點(diǎn)器件有限,受容性負(fù)載最大值400pF的限制;掛接多個(gè)器件時(shí)速度只能取最低值,高速I2C器件速度發(fā)揮不出來等。I2C總線擴(kuò)展器P82B96的開發(fā)擴(kuò)展了總線容量,從400pF擴(kuò)展到4000pF,增加了總線可支持器件的數(shù)目。而且擴(kuò)展了通訊距離,利用線纜在I2C總線的速率為31KHz時(shí)傳輸距離可長達(dá)10
50、00米。 P82B96是一款雙極性I2C擴(kuò)展芯片,在保持I2C系統(tǒng)的工作模式和特性不變的情況下,通過緩沖SDA和SCL總線上的數(shù)據(jù)來擴(kuò)展通信距離,同時(shí)I2C擴(kuò)展器P82B96提供了一種在標(biāo)準(zhǔn)I2C總線和其他總線配置間的無鎖存、雙向性的邏輯接口,它可以把I2C總線連接到215V的邏輯器件上,且不受I2C總線協(xié)議的限制和時(shí)鐘速率的限制。能增加I2C總線的傳輸距離和節(jié)點(diǎn)上的負(fù)載數(shù)目。I2C擴(kuò)展器P82B96徹底地解決了I2C總線在遠(yuǎn)距離傳輸?shù)牟蛔恪?管腳描述如表4-1。表4-1 P82B96管腳描述符號(hào)管腳描述Sx1I2C總線(SDA或SCL)Rx2接收信號(hào)Tx3發(fā)送信號(hào)GND4地Ty5發(fā)送信號(hào)Ry
51、6接收信號(hào)Sy7I2C總線(SDA或SCL)VCC8電源作用為增加I2C通信距離時(shí),兩個(gè)P82B96必須匹配使用。電路設(shè)計(jì)時(shí)必須加上拉電阻,P82B96的具體連接方法如圖4-4所示。 圖4-4 P82B96實(shí)現(xiàn)遠(yuǎn)距離I2C通信在系統(tǒng)中的應(yīng)用如下圖所示: 圖4-5 I2C通信擴(kuò)展電路4.4 電源模塊本系統(tǒng)電源用到3.3V、5V兩種電源。LPC922單片機(jī)供電需要3.3V,ZLG9270的工作電壓也用到3.3V,為了降低延時(shí),為P82B96提供3.3V、5V兩種電源。PCF8591和AD590都采用5V供電即可。利用電池供電引出5V電壓,經(jīng)SPX3819后輸出3.3V提供單片機(jī)的工作電壓。電路簡(jiǎn)單
52、,只需在輸入輸出端分別接上10F濾波電容,電路設(shè)計(jì)如圖4-6。 REF _Ref228111008 h * MERGEFORMAT 圖4-6 電源轉(zhuǎn)換電路SPX3819是一個(gè)具有低壓差電壓和低噪聲輸出電壓調(diào)節(jié)器。它有一個(gè)小于1以下的初始誤差和邏輯兼容的ON / OFF切換輸入。禁用時(shí),電力消耗下降到幾乎為零。其他主要功能包括電池反向保護(hù),限流和熱關(guān)機(jī)。它具有非常低的輸出溫度系數(shù),輸出設(shè)備需要一個(gè)很穩(wěn)定的電容。4.5 溫度測(cè)量模塊 本系統(tǒng)設(shè)計(jì)目的在于采集現(xiàn)實(shí)環(huán)境的溫度信息,所以需要利用單片機(jī)采集溫度傳感器的數(shù)據(jù),溫度傳感器使用美國模擬器件公司生產(chǎn)的AD590,采集的信號(hào)需要經(jīng)過放大和信號(hào)調(diào)理,再
53、傳送到A/D轉(zhuǎn)換器PCF8951,即把模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),轉(zhuǎn)換后通過I2C總線傳輸給處理中心。4.5.1 A/D轉(zhuǎn)換器 PCF8591PCF8591是一款單電源、低功耗8位COMS型A/D、D/A轉(zhuǎn)換芯片,它具有4路模擬量輸入通道、一路模擬量輸出通道和1個(gè)I2C總線接口。該器件I2C從地址的低三位由芯片的A0、A1和A2三個(gè)地址引腳決定,所以在不增加任何硬件的情況下同一條I2C總線最多可以連接8個(gè)同類型的器件。該器件具有多路模擬量輸入、片上跟蹤保持、8位A/D轉(zhuǎn)換和8位D/A轉(zhuǎn)換等功能。A/D與D/A的最大轉(zhuǎn)換速率由I2C總線的最大傳輸速率決定。 PCF8591采用的是單電源供電,正常工作
54、電源電壓范圍為2.5V6V;重要的是通過I2C總線完成數(shù)據(jù)的輸入/輸出,采樣頻率是由I2C總線傳輸速率決定的。PCF8591進(jìn)行數(shù)據(jù)轉(zhuǎn)換時(shí)需要外接一參考電壓。 PCF8591采用典型的I2C總線接口器件尋址方法,即總線地址由器件地址、引腳地址和方向位組成。飛利蒲公司規(guī)定A/D器件地址為1001。引腳地址為,其值由用戶選擇,因此I2C系統(tǒng)中最多可接=8個(gè)具有I2C總線接口的A/D器件。地址的最后一位為方向位,當(dāng)主控器對(duì)A/D器件進(jìn)行讀操作時(shí)為1,進(jìn)行寫操作時(shí)為0。總線操作時(shí),由器件地址、引腳地址和方向位組成的從地址為主控器發(fā)送的第一字節(jié)。 在進(jìn)行數(shù)據(jù)操作時(shí),首先是主控器發(fā)出起始信號(hào),然后發(fā)出讀尋
55、址字節(jié),被控器做出應(yīng)答后,主控器從被控器讀出第一個(gè)數(shù)據(jù)字節(jié),主控器發(fā)出應(yīng)答,主控器從被控器讀出第二個(gè)數(shù)據(jù)字節(jié),主控器發(fā)出應(yīng)答一直到主控器從被控器中讀出第n個(gè)數(shù)據(jù)字節(jié),主控器發(fā)出非應(yīng)答信號(hào),最后主控器發(fā)出停止信號(hào)。4.5.2 溫度傳感器AD590 集成溫度傳感器實(shí)質(zhì)上是一種半導(dǎo)體集成電路,它是利用晶體管的b-e結(jié)壓降的不飽和值Vbe與熱力學(xué)溫度T和通過發(fā)射極電流I的下述關(guān)系實(shí)現(xiàn)對(duì)溫度的檢測(cè): ( 4 1) 式中:K波爾茲常數(shù); q電子電荷絕對(duì)值。 AD590 是美國模擬器件公司生產(chǎn)的單片集成兩端感溫電流源。流過器件的電流(mA)等于器件所處環(huán)境的熱力學(xué)溫度(開爾文)度數(shù),即: ( 4 2) 式中
56、:Ir流過器件(AD590)的電流,單位為mA; T熱力學(xué)溫度,單位為K。 AD590的測(cè)溫范圍為-55+150,電源電壓范圍為4V30V。其輸出電流是以絕對(duì)溫度零度(-273)為基準(zhǔn),每增加1,它會(huì)增加1A輸出電流。AD590可以承受44V正向電壓和20V反向電壓,因而器件反接也不會(huì)被損壞。AD590精度很高,在-55+150。 溫度測(cè)量電路如下:圖4-7 溫度測(cè)量電路圖AD590的輸出電流I=(273+T)A(T為攝氏溫度),因此測(cè)量的電壓V為(273+T)A10K=(2.73+T/100)V。為了將電壓測(cè)量出來又務(wù)須使輸出電流I分流,我們使用LM324作為電壓跟隨器輸出電壓等于輸入電壓V
57、;由于電源供應(yīng)多器件之后,是帶雜波的,因此我們使用齊納二極管作為穩(wěn)壓管,得到3V的穩(wěn)壓電源,再利用可變電阻分壓,其輸出電壓V1需調(diào)整至2.73V;接下來我們使用LM324作為差動(dòng)放大器使得輸出Vo為(100K/10K)(V2-V1)=T/10,即假如現(xiàn)在溫度為攝氏28,輸出電壓Vo則為2.8V,輸出電壓接A/D轉(zhuǎn)換器,那么A/D轉(zhuǎn)換輸出的數(shù)字量就和攝氏溫度成線形比例關(guān)系。A/D轉(zhuǎn)換器的參考電壓用5V,接地,選擇AIN0作為電壓輸入端。在本系統(tǒng)設(shè)計(jì)時(shí)使用5V基準(zhǔn)電壓源來實(shí)現(xiàn),基準(zhǔn)電壓源提供一個(gè)絕對(duì)電壓,與輸入電壓進(jìn)行比較以確定適當(dāng)?shù)臄?shù)字輸出。 本章節(jié)主要介紹了該系統(tǒng)的硬件電路設(shè)計(jì),包括幾個(gè)模塊的
58、核心工作原理。主要包括單片機(jī)控制模塊、LED顯示模塊、遠(yuǎn)程傳輸模塊、電源模塊和溫度測(cè)量模塊五大部分。5 系統(tǒng)軟件設(shè)計(jì)5.1 Main函數(shù)設(shè)計(jì) 主函數(shù)調(diào)用底層應(yīng)用函數(shù),開始時(shí)調(diào)用開機(jī)延時(shí)函數(shù)、初始化函數(shù),然后配置PCF8591為輸出狀態(tài),查詢是否有按鍵標(biāo)志位,若有鍵按下則清零鍵盤中斷標(biāo)志位并做按鍵處理,無鍵按下時(shí)等待按鍵按下。本系統(tǒng)的Main函數(shù)流程如 REF _Ref232334716 h * MERGEFORMAT 圖5-1,程序見 REF _Ref228422144 h * MERGEFORMAT 程序清單5-1。 圖5- SEQ 圖 * ARABIC s 1 1 MAIN函數(shù)流程圖程序清
59、單5- SEQ 程序清單 * ARABIC s 1 1 主函數(shù)/* 函數(shù)名稱:main* 函數(shù)功能:主函數(shù)* 入口參數(shù):無* 出口參數(shù):無*/void main ( )Delay(1);/* 開機(jī)后延遲10ms*/Main_Init( );/* 相關(guān)初始化操作*/ISendStr(PCF8591,0 x03,0 x00); /* 配置PCF8591為輸出狀態(tài) */ while(1)if (KeyFlag) /* 有鍵按下時(shí)處理程序*/KeyFlag=0;/* 清零按鍵標(biāo)志位*/KEY_Process( );ISendStr(PCF8591,0 x01,OutIOVal);/* 向輸出寄存器寫入
60、數(shù)據(jù) */ 5.2 I2C發(fā)送數(shù)據(jù)函數(shù)該函數(shù)包括啟動(dòng)總線、發(fā)送從器件地址、發(fā)送子地址、發(fā)送數(shù)據(jù)、結(jié)束總線,全過程嚴(yán)格遵循I2C總線傳輸數(shù)據(jù)時(shí)序。發(fā)送從器件地址后狀態(tài)寄存器值等于0 x18,表示I2C總線已經(jīng)發(fā)送SLA+W并接收了應(yīng)答信號(hào),下一步將發(fā)送子地址字節(jié),不等于時(shí)表示未接收到應(yīng)答信號(hào),這時(shí)將置位STO,停止總線并返回0。發(fā)送子地址和數(shù)據(jù)字節(jié)后,狀態(tài)寄存器值為0 x28,表示已經(jīng)發(fā)送子地址或數(shù)據(jù)字節(jié)并接收了應(yīng)答信號(hào),不等于表示沒有接收到應(yīng)答信號(hào)并返回0。發(fā)送完數(shù)據(jù)字節(jié)后,狀態(tài)寄存器里的值為0 x28時(shí)將結(jié)束總線并返回1。具體流程如 REF _Ref227665702 h * MERGEFO
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 教練和女兒私下協(xié)議書
- 咖啡廳加盟合同協(xié)議書
- 財(cái)產(chǎn)賬戶協(xié)議書
- 藥店變更協(xié)議書
- 郵儲(chǔ)就業(yè)協(xié)議書
- 屠宰檢疫員合同協(xié)議書
- 合同外增加工程協(xié)議書
- 郵寄快遞協(xié)議書
- 液化氣供氣合同協(xié)議書
- 美國導(dǎo)彈協(xié)議書
- 護(hù)士分層級(jí)管理及培訓(xùn)陶英課件
- 優(yōu)秀課例丨氯氣的性質(zhì)
- 2009年《四川省建設(shè)工程工程量清單計(jì)價(jià)定額》
- 監(jiān)理平行檢查記錄表格模板
- 實(shí)驗(yàn)室生物安全手冊(cè)(完整版)資料
- 臨時(shí)圍擋施工方案(標(biāo)準(zhǔn)版)
- 中班語言《噓我們有個(gè)計(jì)劃》課件
- 水墨中國風(fēng)名著《水滸傳》簡(jiǎn)介主題PPT模板課件
- Q∕GDW 11958-2020 國家電網(wǎng)有限公司應(yīng)急預(yù)案編制規(guī)范
- TCSCS 009-2020 鋼結(jié)構(gòu)滑移施工技術(shù)標(biāo)準(zhǔn)
- 小學(xué)英語GreedyRabbit教案
評(píng)論
0/150
提交評(píng)論