畢業(yè)設(shè)計(jì)論文基于單片機(jī)數(shù)據(jù)采集系統(tǒng)含源代碼_第1頁(yè)
畢業(yè)設(shè)計(jì)論文基于單片機(jī)數(shù)據(jù)采集系統(tǒng)含源代碼_第2頁(yè)
畢業(yè)設(shè)計(jì)論文基于單片機(jī)數(shù)據(jù)采集系統(tǒng)含源代碼_第3頁(yè)
畢業(yè)設(shè)計(jì)論文基于單片機(jī)數(shù)據(jù)采集系統(tǒng)含源代碼_第4頁(yè)
畢業(yè)設(shè)計(jì)論文基于單片機(jī)數(shù)據(jù)采集系統(tǒng)含源代碼_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、畢 業(yè) 論 文(設(shè)計(jì))題 目: 基于80C51單片機(jī)和TLC2543的多路 數(shù)據(jù)采集系統(tǒng)設(shè)計(jì) 學(xué) 號(hào): 姓 名: 年 級(jí): 學(xué) 院: 信息科學(xué)技術(shù)學(xué)院 系 別: 電子通信系 專 業(yè): 通信工程 指導(dǎo)教師: 完成日期: 在工業(yè)生產(chǎn)和科學(xué)技術(shù)研究的各行業(yè)中,常常利用PC或工控機(jī)對(duì)各種數(shù)據(jù)進(jìn)行采集。數(shù)據(jù)采集技術(shù)是信息科學(xué)的重要分支,是傳感器、信號(hào)獲取、存儲(chǔ)與處理等信息技術(shù)結(jié)合。Philips公司推出的增強(qiáng)型80C51系列P89C51RA2組成多路高精度的數(shù)據(jù)采集系統(tǒng)。這個(gè)數(shù)據(jù)采集系統(tǒng)特點(diǎn)是實(shí)現(xiàn)低成本、高可靠性、多點(diǎn)的數(shù)據(jù)采集,并且具有易實(shí)現(xiàn)、 、易編程、移植 、體積小、功耗低等優(yōu)點(diǎn)。該系統(tǒng)還可通過(guò)U

2、SB數(shù)據(jù)總線接口與PC機(jī)進(jìn)行數(shù)據(jù)通信,達(dá)到在PC機(jī)上實(shí)時(shí)的顯示、存儲(chǔ)和處理采樣數(shù)據(jù)的目的。以上所有的特性使得本系統(tǒng)可很好的應(yīng)用于實(shí)驗(yàn)室或工業(yè)現(xiàn)場(chǎng)等多種場(chǎng)合的多路數(shù)據(jù)實(shí)時(shí)采集。關(guān)鍵詞:數(shù)據(jù)采集AbstractPC and Industrial PC are often utilized in all walks of life in industrial production and scientific research to acquire various data. Data acquiring technology is an important branch of informatio

3、n science, and it combine transducer, signal obtaining, information storing and processing together. This paper adopts 11 analog input channels and 12-bit -analog-to -digital converter called TLC2543 from TI Company and enhancement mode 80C51 series signal-chip computer called P89C51RA2 from Philips

4、 Company to form the multi-function and high-accuracy data gathering. With small size and low power consumption, this kind of data gathering technology is easy to realize, program, and transplant. This system also can carry on data communication with PC through USB data bus interface and PC, and it

5、can finally achieve display, memory, and sample processing. With the characteristics mentioned above this system will be well applied in the laboratory, industry, or other departments where the multi-function real time data acquire technology can be used.Keyword: TLC2543 ; A/D converter; data acquis

6、ition目 錄IAbstractII1 引言- 1 -1.1 研究意義- 1 -1.2 研究?jī)?nèi)容- 1 -2 數(shù)據(jù)采集系統(tǒng)的構(gòu)成- 2 -3 基于USB的數(shù)據(jù)采集系統(tǒng)的硬件設(shè)計(jì)- 3 -3.1系統(tǒng)的原理及其組成- 3 - 5 -3.2.1 單片機(jī)芯片選擇- 5 -3.2.2 模數(shù)轉(zhuǎn)換芯片選擇- 6 - 8 - 9 - 10 - 11 - 11 - 14 - 14 - 14 -4.1.2 接口時(shí)序- 14 -4.2 采集模塊程序設(shè)計(jì)- 16 -4.2.1 A/D轉(zhuǎn)化程序設(shè)計(jì)- 17 -5 系統(tǒng)調(diào)試- 18 -6 結(jié)束語(yǔ)- 20 -致 謝- 21 -參考文獻(xiàn)- 22 -附錄 A:A/D轉(zhuǎn)換程序-

7、 23 -附錄 B:主程序- 26 -1 引言1.1 研究意義在工業(yè)生產(chǎn)和科學(xué)技術(shù)研究的各行業(yè)中,常常利用PC或工控機(jī)對(duì)各種數(shù)據(jù)進(jìn)行采集。數(shù)據(jù)采集技術(shù)是信息科學(xué)的重要分支,是傳感器、信號(hào)獲取、存儲(chǔ)與處理等信息技術(shù)結(jié)合。將外部世界存在的溫度、壓力、液位等轉(zhuǎn)換為模擬或數(shù)字信號(hào),再傳送到計(jì)算機(jī)作進(jìn)一步處理的這一過(guò)程,即“數(shù)據(jù)采集”。數(shù)據(jù)采集已在工農(nóng)業(yè),醫(yī)藥衛(wèi)生,生態(tài)環(huán)境,航天航空,軍事,氣象等領(lǐng)域得到了廣泛的應(yīng)用,可以通過(guò)對(duì)信號(hào)測(cè)量,處理,控制及管理,實(shí)現(xiàn)測(cè)、控、管的自動(dòng)化與系統(tǒng)化。而利用Philips公司推出的增強(qiáng)型80C51單片機(jī)系列P89C51RA2和TI公司的11路12位串行模數(shù)轉(zhuǎn)換芯片TL

8、C2543組成多路高精度的數(shù)據(jù)采集系統(tǒng),很容易就能實(shí)現(xiàn)低成本、高可靠性、多點(diǎn)的數(shù)據(jù)采集。并可通過(guò)USB數(shù)據(jù)總線接口與PC機(jī)進(jìn)行數(shù)據(jù)通信,在PC機(jī)上實(shí)時(shí)地顯示和存儲(chǔ)采樣數(shù)據(jù),本系統(tǒng)可應(yīng)用于實(shí)驗(yàn)室或工業(yè)現(xiàn)場(chǎng)等多種場(chǎng)合的多路數(shù)據(jù)實(shí)時(shí)采集。1.2 研究?jī)?nèi)容2 數(shù)據(jù)采集系統(tǒng)的構(gòu)成在任何計(jì)算機(jī)測(cè)控系統(tǒng)中,都是從盡量快速,盡量準(zhǔn)確,盡量完整的獲得數(shù)字形式的數(shù)據(jù)開(kāi)始的。因此,數(shù)據(jù)采集系統(tǒng)作為溝通模擬域與數(shù)字域的橋梁起著非常重要的作用。70年代初,隨著計(jì)算機(jī)技術(shù)及大規(guī)模集成電路的發(fā)展,特別是微處理器及高速A/D轉(zhuǎn)換器的出現(xiàn),數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)發(fā)生了重大變革。原來(lái)由小規(guī)模集成的數(shù)字邏輯電路及硬件程序控制器組成的采集

9、系統(tǒng)被微處理器控制的采集系統(tǒng)所代替。因?yàn)橛晌⑻幚砥魅ネ瓿沙绦蚩刂疲瑪?shù)據(jù)處理及大部分邏輯操作,使系統(tǒng)的靈活性和可靠性大大的提高,系統(tǒng)的硬件成本和系統(tǒng)的重建費(fèi)用大大的降低。數(shù)據(jù)采集系統(tǒng)一般由信號(hào)調(diào)理電路,采樣保持電路,A/D轉(zhuǎn)換芯片,微處理器組成。結(jié)構(gòu)框圖如圖1所示。采樣保持電路A / D轉(zhuǎn)換微處理器信號(hào)調(diào)理電路圖1 數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)框圖其中信號(hào)調(diào)理電路,它是傳感器與A/D之間的橋梁,也是測(cè)控系統(tǒng)中重要組成部分。信號(hào)調(diào)理的主要功能是:(1)目前標(biāo)準(zhǔn)化工業(yè)儀表通常采用010Ma,420mA信號(hào),為了和A/D的輸入形式相適應(yīng),必須經(jīng)I/V變換成電壓信號(hào)。(2)某些測(cè)量信號(hào)可能是非電壓量,如熱電阻等,這

10、些非電壓量信號(hào)必須變?yōu)殡妷盒盘?hào),還有些信號(hào)是弱電壓信號(hào),如熱電偶信號(hào),必須放大,濾波,這些處理包括信號(hào)形式的變換,量程調(diào)整,環(huán)境補(bǔ)償,線性化等。(3)某些惡劣條件下,共模電壓干擾很強(qiáng),如共模電平高達(dá)220V,不采用隔離的辦法無(wú)法完成數(shù)據(jù)采集的任務(wù),因此,必須根據(jù)現(xiàn)場(chǎng)環(huán)境,考慮共模干擾的抑制,甚至采用隔離措施,包括地線隔離,路間隔離等等。綜上所述,非電量的轉(zhuǎn)換,信號(hào)形式的變換,放大,濾波,共模抑制及隔離等等,都是信號(hào)調(diào)理的主要功能。信號(hào)調(diào)理電路包括電橋,放大,濾波,隔離等電路。根據(jù)不同的調(diào)理對(duì)象,采用不同的電路。電橋電路的典型應(yīng)用之一就是熱電阻測(cè)溫。用熱電阻測(cè)溫時(shí),工業(yè)設(shè)備距離計(jì)算機(jī)較遠(yuǎn),引線將

11、很長(zhǎng),這就容易引進(jìn)干擾,并在熱電阻的電橋中產(chǎn)生長(zhǎng)引線誤差。解決的辦法有:采用熱電阻溫度變送器:智能傳感器加通訊方式連接:采用三線制連接方法。信號(hào)放大電路通常由運(yùn)放承擔(dān),運(yùn)放的選擇主要考慮精度要求(失調(diào)及失調(diào)溫漂),速度要求(帶寬、上升率),幅度要求(工作電壓范圍及增益)及共模抑制要求。常用于前置放大器的有uA741,LF347(低精度),OP-07(中精度),ICL7650(高精度)等。濾波和限幅電路通常采用二極管,穩(wěn)壓管,電容等器件。用二極管和穩(wěn)壓管的限幅方法會(huì)產(chǎn)生一定的非線性且靈敏度下降,這可以通過(guò)后級(jí)增益調(diào)整和非線性校正補(bǔ)償。此外,由于限幅值比最大值輸入值高,當(dāng)使用多路開(kāi)關(guān)時(shí),某一路超限

12、時(shí)可能影響其他路,需要選用優(yōu)質(zhì)模擬開(kāi)關(guān)如AD7501。共模電壓的存在對(duì)模擬信號(hào)的處理有影響。高的共模電壓會(huì)擊穿器件,即使沒(méi)有損壞器件,也會(huì)影響測(cè)量的精度。隔離是克服共模干擾影響的有效措施。常用的隔離方法有:光電隔離,采用隔離放大器等。3 基于USB的數(shù)據(jù)采集系統(tǒng)的硬件設(shè)計(jì)3.1系統(tǒng)的原理及其組成在工業(yè)生產(chǎn)和科學(xué)技術(shù)研究的各行業(yè)中,常需要對(duì)各種信號(hào)進(jìn)行采集,如液位、溫度、壓力、頻率等。但傳統(tǒng)的采集方式是在PC機(jī)或工控機(jī)內(nèi)安裝數(shù)據(jù)采集卡,采用這種方式不僅安裝麻煩、易受機(jī)箱內(nèi)環(huán)境的干擾,而且由于受計(jì)算機(jī)插槽數(shù)量和地址、中斷資源的限制,不可能掛接很多設(shè)備。而通用串行總線的出現(xiàn),很好地解決了上述這些沖突

13、,很容易就能夠?qū)崿F(xiàn)低成本、高可靠性、多點(diǎn)的外置式數(shù)據(jù)采集系統(tǒng),這不僅能提高系統(tǒng)的數(shù)據(jù)傳輸速度,還能增強(qiáng)系統(tǒng)的靈活性,同時(shí)有利于系統(tǒng)的維護(hù)。本USB的數(shù)據(jù)采集系統(tǒng)主要利用了A/D轉(zhuǎn)換技術(shù)、溫度控制技術(shù)、微處理器和USB技術(shù),是伴隨著USB技術(shù)的迅速發(fā)展與新的數(shù)據(jù)采集技術(shù)的發(fā)展而發(fā)展起來(lái)的。采集到的數(shù)據(jù)通過(guò)主機(jī)接口(USB口)發(fā)送到PC機(jī)并實(shí)時(shí)顯示出來(lái),其波形保真性能與A/D轉(zhuǎn)換器的轉(zhuǎn)換速率、分辨率與精度密切相關(guān)。A/D轉(zhuǎn)換速率越高,復(fù)現(xiàn)的波形的分辨率也就越高:A/D轉(zhuǎn)換器位數(shù)越多,精度越高,波形保真性越高。本系統(tǒng)總體結(jié)構(gòu)圖如圖2所示。其中溫度控制技術(shù)、USB技術(shù)和數(shù)據(jù)采集波形的實(shí)現(xiàn)由第三方設(shè)計(jì)完

14、成,這里不在介紹。USB芯片CPU芯片USB接頭數(shù)據(jù)控制串行數(shù)據(jù)USB總 線主機(jī)USB 接口溫度采集電路數(shù)據(jù)采集電路數(shù)據(jù)命令數(shù)據(jù)控制圖2 USB數(shù)據(jù)采集系統(tǒng)總體結(jié)構(gòu)圖基于USB的數(shù)據(jù)采集系統(tǒng)的數(shù)據(jù)采集模塊主要是由A/D轉(zhuǎn)換器、微處理器、電壓跟隨器等組成。數(shù)據(jù)采集系統(tǒng)的結(jié)構(gòu)框圖如圖3所示:微處理器11路模擬輸入信號(hào)電壓跟隨器數(shù)據(jù)A/D轉(zhuǎn)換 器數(shù)據(jù)數(shù)據(jù)圖3 數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)圖從以上兩個(gè)結(jié)構(gòu)圖中可知,11路模擬輸入信號(hào)通過(guò)電壓跟隨器濾波后,輸出到A/D轉(zhuǎn)換器,微控制器把經(jīng)過(guò)A/D轉(zhuǎn)換器轉(zhuǎn)換后的數(shù)字信號(hào)通過(guò)USB控制芯片輸出給計(jì)算機(jī),同時(shí)可以在計(jì)算機(jī)上實(shí)現(xiàn)數(shù)據(jù)的顯示;而USB主機(jī)及顯示部分則通過(guò)輸出接

15、口在PC機(jī)上顯示,采用軟件來(lái)模擬顯示輸入信號(hào)的波形。同時(shí)可以控制A/D轉(zhuǎn)換器的啟停、數(shù)據(jù)存取器的存取、USB外設(shè)芯片的工作、顯示圖形的放大和縮小等。在選擇一個(gè)芯片時(shí),用戶一般考慮的是芯片含有的功能、價(jià)位、是否容易取得以及是否容易開(kāi)發(fā)等因素。一個(gè)芯片是否容易開(kāi)發(fā),視開(kāi)發(fā)工具是否容易取得及其品質(zhì),設(shè)備的驅(qū)動(dòng)程序,有無(wú)示例程序代碼,以及對(duì)設(shè)備結(jié)構(gòu)等的了解而定,下面對(duì)本系統(tǒng)中芯片的選擇作一個(gè)簡(jiǎn)單的介紹。 單片機(jī)芯片選擇本設(shè)計(jì)中我們采用了Philips公司推出的增強(qiáng)型80C51單片機(jī)P89C51RA2,此芯片包含8K可并行可編程的非易失性FLASH程序存儲(chǔ)器,并可實(shí)現(xiàn)對(duì)器件串行系統(tǒng)編程(ISP)和在應(yīng)用

16、中編程(IAP)。在系統(tǒng)編程 ISP(In-System Programming),當(dāng)MCU安裝在用戶板上時(shí)允許用戶下載新的代碼。在應(yīng)用中編程 IAP(In-Application Programming),MCU可以在系統(tǒng)中獲取新代碼并對(duì)自己重新編程,這種方法允許通過(guò)調(diào)制解調(diào)器連接進(jìn)行遠(yuǎn)程編程片內(nèi)ROM中固化的默認(rèn)的串行加載程序Boot Loader允許。ISP 通過(guò)UART將程序代碼裝入Flash存儲(chǔ)器而Flash代碼中則不需要加載程序,對(duì)于IAP用戶程序通過(guò)使用片內(nèi)ROM中的標(biāo)準(zhǔn)程序?qū)lash存儲(chǔ)器進(jìn)行擦除和重新編程 該器件可通過(guò)并行編程或在系統(tǒng)編程的方法對(duì)一個(gè)Flash位進(jìn)行編程,從

17、而選擇6時(shí)鐘或12時(shí)鐘模式。此外也可通過(guò)時(shí)鐘控制寄存器CKCON中的X2位選擇6時(shí)鐘或12時(shí)鐘模式,另外當(dāng)處于6時(shí)鐘模式時(shí)外圍功能可以選擇一個(gè)機(jī)器周期6時(shí)鐘或是12時(shí)鐘,這是通過(guò)CKCON寄存器進(jìn)行選擇的。該系列微控制器是 80C51 微控制器的派生器件是采用先進(jìn)CMOS工藝制造的8位微控制器,指令系統(tǒng)與80C51完全相同。該器件有4組8位I/O口、3個(gè)16位定時(shí)/計(jì)數(shù)器、多中斷源-4中斷優(yōu)先級(jí)-嵌套的中斷結(jié)構(gòu)、1個(gè)增強(qiáng)型 UART 片內(nèi)振蕩器及時(shí)序電路和擴(kuò)展數(shù)據(jù)存儲(chǔ)器片內(nèi)64K、PCA(可編程計(jì)數(shù)器陣列)、硬件看門(mén)狗定時(shí)器。新增的特性使得P89C51RA2成為功能更強(qiáng)大的微控制器,從而更好地

18、支持需要用到脈寬調(diào)制,高速I(mǎi)/O,遞增/遞減計(jì)數(shù)功能(如電機(jī)控制)等應(yīng)用場(chǎng)合。 模數(shù)轉(zhuǎn)換芯片選擇近年來(lái)模數(shù)轉(zhuǎn)換技術(shù)發(fā)展很快,在功能增強(qiáng)、功耗降低的同時(shí)轉(zhuǎn)換速度也極大地提高,轉(zhuǎn)換頻率從幾百kHz提高到幾十MHz,而且芯片也較廉價(jià),使用也日益廣泛。其A/D轉(zhuǎn)換器的種類也越來(lái)越多,目前使用廣泛的有:逐次逼近式A/D轉(zhuǎn)換器、余數(shù)反饋比較式A/D轉(zhuǎn)換器、雙積分A/D轉(zhuǎn)換器、V/F變換式A/D轉(zhuǎn)換器和式A/D轉(zhuǎn)換器等等。(1) 逐次逼近式A/D轉(zhuǎn)換器:速度高,外用元器件也不多,大多數(shù)單片集成A/D轉(zhuǎn)換器芯片多采用此種方式。但對(duì)快速變化的輸入信號(hào)應(yīng)配備采樣保持器才能保證轉(zhuǎn)換精度的要求。此外,A/D轉(zhuǎn)換器本身

19、對(duì)輸入信號(hào)中的噪聲無(wú)抑制作用,必須采用外加軟硬件抗干擾措施,才能抑制輸入信號(hào)中大部分隨機(jī)干擾。(2) 余數(shù)反饋比較式A/D轉(zhuǎn)換器:這種轉(zhuǎn)換方式分辨率很高,量化誤差小,轉(zhuǎn)換精度高。這種轉(zhuǎn)換方式的速度主要受兩個(gè)因素的限制:一是每次循環(huán)進(jìn)行電壓數(shù)字轉(zhuǎn)換的時(shí)間;二是余數(shù)模擬電壓的建立時(shí)間。目前,采用這種方式的A/D芯片,通過(guò)輔之以一些另外的技術(shù)措施,其轉(zhuǎn)換速度還是比較快的。(3) 雙積分A/D轉(zhuǎn)換器:抗干擾能力強(qiáng),具有較高的轉(zhuǎn)換精度,電路結(jié)構(gòu)簡(jiǎn)單,編碼方便,但轉(zhuǎn)換速率低,常用于速度要求不高,精度要求較高的測(cè)量?jī)x器儀表中。(4) V/F變換式A/D轉(zhuǎn)換器:由于應(yīng)用了積分電容,具有很好的抗干擾性能、良好的

20、線性度和高的分辨率,電路結(jié)構(gòu)簡(jiǎn)單。缺點(diǎn)是轉(zhuǎn)換速率低,在一些非快速的檢測(cè)信道中愈趨向使用V/F變換式A/D轉(zhuǎn)換器代替通常的A/D轉(zhuǎn)換器。(5) 式A/D轉(zhuǎn)換器:它兼有反饋比較和積分式的特征,具有較強(qiáng)的抗干擾能力,量化噪聲小、分辨率高和線性度好的優(yōu)點(diǎn)。轉(zhuǎn)換速率也高于積分式ADC,因此,式A/D轉(zhuǎn)換器是用于戶外智能儀器儀表和工業(yè)過(guò)程參數(shù)檢測(cè)控制的優(yōu)先選擇。在本系統(tǒng)中,根據(jù)實(shí)際需要和性價(jià)比綜合考慮,采用了TI公司生產(chǎn)的TLC2543C,11路12位開(kāi)關(guān)電容逐次逼近串行A/D轉(zhuǎn)換器,采樣率為66 kbit /s,在工作溫度范圍內(nèi)10us轉(zhuǎn)換時(shí)間。具有三個(gè)控制輸入端:片選,輸入/輸出時(shí)鐘I/O CLOCK

21、以及地址輸入端AD_DIN。它還可以通過(guò)一個(gè)串行的3態(tài)輸出端AD_OUT與主處理器或其外圍的串行口通訊,輸出轉(zhuǎn)換結(jié)果。本器件可以從主機(jī)高速傳輸數(shù)據(jù)。除了高速的轉(zhuǎn)換器和通用的控制能力外,本器件有一個(gè)片內(nèi)的14通道多路器可以在11個(gè)輸入通道或3個(gè)內(nèi)部自測(cè)試(SELF-TEST)電壓中任意選擇一個(gè)。采樣-保持是自動(dòng)的。在轉(zhuǎn)換結(jié)束時(shí),轉(zhuǎn)換結(jié)束EOC輸出端變高以指示轉(zhuǎn)換的完成。本器件中的轉(zhuǎn)換器結(jié)合外部輸入的差分高阻抗的基準(zhǔn)電壓,具有簡(jiǎn)化比率轉(zhuǎn)換、刻度以及模擬電路與邏輯電路和電源噪聲隔離的特點(diǎn)。開(kāi)關(guān)電容的設(shè)計(jì)可以使在整個(gè)溫度范圍內(nèi)有較小的轉(zhuǎn)換誤差。此多通道,小體積的TLC2543C器件,線性誤差小 (&#

22、177;1 LSB max),節(jié)省I/O資源,成本較低,特別適用于單片機(jī)數(shù)據(jù)采集系統(tǒng)的開(kāi)發(fā)。TLC2543的內(nèi)部結(jié)構(gòu)如圖4所示。圖4 TLC2543內(nèi)部結(jié)構(gòu)圖TLC2543內(nèi)部由通道選擇器、輸入地址寄存器、采樣保持電路、12位的模數(shù)轉(zhuǎn)換器、輸出寄存器、并串轉(zhuǎn)換器以及控制邏輯電路等7個(gè)部分組成。通道選擇器根據(jù)輸入地址寄存器中存放的地址選擇輸入通道,并將輸入通道中的信號(hào)送到采樣保持電路中,然后在12位數(shù)模轉(zhuǎn)換器中將采樣的模擬量轉(zhuǎn)換成數(shù)字量,存放到輸出寄存器中,這些數(shù)據(jù)經(jīng)過(guò)并行串行轉(zhuǎn)換器轉(zhuǎn)換成串行數(shù)據(jù),由AD_OUT端輸出到微處理器中。在80C51系列微處理器中都不帶SPI或相同的接口能力,為了和T

23、LC2543模數(shù)轉(zhuǎn)換器接口,需要用軟件來(lái)合成SPI的操作,這樣數(shù)據(jù)傳送速率下降,受微處理器指令周期時(shí)間控制,因而受微處理器的時(shí)鐘頻率影響。因此要盡可能選擇微處理器的最高始終頻率,以減小指令周期時(shí)間,優(yōu)化接口數(shù)據(jù)傳輸速率。如圖5所示,TLC2543和單片機(jī)的接口電路。TLC2543的轉(zhuǎn)換結(jié)束端EOC、I/O時(shí)鐘、串行數(shù)據(jù)輸入端AD_DIN、串行數(shù)據(jù)輸出端AD_OUT片選CS分別連接單片機(jī)的并行雙向I/O口1的管腳P1.0、P1.1、P1.2、P1.3、P1.4。在設(shè)計(jì)制作時(shí)要注意事項(xiàng):(1)電源去耦當(dāng)使用TLC2543這種12位A/D器件時(shí),每個(gè)模擬IC的電源端必須用一個(gè)0.1F的陶瓷電容連接到

24、地,用作去耦電容。在噪聲影響較大的環(huán)境中,建議每個(gè)電源和陶瓷電容端并聯(lián)一個(gè)10F的鉭電容,這樣能夠減小噪聲的影響。(2)接地對(duì)模擬器件和數(shù)字器件,電源的地線回路必須分開(kāi),以防止數(shù)字部分的噪聲電流通過(guò)模擬地回路引入,產(chǎn)生噪聲電壓,從而對(duì)模擬信號(hào)產(chǎn)生干擾。所有的地線回路都有一定的阻抗,因此地線要盡可能寬或用地線平面,以減小阻抗,連線應(yīng)當(dāng)盡可能短,如果使用開(kāi)關(guān)電源,則開(kāi)關(guān)電源要遠(yuǎn)離模擬器件。(3)電路板布線使用TLC2543時(shí)一定要注意電路板的布線,電路板的布線要確保數(shù)字信號(hào)和模擬信號(hào)隔開(kāi),模擬線和數(shù)字線特別是時(shí)鐘信號(hào)線不能互相平行,也不能在TLC2543芯片下面布數(shù)字信號(hào)線。在PCB設(shè)計(jì)中,布線是

25、完成產(chǎn)品設(shè)計(jì)的重要步驟,在整個(gè)PCB中,以布線的設(shè)計(jì)過(guò)程限定最高,技巧最細(xì)、工作量最大。布線的方式也有兩種:自動(dòng)布線及交互式布線。由于本設(shè)計(jì)采用的是單面板且用交互式布線既手工布線。對(duì)于單面板,設(shè)計(jì)的難點(diǎn)是如何減少跳線情況下把線路布通。此次設(shè)計(jì)經(jīng)過(guò)合理放置元件和多次改進(jìn),最后終于克服一切困難,在跳線很少的情況下把線路布通,達(dá)到了設(shè)計(jì)的目標(biāo)。為了防止外部電磁干擾,采用了電路板外部用相對(duì)較寬的銅線構(gòu)成非閉合的保護(hù)電路。在電路內(nèi)部,直接用板上剩余空間的大面積接地來(lái)提高電路信號(hào)的穩(wěn)定性。如圖10所示。PCB布線原則:(1)電源、地線的處理電源、地線的處理不好會(huì)引起干擾,使產(chǎn)品的性能下降,有時(shí)甚至影響到產(chǎn)

26、品的成功率。所以對(duì)電、地線的布線要認(rèn)真對(duì)待,把電、地線所產(chǎn)生的噪音干擾降到最低限度。l 在電源、地線之間加上去耦電容,濾除噪音干擾。l 盡量加寬電源、地線寬度,最好是地線比電源線寬,它們的關(guān)系是:地線電源線信號(hào)線,對(duì)數(shù)字電路的PCB可用寬的地導(dǎo)線組成一個(gè)回路, 即構(gòu)成一個(gè)地網(wǎng)來(lái)使用(模擬電路的地不能這樣使用)。 l 用大面積銅層作地線用,在印制板上把沒(méi)被用上的地方都與地相連接作為地線用?;蚴亲龀啥鄬影澹娫?,地線各占用一層。(2) 數(shù)字電路與模擬電路的共地處理現(xiàn)在有許多PCB不再是單一功能電路(數(shù)字或模擬電路),而是由數(shù)字電和模擬電路混合構(gòu)成的。因此在布線時(shí)就需要考慮它們之間互相干擾問(wèn)題,特別

27、是地線上的噪音干擾。數(shù)字電路的頻率高,模擬電路的敏感度強(qiáng),對(duì)信號(hào)線來(lái)說(shuō),高頻的信號(hào)線盡可能遠(yuǎn)離敏感的模擬電路器件,對(duì)地線來(lái)說(shuō),整個(gè)PCB對(duì)外界只有一個(gè)結(jié)點(diǎn),所以必須在PCB內(nèi)部進(jìn)行處理數(shù)、模共地的問(wèn)題,而在板內(nèi)部數(shù)字地和模擬地實(shí)際上是分開(kāi)的,只是在PCB與外界連接的接口處(如插頭等),數(shù)字地與模擬地有一點(diǎn)短接,這在設(shè)計(jì)時(shí)必須考慮,只有一個(gè)連接點(diǎn)。也有在PCB上不共地的,這由系統(tǒng)設(shè)計(jì)來(lái)決定。(3) 設(shè)計(jì)規(guī)則檢查(DRC)布線設(shè)計(jì)完成后,需認(rèn)真檢查布線設(shè)計(jì)是否符合設(shè)計(jì)者所制定的規(guī)則,同時(shí)也需確認(rèn)所制定的規(guī)則是否符合印制板生產(chǎn)工藝的需求,一般檢查有如下幾個(gè)方面:線與線,線與元件焊盤(pán),線與貫通孔,元件

28、焊盤(pán)與貫通孔,貫通孔與貫通孔之間的距離是否合理,是否滿足生產(chǎn)要求。 電源線和地線的寬度是否合適,電源與地線之間是否緊耦合(低的波阻抗),在PCB中是否還有能讓地線加寬的地方。 對(duì)于關(guān)鍵的信號(hào)線是否采取了最佳措施,如長(zhǎng)度最短,加保護(hù)線,輸入線及輸出線被明顯地分開(kāi)。 模擬電路和數(shù)字電路部分,是否有各自獨(dú)立的地線。 后加在PCB中的圖形(如圖標(biāo)、注標(biāo))是否會(huì)造成信號(hào)短路。 (4) TLC2543的工作過(guò)程分為兩個(gè)周期:I/O周期和轉(zhuǎn)換周期。(1) I/O周期I/O周期由外部提供的I/O CLOCK定義,延續(xù)8、12或16個(gè)時(shí)鐘周期,決定于選定的數(shù)據(jù)長(zhǎng)度。器件進(jìn)入I/O周期后進(jìn)行兩種操作。首先,在I/

29、OCLOCK的前8個(gè)脈沖的上升沿,以MSB前導(dǎo)方式從DATA INPUT端輸入8位數(shù)據(jù)流到輸入寄存器。其中前4位為模擬通道地址,控制14通道模擬多路器從11個(gè)模擬輸入和3個(gè)內(nèi)部測(cè)試電壓中選通一路送到采樣保持電路,該電路從第4個(gè)I/O CLOCK脈沖的下降沿開(kāi)始對(duì)所選信號(hào)進(jìn)行采樣,直到最后一個(gè)I/O CLOCK脈沖的下降沿。I/O周期的時(shí)鐘脈沖個(gè)數(shù)與輸出數(shù)據(jù)長(zhǎng)度(位數(shù))同時(shí)由輸入數(shù)據(jù)的D3、D2位選擇為8、12或16。當(dāng)工作于12或16位時(shí),在前8個(gè)時(shí)鐘脈沖之后,DATA INPUT無(wú)效。其次,在DATA OUT端串行輸出8位、12或16位數(shù)據(jù)。當(dāng)保持為低時(shí),第一個(gè)數(shù)據(jù)出現(xiàn)在EOC的上升沿。若轉(zhuǎn)

30、換由控制,則第一個(gè)輸出數(shù)據(jù)發(fā)生在的下降沿。這個(gè)數(shù)據(jù)串是前一次轉(zhuǎn)換的結(jié)果,在第一個(gè)輸出數(shù)據(jù)之后的每一個(gè)后續(xù)位均有后續(xù)的I/O時(shí)鐘下降沿輸出。(2) 轉(zhuǎn)換周期在I/O周期的最后一個(gè)I/O CLOCK下降沿之后,EOC變低,采樣值保持不變,轉(zhuǎn)換周期開(kāi)始,片內(nèi)轉(zhuǎn)換器對(duì)采樣值進(jìn)行逐次逼近A/D轉(zhuǎn)換,其工作由與I/O CLOCK同步的內(nèi)部時(shí)鐘控制。轉(zhuǎn)換完成后EOC變高,轉(zhuǎn)換結(jié)果鎖存在輸出數(shù)據(jù)寄存器中,待下一個(gè)I/O周期輸出。I/O周期和轉(zhuǎn)換周期交替進(jìn)行,從而可減小外部數(shù)字噪聲對(duì)轉(zhuǎn)換精度的影響。 接口時(shí)序可以用四種傳輸方法使TLC2543得到全12位分辨率,每次轉(zhuǎn)換和數(shù)據(jù)傳遞可以使用8、12或16個(gè)時(shí)鐘周期

31、。一個(gè)片選()脈沖要插到每次轉(zhuǎn)換的開(kāi)始處,或是在轉(zhuǎn)換時(shí)序的開(kāi)始處變化一次后保持 為低,直到時(shí)序結(jié)束。圖11顯示每次轉(zhuǎn)換和數(shù)據(jù)傳遞使用12個(gè)時(shí)鐘周期和在每次傳遞周期之間插入 的時(shí)序,圖12顯示每次轉(zhuǎn)換和數(shù)據(jù)傳遞使用12個(gè)時(shí)鐘周期,僅在每次轉(zhuǎn)換序列開(kāi)始處插入一次 時(shí)序。圖 11 12時(shí)鐘時(shí)序傳送圖(使用,MSB在前)圖12 12時(shí)鐘時(shí)序傳送圖(不使用,MSB在前)4.2 采集模塊程序設(shè)計(jì)在系統(tǒng)上電后,必須從高變到低后開(kāi)始一次I/O周期。EOC開(kāi)始為高,輸入數(shù)據(jù)寄存器被置為全零。輸出數(shù)據(jù)寄存器的內(nèi)容是隨機(jī)的,并且第一次轉(zhuǎn)換的結(jié)果將被忽略。為了對(duì)器件初始化,被轉(zhuǎn)為高再回到低后開(kāi)始下一次I/O周期。在器

32、件從掉電狀態(tài)返回后的第一次轉(zhuǎn)換,由于器件的內(nèi)部調(diào)整,讀數(shù)可能不準(zhǔn)確。數(shù)據(jù)采集系統(tǒng)流程圖如圖13所示。系統(tǒng)上電m+,通道值是否大于14系統(tǒng)初始化通道、時(shí)鐘、極性設(shè)定采集通道m(xù)0A/D轉(zhuǎn)換程序返回?cái)?shù)據(jù)AdResultdatah*256+datal到單片機(jī)否是圖13 數(shù)據(jù)采集系統(tǒng)流程圖采集程序設(shè)計(jì)為一個(gè)循環(huán)程序,在一個(gè)循環(huán)中完成以下工作:A/D轉(zhuǎn)換器通過(guò)AD_DIN從單片機(jī)接收命令字選取通道、時(shí)鐘和極性,然后進(jìn)入采樣周期,在I/O周期的最后一個(gè)I/O CLOCK下降沿之后,EOC變低,采樣值保持不變,轉(zhuǎn)換周期開(kāi)始,片內(nèi)轉(zhuǎn)換器對(duì)采樣值進(jìn)行逐次逼近A/D轉(zhuǎn)換,其工作由與I/O CLOCK同步的內(nèi)部時(shí)鐘控

33、制。轉(zhuǎn)換完成后EOC變高,轉(zhuǎn)換結(jié)果鎖存在輸出數(shù)據(jù)寄存器中,待下一個(gè)I/O周期輸出。當(dāng)下一個(gè)I/O周期開(kāi)始時(shí),A/D轉(zhuǎn)換器將上一次的轉(zhuǎn)換結(jié)果從AD_OUT串行輸入到單片機(jī)的外部存儲(chǔ)器中。4.2.1 A/D轉(zhuǎn)化程序設(shè)計(jì)在主程序Mainloop中使用函數(shù)init_ADC(m | OUTPUTLENGHT_12 | UNIPOLAR)對(duì)A/D芯片進(jìn)行初始化,定義了系統(tǒng)的初始通道、時(shí)鐘模式以及極性。由于TLC2543有3種時(shí)鐘模式分別為8、12和16時(shí)鐘,其中默認(rèn)的為12時(shí)鐘,出于對(duì)系統(tǒng)通用的考慮,在A/D轉(zhuǎn)換子程序中把它設(shè)計(jì)成可選時(shí)鐘模式。在本數(shù)據(jù)采集系統(tǒng)中,TLC2543輸出結(jié)果設(shè)置成12位無(wú)符號(hào)整

34、型數(shù),輸出順序?yàn)楦呶辉谇扒覟閱螛O性。在每一個(gè)A/D轉(zhuǎn)換過(guò)程中,TLC2543都要從串行輸入端AD_DIN讀取由單片機(jī)輸入的控制字來(lái)選定對(duì)某個(gè)或多個(gè)通道進(jìn)行采樣,然后進(jìn)行A/D轉(zhuǎn)換,轉(zhuǎn)換結(jié)果被存入輸出數(shù)據(jù)寄存器AD_OUT。在下一個(gè)I/O周期中,由數(shù)據(jù)輸出端AD_OUT串行輸出到單片機(jī)的外部寄存器。但是由于采集的為12 位數(shù)據(jù),對(duì)于8 位單片機(jī),要存放在兩個(gè)內(nèi)存地址中,因此需要利用AdResult = datah *256+datal合成后再返回給主程序送入單片機(jī)。本程序不僅實(shí)現(xiàn)了14路模擬信號(hào)的數(shù)據(jù)采集而且可以任意選擇一路或多路進(jìn)行數(shù)據(jù)轉(zhuǎn)換,同時(shí)合成了SPI功能使TLC2543A/D轉(zhuǎn)換芯片和

35、P89C51RA2單片機(jī)能夠快速的進(jìn)行正常通信。但是還存在一定的問(wèn)題,需要在后續(xù)工作中進(jìn)一步改進(jìn)。A/D轉(zhuǎn)換的詳細(xì)程序見(jiàn)附錄A。在 TLC2543 的編程中注意以下幾個(gè)問(wèn)題: (1)一個(gè)輸入輸出工作周期為 12個(gè)時(shí)鐘信號(hào),隨著12個(gè)時(shí)鐘信號(hào)的進(jìn)入, TLC2543的AD_OUT 引腳送出的12 位數(shù),為上一個(gè)工作周期的 A/ D 轉(zhuǎn)換數(shù)據(jù),而這一數(shù)據(jù)是何通道的采集量,取決于上一工作周期從AD_DIN引腳送入TLC2543的控制字的前四位。那么對(duì)于系統(tǒng)上電后第一個(gè)工作周期,從 AD_OUT取出的數(shù)據(jù)是沒(méi)有意義的。(2)控制字的低4位決定輸出數(shù)據(jù)長(zhǎng)度及格式,初始設(shè)定后,一般不要在運(yùn)行過(guò)程中改變,以

36、免數(shù)據(jù)混亂。而在工作周期循環(huán),若累加器 A 中數(shù)據(jù)沒(méi)有處理好,容易把非法的控制字帶入TLC2543,引起輸出數(shù)據(jù)格式錯(cuò)誤,這一點(diǎn)應(yīng)予特別注意。(3) 端控制著TLC2543的轉(zhuǎn)換初始化與輸入輸出。本文中端控制轉(zhuǎn)換過(guò)程,在輸入輸出數(shù)據(jù)過(guò)程必須保持為低,即在輸入12個(gè)時(shí)鐘信號(hào)期間必須保持0之后,端被置高,以便使由高到低的變化,而產(chǎn)生下一工作周期。 端被置高時(shí),與 TLC2543相聯(lián)的其它三線呈高阻狀態(tài),可為其它線路使用,硬件設(shè)計(jì)時(shí),可設(shè)計(jì)為共享線路,軟件編程時(shí),根據(jù) 情況決定誰(shuí)使用這些線路。(4)對(duì)于轉(zhuǎn)換結(jié)果用二進(jìn)制方式輸出,當(dāng)輸入電壓等于時(shí),轉(zhuǎn)換結(jié)果為 12個(gè)“1”,即(1111 1111 11

37、11),當(dāng)輸入電壓等于 時(shí),轉(zhuǎn)換結(jié)果為12個(gè)“0”,即(0000 0000 0000),當(dāng)輸入電壓等于( + )/ 2 時(shí),轉(zhuǎn)換結(jié)果為(1000 0000 0000),供校正參考。5 系統(tǒng)調(diào)試圖14顯示的就是在本論文中設(shè)計(jì)的USB數(shù)據(jù)采集系統(tǒng)實(shí)物圖。電壓跟隨器A/D轉(zhuǎn)換芯片圖14 USB數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)圖在調(diào)試過(guò)程中從硬件到軟件由于經(jīng)驗(yàn)不足和知識(shí)水平的限制,走了不少?gòu)澛?,但最終還是調(diào)試成功。現(xiàn)在總結(jié)一下,對(duì)于系統(tǒng)的進(jìn)一步開(kāi)發(fā)具有一定的積累意義。 (1) 拿到電路板之后不要急于焊接元件,要先認(rèn)真檢查板子連線是否存在短 路、斷路的情況,在確認(rèn)無(wú)誤之后,然后可以加電測(cè)試電源供電情況。正常后基本上就可

38、以開(kāi)始焊接元件了,一般先焊帖片、電阻等元件,遵循由低往高的焊接順序。焊接完畢后加電,如果電路工作不正常,可以先檢查供電、是否存在虛焊、粘連的情況直至排除故障。 (2) 數(shù)據(jù)采集系統(tǒng)的調(diào)試主要是測(cè)試AD轉(zhuǎn)換是否正常。A/D電路的測(cè)試是通過(guò)采樣一組確定電壓并通過(guò)USB接口送往PC機(jī)觀察,由于TLC2543芯片有3個(gè)內(nèi)測(cè)電壓即REF+、REF-、(REF+ +REF-)/2,它們的值是固定不變的,分別為5v、0v和2.5v,可以通過(guò)這3個(gè)通道的值來(lái)確定A/D電路采集的數(shù)據(jù)是否正確,同樣也得到AD電路能夠正常工作的結(jié)論。如圖15所示為應(yīng)用程序的界面圖。圖15 應(yīng)用程序的界面圖 如圖所示當(dāng)按下確定按鈕時(shí)

39、,從通道1到基準(zhǔn)波形3的14路模擬轉(zhuǎn)換通道就開(kāi)始實(shí)時(shí)的變化,其中基準(zhǔn)波形1,基準(zhǔn)波形2,基準(zhǔn)波形3這3個(gè)為T(mén)LC2543的內(nèi)測(cè)電壓,AD轉(zhuǎn)換結(jié)果正確與否都主要觀察這個(gè)數(shù)值的變化。在轉(zhuǎn)換的過(guò)程中它們是基本上不變化的,如果有較大幅度的變化就說(shuō)明轉(zhuǎn)換過(guò)程中存在著問(wèn)題,使得轉(zhuǎn)換結(jié)果的精度和準(zhǔn)確性下降,否則轉(zhuǎn)換的結(jié)果是正確的。6 結(jié)束語(yǔ)并可通過(guò)USB數(shù)據(jù)總線接口與PC機(jī)進(jìn)行數(shù)據(jù)通信,在PC機(jī)上實(shí)時(shí)的顯示和存儲(chǔ)采樣數(shù)據(jù)。而且選用了體積小、功能全的12位TLC2543作為A/D轉(zhuǎn)換器同時(shí)采用C51對(duì)系統(tǒng)編程,使系統(tǒng)具有易實(shí)現(xiàn)、易編程、可移植、體積小、功耗低等優(yōu)點(diǎn) ,具有良好的推廣與應(yīng)用價(jià)值。本系統(tǒng)可應(yīng)用于實(shí)

40、驗(yàn)室或工業(yè)現(xiàn)場(chǎng)等多種場(chǎng)合的多路數(shù)據(jù)實(shí)時(shí)采集。由于時(shí)間倉(cāng)促和知識(shí)有限,致使許多部分都未能完善,存在著很多錯(cuò)誤和問(wèn)題,敬請(qǐng)各位老師同學(xué)提出、指正和批評(píng)。通過(guò)這次設(shè)計(jì),對(duì)大學(xué)四年所學(xué)知識(shí)進(jìn)行了一次檢驗(yàn)和全面的復(fù)習(xí),并且又學(xué)會(huì)了很多新的電子與計(jì)算機(jī)專業(yè)知識(shí),從中得到了很多寶貴的經(jīng)驗(yàn)。致 謝設(shè)計(jì)中遇到的困難。通過(guò)與的討論和學(xué)習(xí)使我獲得了很多豐富的寶貴的經(jīng)驗(yàn)。那兢兢業(yè)業(yè)的治學(xué)態(tài)度、敏銳創(chuàng)新的科學(xué)思維和身體力行的工作作風(fēng)是我收獲的最大財(cái)富,同時(shí)還要感謝海南大學(xué)信息學(xué)院的易家傅老師在此次設(shè)計(jì)中對(duì)我的精心指導(dǎo),使我能順利完成此次設(shè)計(jì)。在設(shè)計(jì)過(guò)程中還有很多同學(xué)對(duì)我有很大幫助,特別是王新建同學(xué)、許元統(tǒng)同學(xué),感謝他們

41、在我畢業(yè)設(shè)計(jì)過(guò)程中給予我的大力支持和耐心指導(dǎo)。還要感謝我的父母、哥哥、姐姐是他們?cè)诒澈竽闹С治?,僅以此文獻(xiàn)給他們。最后感謝海南大學(xué)四年來(lái)對(duì)我的培養(yǎng),使我學(xué)到了很多的知識(shí),這是本次設(shè)計(jì)成功的基礎(chǔ)。參考文獻(xiàn)1 梁合慶.增強(qiáng)核內(nèi)存80C51教程.北京: 電子工業(yè)出版社,2003 .P1682102 劉文濤編著.單片機(jī)語(yǔ)言C51程序設(shè)計(jì).北京:原子能出版社,2004 3 尹勇, 王洪成編著.單片機(jī)開(kāi)發(fā)環(huán)境Vision2使用指南及USB固件編程與調(diào)試. 北京:北京航空航天大學(xué)出版社,2004.10 P1954 楊小川. Protel DXP設(shè)計(jì)指導(dǎo)教程.北京:博導(dǎo)創(chuàng)新科技有限公司,2003.115

42、TLC2543帶串行控制和11個(gè)輸入端模數(shù)轉(zhuǎn)換器中文應(yīng)用筆記.武漢:武漢力源有限公司, 98-3-26 6 TLC2543中文數(shù)據(jù)手冊(cè).武漢:武漢力源有限公司,98-6-307 王述全 孟臣 張福軍 基于串行接口方式單片機(jī)通用數(shù)據(jù)采集系統(tǒng)設(shè)計(jì) 2006-2-168 王宜懷 12位A/D轉(zhuǎn)換器TLC2543與51系列單片機(jī)接口技術(shù).蘇州絲綢工學(xué)院學(xué)報(bào),1999 年10 月,第19 卷第5期:45-509 黃天祿 郝東來(lái) 鄧玉元 用TLC2543 A/D轉(zhuǎn)換器設(shè)計(jì)數(shù)據(jù)采集系統(tǒng).西安通信學(xué) 報(bào),2004年6月,第3卷第3期10 程繼紅 TLC2543在傳感器實(shí)驗(yàn)臺(tái)測(cè)試系統(tǒng)中的應(yīng)用. 南京師范大學(xué)學(xué)報(bào)

43、(工程技術(shù)版),2003年,第3卷第1期11 盧鑫 龐偉正 新型模數(shù)轉(zhuǎn)換器TLC2543的串行接口及其應(yīng)用. 器件與應(yīng)用, 維 普資訊12 左克群 基于TLC2543設(shè)計(jì)的采集系統(tǒng).計(jì)算機(jī)控制監(jiān)測(cè)與管理,2003年第5期13 段軍 基于USB數(shù)據(jù)采集和控制系統(tǒng)的開(kāi)發(fā)與研究.南京理工大學(xué),2004年3月 14 LM324 四運(yùn)放的應(yīng)用. 51單片機(jī)實(shí)驗(yàn)網(wǎng) 15 武漢辦 肖艷中 TLC2543在儀器儀表中的應(yīng)用16 單片機(jī)C51論壇. 網(wǎng)址:附錄 A:A/D轉(zhuǎn)換程序/* /* / USB-DATACOMMUNICATION / File Name: ADC.C / Revision:1.1(200

44、6-05-20) / Author:Liu Shao Fei / Note: /*/#include <stdio.h>#include <string.h>#include <REG51Rx2.H> /* special function register declarations */#include "mainloop.h"#include "AD_Convert.H"#define uint unsigned int#define uchar unsigned charextern unsigned char

45、xdata ADCBuf;sbit AD_CLK = P11; /輸入/輸出時(shí)鐘(I/O CLOCK)sbit AD_DIN = P12; /串行數(shù)據(jù)輸入端sbit AD_DOUT = P13; /A/D轉(zhuǎn)換結(jié)果三態(tài)輸出端sbit AD_CS = P14; /片選端sbit AD_EOC = P10; /轉(zhuǎn)換結(jié)束端 /REF、REF:正、負(fù)基準(zhǔn)電壓端。通常REF 接VCC,REF接地 /最大輸入電壓范圍取決于兩端電壓差;void clock_in() /時(shí)鐘脈沖AD_CLK=1;AD_CLK=0;void init_ADC(unsigned char TongDao) /AD初始化;我們只寫(xiě)不

46、讀uchar j,k;if(TongDao&0x04)=0x00) /定義時(shí)鐘模式12,8,16 k=12;else if(TongDao&0x08)=0x00) k=8; else k=16;ADCBuf0=k;AD_CS=0;AD_CLK=0; /我們采集上邊沿for(j=0;j<k;j+)AD_DIN=(bit)(TongDao&0x80); /取tongdao最高位TongDao<<=1; /逐次取得通道數(shù)clock_in(); / 進(jìn)行AD轉(zhuǎn)換,輸入:要進(jìn)行AD轉(zhuǎn)換的通道號(hào)(tongdao)/ 輸出:AD轉(zhuǎn)換的結(jié)果unsigned int A

47、DC(uchar TongDao)uchar datah;uchar datal,i,k;unsigned int AdResult;datah=0;datal=0 ;if(AD_EOC=1)if(TongDao&0x04)=0x00) k=12;else if(TongDao&0x08)=0x00) k=8; else k=16;ADCBuf0=k;AD_CS=0;AD_CLK=0; /我們用片選來(lái)讀for(i=0;i<k;i+) /輸入k個(gè)時(shí)鐘 if(i<4) /輸出高4位 AD_DIN=(bit)(TongDao&0x80); TongDao<&

48、lt;=1; datah<<=1; datah|=AD_DOUT; else /輸出低8位數(shù)據(jù) AD_DIN=(bit)(TongDao&0x80); TongDao<<=1; datal<<=1; datal|=AD_DOUT; clock_in(); AD_CS=1;AdResult=datah*256+datal;else AdResult=0xF000; return(AdResult);附錄 B:主程序/* /* USB-DATACOMMUNICATION / File Name:mainloop.C / Revision:1.1(2006

49、-05-20) / Author:Wang Xin Jian / Note:/*/#include <stdio.h>#include <string.h>#include <REG51Rx2.H> /* special function register declarations */#include "mainloop.h"#include "INTERRUPT_Server.H"#include "REQUEST_PROCESS.H"#include "AD_Convert.H&qu

50、ot;#include "TEMP_Gather.H"#include "D12_Interface.H"/*/*/ Public static data/*/extern EPPFLAGS bEPPflags;extern unsigned char idata GenEpBuf;extern unsigned char idata EpBuf;extern unsigned int data d12_addr;unsigned char xdata ADCBuf36=0,0,0,0,0,0;unsigned char xdata channelid;

51、unsigned int idata TEMPBufLow = 0;unsigned int idata TEMPBufHig = 0; extern unsigned int data D12_DATA; /D12_DATA輸出的是數(shù)據(jù)extern unsigned int data D12_COMMAND; /D12_COMMAND輸出的是命令unsigned char m = 0x00;/D12中斷服務(wù)usb_isr() interrupt 0 /0,外部中斷;1,定時(shí)器0溢出;2,外部中斷1; /3,定時(shí)器1溢出;4,串口中斷;5,定時(shí)器2溢出DISABLE; /EA為內(nèi)外存儲(chǔ)器選擇控制端fn_usb_isr(); /調(diào)用D12中斷服務(wù)子程序ENABLE;void main(void) byte_count adcdata;byte_count tempdata

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論