微機(jī)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與制作課程設(shè)計(jì)_第1頁(yè)
微機(jī)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與制作課程設(shè)計(jì)_第2頁(yè)
微機(jī)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與制作課程設(shè)計(jì)_第3頁(yè)
微機(jī)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與制作課程設(shè)計(jì)_第4頁(yè)
微機(jī)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與制作課程設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、課程設(shè)計(jì)報(bào)告課程名稱:微機(jī)接口技術(shù)課程設(shè)計(jì)設(shè)計(jì)題目:微機(jī)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與制作系 別:計(jì)算機(jī)科學(xué)與工程系專 業(yè):計(jì)算機(jī)科學(xué)與技術(shù)組 別:15組 長(zhǎng): 汪三明 學(xué) 號(hào): 2003501079起止日期:06年 9 月 5 日 06年 9 月 10日 指導(dǎo)教師:張緒輝教研室主任:張緒輝目 錄第一章 需求分析11.1 本課程設(shè)計(jì)題目11.2 本課程設(shè)計(jì)需求分析11.3 課程設(shè)計(jì)思想1軟硬件開發(fā)環(huán)境2開發(fā)工具2第二章 概要設(shè)計(jì)2實(shí)驗(yàn)平臺(tái)并行接口插座及各功能模塊22.1.1 實(shí)驗(yàn)平臺(tái)并行接口插座22.1.2 可編程并行接口芯片8255A32.2 A/D數(shù)據(jù)采集模塊設(shè)計(jì)52.2.1 要求52.2.2 分析5

2、2.2.3 設(shè)計(jì)6設(shè)計(jì)方法及其原理6第三章 詳細(xì)設(shè)計(jì)7硬件設(shè)計(jì)7軟件設(shè)計(jì)7第四章 調(diào)試與操作說明11硬件連接11軟件調(diào)試11第五章 課程設(shè)計(jì)總結(jié)與體會(huì)11第六章 致謝!12第七章 參考文獻(xiàn)12第一章 需求分析1.1 本課程設(shè)計(jì)題目 微機(jī)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與制作.1.2 本課程設(shè)計(jì)需求分析要求:1單通道采集數(shù)據(jù)并顯示;2多通道循環(huán)采集數(shù)據(jù)并顯示。任務(wù): 1進(jìn)行微機(jī)數(shù)據(jù)采集系統(tǒng)電路硬件設(shè)計(jì),畫出電路原理圖,PCB圖或元器件布線圖;2安裝或焊接元器件;3進(jìn)行數(shù)據(jù)采集系統(tǒng)控制程序設(shè)計(jì)(采用ASM或CPP語(yǔ)言);4 系統(tǒng)聯(lián)調(diào),提交一個(gè)滿足上述二種要求之一的微機(jī)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)。 1.3 課程設(shè)計(jì)思想首先,

3、根據(jù)實(shí)驗(yàn)要求,設(shè)計(jì)A/D數(shù)據(jù)采集電路,然后,按照電路原理,選用一些元器件,在面包板上分別搭建電路模塊。由于實(shí)驗(yàn)中要用到MFID多功能微機(jī)實(shí)驗(yàn)平臺(tái)板上的8255A作接口控制信號(hào),所以要用兩頭帶插針的軟導(dǎo)線,通過26芯電纜的插孔將8255A的輸出信號(hào)接入面包板,這樣,整個(gè)的組成了A/D數(shù)據(jù)采集系統(tǒng)的硬件。其次,編寫A/D數(shù)據(jù)采集系統(tǒng)的控制程序,并進(jìn)行調(diào)試。最后,加入軟件控制程序,對(duì)接口進(jìn)行驅(qū)動(dòng),組成了A/D數(shù)據(jù)采集系統(tǒng)。A/D數(shù)據(jù)采集模塊、平臺(tái)板、微機(jī)組成的數(shù)據(jù)采集系統(tǒng)框圖如圖1.1。(短型電纜)總線驅(qū)動(dòng)板微 機(jī)平臺(tái)板 50芯并 口A/D數(shù)據(jù)采集模塊26芯J5J1圖1.1 A/D數(shù)據(jù)采集系統(tǒng)示圖軟

4、硬件開發(fā)環(huán)境MF2KI軟件采用系統(tǒng)集成技術(shù),把實(shí)驗(yàn)程序的開發(fā)工具,故障診斷程序和外設(shè)模塊演示程序集成在一個(gè)環(huán)境中,構(gòu)成一個(gè)用戶程序集成開發(fā)環(huán)境IDE(Integrated Development Environment)。用戶程序的編輯、編譯、連接、運(yùn)行和修改的全過程都在一個(gè)集成的環(huán)境中完成,大大提高了編程的效率。這個(gè)環(huán)境目前已有4個(gè)版本,每個(gè)版本提供了內(nèi)容豐富的匯編語(yǔ)言和C/C語(yǔ)言開發(fā)軟件包,并以全屏幕窗口環(huán)境的形式供用戶使用。開發(fā)工具實(shí)驗(yàn)程序的開發(fā)工具包括編輯器、編譯系統(tǒng)、連接程序和調(diào)試程序。1:編輯器采用全屏幕多窗口編輯器,復(fù)制,粘貼,裁減十分方便。:2:編譯系統(tǒng) MF2KI軟件包括了C

5、/C語(yǔ)言和匯編語(yǔ)言兩個(gè)編譯系統(tǒng),用戶可根據(jù)自己所熟悉的語(yǔ)言,任選一個(gè)來編寫程序,并在集成環(huán)境中進(jìn)行程序的編譯(匯編)、連接、運(yùn)行與調(diào)試。3:連接程序 采用TLINK。4:調(diào)試程序 采用TDEBUGGER全屏幕調(diào)試程序,直觀全面,使用方便。以上應(yīng)用程序(實(shí)驗(yàn)程序)開發(fā)工具,集成在集成開發(fā)環(huán)境(IDE)中,用戶只需在集成開發(fā)環(huán)境全屏幕窗口中,點(diǎn)擊主菜單的相應(yīng)菜單項(xiàng),即可隨時(shí)啟用。第二章 概要設(shè)計(jì)實(shí)驗(yàn)平臺(tái)并行接口插座及各功能模塊2.1.1 實(shí)驗(yàn)平臺(tái)并行接口插座并行接口插座有26根信號(hào)線,其中24根信號(hào)線是開自8255的三個(gè)端口(A口、B口和C口),輸出有鎖存功能,輸入有緩存功能。可作三個(gè)獨(dú)立的8位傳

6、送,也可作16位傳送,為用戶提供設(shè)計(jì)各種并行設(shè)備控制模塊的并行接口電路。J5還包括了+5V電源線和地線,其信號(hào)線分布如圖2.1所示。2.1.2 可編程并行接口芯片8255A8255A的基本特性8255A是個(gè)具有兩個(gè)8位(A口和B口)和兩個(gè)4位(C口高/低4位)并行I/O端口的接口芯片,它為Intel系列CPU與外部設(shè)備之間提供TTL電平兼容的接口,如打印機(jī)、A/D、D/A轉(zhuǎn)換器、鍵盤、步進(jìn)電機(jī)以及需要同時(shí)兩位以上信息提供傳送的一切形式的并行接口。并且它的PC口還具有按位置位/復(fù)位功能,為按位控制提供了強(qiáng)有力的支持。8255A能適應(yīng)CPU與I/O接口之間的多種數(shù)據(jù)傳送方式的要求。8255A芯片內(nèi)

7、部主要由控制寄存器、狀態(tài)寄存器和數(shù)據(jù)寄存器組成。2.1.2.2 8255A的外部引線8255A是一個(gè)單+5V電源引腳,40個(gè)引腳的雙列直插式組件,其外部引線如圖2.2所示: 它作為接口電路的8255A具有面向CPU和面向外設(shè)兩個(gè)方向的連接能力。因此,它的引腳分成兩部分。圖 2.1 26腳并行輸入輸出接口圖圖2.2 8225A外部引腳圖系統(tǒng)總線的連接信號(hào)面向數(shù)據(jù)總線的有:D0D7:雙向數(shù)據(jù)線,用于CPU向8255A發(fā)送命令、數(shù)據(jù)和8255A向CPU回送狀態(tài)、數(shù)據(jù)。面向地址總線的有:CS:選片信號(hào),低電平有效,由系統(tǒng)的高位地址線經(jīng)I/O端口地址譯碼電路產(chǎn)生。CS為低電平時(shí),才能對(duì)8255A進(jìn)行讀寫

8、操作。當(dāng)CS為高電平時(shí),切斷CPU與芯片的聯(lián)系。A1,A0:芯片內(nèi)部端口地址信號(hào),與系統(tǒng)地址總線低位相連用來尋址8255A內(nèi)部寄存器。兩位地址,可形成片內(nèi)4個(gè)端口地址。面向控制總線的有:RD:讀信號(hào),低電平有效。CPU通過執(zhí)行IN命令使RD有效,即發(fā)讀信號(hào)將數(shù)據(jù)或狀態(tài)信號(hào)從8255A讀至CPU。WR:寫信號(hào),低電平有效。CPU通過執(zhí)行OUT命令使 WR有效,即發(fā)寫信號(hào),將命令代碼或數(shù)據(jù)寫入8255A。RESET:復(fù)位信號(hào)。它清除控制寄存器并將8255A的A、B、C三個(gè)端口均置為輸入方式;輸出寄存器和狀態(tài)寄存器被復(fù)位,并且屏蔽中斷請(qǐng)求;24條面向外設(shè)的信號(hào)線呈現(xiàn)高阻懸浮狀態(tài)。這種勢(shì)態(tài)一直持續(xù)到用

9、方式命令才能改變,使其進(jìn)入用戶所需的工作方式。外部設(shè)備的連接信號(hào)PA0PA7:端口A的輸入/輸出線。PB0PB7:端口B的輸入/輸出線。PC0PC7:端口C的輸入/輸出線。這24根信號(hào)線均可用來連接I/O設(shè)備和傳送信息。其中,A口和B口只作為輸入/輸出的數(shù)據(jù)口用,盡管有時(shí)也利用它們從I/O設(shè)備讀取一些狀態(tài)信息,如打印機(jī)的“忙(Busy)”狀態(tài)信號(hào)、A/D轉(zhuǎn)換器的“結(jié)束信號(hào)(EOC)”狀態(tài)信號(hào),但對(duì)于A口和B口來說,都是作8255A的數(shù)據(jù)口讀入,而不是作8255A的狀態(tài)口讀入的。A口和B口作數(shù)據(jù)輸入/輸出時(shí),是8位一起行動(dòng)的,即使是只用到其中的某一位,也要同時(shí)輸入輸入/輸出8位。C口除了作數(shù)據(jù)口

10、以外,還可以作狀態(tài)口、作專用(固定)聯(lián)絡(luò)(握手)信號(hào)線和作按位控制用。這些作用與8255A的工作方式有關(guān)。C口作數(shù)據(jù)口時(shí),它是把8位分成高4位和低4位兩部分,高4位PC4PC7與A口一起組成A組,低4位PC0PC3與B口一起組成B組。因此,C口作數(shù)據(jù)口輸入輸出時(shí),是4位一起行動(dòng),即使只用到其中的某1位,也要4位一起輸入或輸出。2.1.2.3 8255A的編程命令8255A的編程命令包括工作方式和對(duì)PC口的按位操作命令。由于這兩個(gè)命令都是送到8255A的同一個(gè)命令端口,故為了讓8255A能識(shí)別是哪個(gè)命令,采用在命令代碼中設(shè)置特征位的方法。若寫入的命令字的最高位D71,則是工作方式命令;若寫入的命

11、令字D70,則是PC口的按位置位/復(fù)位命令。這兩個(gè)命令字的作用及格式為:1. 方式命令作用:指定8255A的工作方式及其方式下3個(gè)并行端口(PA、PB、PC)的功能,是作輸入還是作輸出。格式:8位,其中最高位是特征位,一定要寫1,其余各位的定義如下,應(yīng)用戶的設(shè)計(jì)要求填寫1或0。從方式命令的格式可知,A組有3種方式(0方式、1方式、2方式),而B組只有2種工作方式(0方式、1方式)。端口PC分成2部分,上半部屬A組,下半部屬B組。所有3個(gè)并行端口,置1指定為輸入,置0指定為輸出。利用工作方式命令的不同代碼組合,可以分別選擇A組和B組的工作方式和各端口是輸入還是輸出。2置位/復(fù)位命令作用:指定PC

12、口的某一位(某一個(gè)引腳)輸出高電平或低電平。格式:8位,其中最高位是特征位,一定要寫0,其余各位的定義如下,應(yīng)根據(jù)用戶的設(shè)計(jì)要求填寫1或0。利用按位置位/復(fù)位命令可以使PC口的8根線中的任意1根置成高電平 輸出或低電平輸出。2.2 A/D數(shù)據(jù)采集模塊設(shè)計(jì)2.2.1 要求以PC機(jī)為控制器,采用查詢方式進(jìn)行8通道數(shù)據(jù)采集,采集的數(shù)據(jù)在屏幕上顯示。為此,采用 ADC0809作A/D轉(zhuǎn)換器. 2.2.2 分析要實(shí)現(xiàn)上述設(shè)計(jì)要求,至少需要考慮:被控對(duì)象ADC0809的特性、接口電路結(jié)構(gòu)形式。ADC0809的外部特性:,從圖中可以看出 ,圖2.3 ADC0809外部引腳圖ADC0809有八個(gè)模擬量輸入端(

13、IN0IN7),相應(yīng)設(shè)置3根模擬量通道地址線(ADDAADDC),用以編碼來選擇8個(gè)模擬量輸入通道。并且還設(shè)置1根地址鎖存允許信號(hào)ALE,高電平有效。當(dāng)ALE變高,鎖存由ADDAADDC編碼所選中的通道號(hào),將該通道的模擬量接入A/D轉(zhuǎn)換器。 ADC0809的分辨率為8位,有8根數(shù)字量輸出線(D0D7),帶有三態(tài)輸出鎖存器。并設(shè)置了1根輸出允許信號(hào)OE,高電平有效。當(dāng)讀數(shù)據(jù)時(shí),要使OE置高,打開三態(tài)輸出鎖存器,把轉(zhuǎn)換的數(shù)字量送到數(shù)據(jù)線上。ADC0809的轉(zhuǎn)換啟動(dòng)信號(hào)是START,高電平有效。轉(zhuǎn)換結(jié)束信號(hào)EOC,轉(zhuǎn)換過程中為低電平,轉(zhuǎn)換完畢變?yōu)楦唠娖剑衫肊OC的上升沿申請(qǐng)中斷,或作查詢之用。2

14、.2.3 設(shè)計(jì)1A/D數(shù)據(jù)采集模塊電路本外設(shè)模塊采用8855A作為接口電路,其中,PA0PA7接數(shù)據(jù)線,其低三位與通道地址線ADDAADDC相連,即將通道號(hào)寫入A口。另外,轉(zhuǎn)換后的數(shù)據(jù)從A口讀入CPU。PC0,PC1分別連接START和ALE信號(hào),高電平有效,表示啟動(dòng)轉(zhuǎn)換。PC2連接輸出允許信號(hào)OE。當(dāng)查詢方式時(shí),PC4連接EOC信號(hào),轉(zhuǎn)換過程中,PC4為0,當(dāng)轉(zhuǎn)換完畢時(shí),PC4為1。通過ADC0809數(shù)模轉(zhuǎn)換器將由電位器轉(zhuǎn)動(dòng)所產(chǎn)生的模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),然后通過 8255A并行接口送入內(nèi)存并顯示在窗口中. 第三章 詳細(xì)設(shè)計(jì)數(shù)據(jù)采集系統(tǒng)原理圖如圖示3.1 我負(fù)責(zé)連接電路圖是這樣的:首先根據(jù)A

15、DC0809的圖示說明,將8255A與ADC0809間的對(duì)應(yīng)引腳連接好,然后將8255A和ADC0809的VCC 和GND分別接到+5V和接地上.接著把一根導(dǎo)線用于接+12V電壓,從相同電壓引腳連出一根導(dǎo)線到降壓電阻上,從降壓電阻分三根導(dǎo)線,分別與電容C4,三極管中央(字體面向自己從左數(shù)第二腳),ADC0809處REF+處,并將REF-接地.同時(shí)將三極管第三腳接地,第一腳接電容C3.最后從ADC0809 CLK處連出一根導(dǎo)線準(zhǔn)備接平臺(tái)板上TP3處CLK.我設(shè)計(jì)的程序思路是這樣的:根據(jù)ADC0809時(shí)序圖,先啟動(dòng)地址鎖存允許信號(hào)ALE為高電平(即PC1=1),鎖存通道號(hào),并將通道的模擬

16、量接入A/D轉(zhuǎn)換器。然后啟動(dòng)轉(zhuǎn)換啟動(dòng)信號(hào)START為高電平(即PC0=1).經(jīng)過一段時(shí)間延時(shí)后,使ALE為低電平(即PC1=0)并置輸出允許信號(hào)OE為低電平。在轉(zhuǎn)換結(jié)束信號(hào)EOC為低電平時(shí),A/D轉(zhuǎn)換器將模擬量轉(zhuǎn)換為數(shù)據(jù)。當(dāng)EOC=1時(shí),轉(zhuǎn)換結(jié)束,此時(shí)使OE為高電平,打開三態(tài)輸出鎖存器,把轉(zhuǎn)換的數(shù)字量送到數(shù)據(jù)線上,并從A口讀入。Caex.cpp:#include<dos.h> #include<stdio.h>#include<conio.h>int choose_channel();void main(void)int ch,pa,pc4;clrscr()

17、;/清屏函數(shù);printf("Please input the a/d channel NO(0-7):");ch=choose_channel(); /調(diào)用函數(shù);printf("During the process, press any key to exit!n");do outportb(0x303,0x88); /是向指定端口寫一個(gè)字節(jié);outportb(0x300,0x0); /A口清零; outportb(0x300,ch); /向A口送通道號(hào); outportb(0x303,0x01); /pc0=1;轉(zhuǎn)換啟動(dòng)信號(hào)有效; outportb(

18、0x303,0x03); /pc1=1;地址鎖存信號(hào)有效;鎖存通道號(hào); delay(100);outportb(0x303,0x02); /pc1=0;地址鎖存信號(hào)無效;outportb(0x303,0x98); /8255A再次初始化;C口高4位輸入,低4位輸出; outportb(0x303,0x04); /pc2=0;輸出允許信號(hào)無效; do pc4=inportb(0x302)&0x10; /從指定端口讀一個(gè)字節(jié); while(pc4=0); outportb(0x303,0x05); /pc2=1; pa=inportb(0x300); /A口讀數(shù)據(jù); printf(&quo

19、t;0x%x ",pa);delay(100); while(!kbhit();/函數(shù)名: kbhit檢查當(dāng)前按下的鍵;int choose_channel()int c;doc=getchar();c=c-48;if(c<0|c>7) printf("nThe ad channel NO is wrong! nBe sure it is between 0 and 7!nPlease input the NO again!:");else break;while(1);return(c);設(shè)計(jì)計(jì)算結(jié)果:預(yù)設(shè)通道號(hào)為3,計(jì)算結(jié)果為:00FF開始提示輸入

20、通道初始化8255A口寫入寫8255命令字。A口讀,C口低四位寫,高四位讀查PC4狀態(tài)=1?是否按鍵結(jié)束圖示3.3 A/D數(shù)據(jù)查詢方式流程圖獲取通道號(hào)A口清0將通道號(hào)送入A口寫PC0為1寫PC1為1寫PC1為0寫PC2為0寫PC2為1讀A口內(nèi)容輸出A口內(nèi)容YNYN第四章 調(diào)試與操作說明將面包板上的一根導(dǎo)線接在實(shí)驗(yàn)平臺(tái)+12伏的電源上,然后將ADC0809轉(zhuǎn)換器上CLK引腳的一根導(dǎo)線接在實(shí)驗(yàn)平臺(tái)TP3上的CLK處。最后用26腳的電纜連接平臺(tái)板和面包板.在MF2KI中打開程序Caex.cpp,進(jìn)行編譯及運(yùn)行,在DOS窗口中顯示調(diào)試結(jié)果。通過輸入預(yù)設(shè)通道號(hào)3顯示采集的數(shù)據(jù),然后轉(zhuǎn)動(dòng)電位器,在屏幕上顯

21、示采集到的數(shù)據(jù)在變化,當(dāng)最大時(shí)結(jié)果為FF,最小時(shí)結(jié)果為00。當(dāng)與程序計(jì)算結(jié)果吻合時(shí),調(diào)試成功。第五章 課程設(shè)計(jì)總結(jié)與體會(huì)通過該課程設(shè)計(jì),初步了解了做一個(gè)課程設(shè)計(jì)的一般過程.應(yīng)該說,使我初步掌握了一種解決問題的方法.在設(shè)計(jì)開始,我很茫然,雖然有指導(dǎo)手冊(cè),但是卻不敢去做.因?yàn)槲覍?duì)電路圖看不懂,對(duì)面包板不知如何去接線,在我面前是完全陌生的.隨后看到同學(xué)收集資料,我也跟著去做,事實(shí)上這些資料在以后當(dāng)中根本就沒有使用到.5號(hào)一天實(shí)際上沒有做什么有效的事情. 6號(hào)學(xué)習(xí)軟件,在摸索中又度過了一天.在浪費(fèi)2天后,我才逐漸把思路理清,將小組分好工,確定好設(shè)計(jì)思路.7號(hào)我才真正開始搞設(shè)計(jì).隨之而來的是對(duì)原理圖的探索,對(duì)搭建電路的摸索.這個(gè)過程在設(shè)計(jì)中是最煩瑣的,向同學(xué)請(qǐng)教面包板的問題,看書找原理.最終搭好硬件,在調(diào)試卻出了問題.那時(shí)心情非常煩躁,仔細(xì)檢查接線,重新了解元器件的功能,終于發(fā)現(xiàn)了是三極管接錯(cuò)了.當(dāng)硬件連接成功后,那種成就感讓我感到自豪.通過搭硬件,讓我明白,做事前先要了

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論