光光照強(qiáng)度測(cè)量?jī)x_第1頁(yè)
光光照強(qiáng)度測(cè)量?jī)x_第2頁(yè)
光光照強(qiáng)度測(cè)量?jī)x_第3頁(yè)
光光照強(qiáng)度測(cè)量?jī)x_第4頁(yè)
光光照強(qiáng)度測(cè)量?jī)x_第5頁(yè)
已閱讀5頁(yè),還剩8頁(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、光光照強(qiáng)度測(cè)量?jī)x 合肥學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)系 微型計(jì)算機(jī)原理與接 口技術(shù)課程設(shè)計(jì)報(bào)告 2009,2010學(xué)年第一學(xué)期 課程微型計(jì)算機(jī)原理與接口技術(shù) 課程設(shè)計(jì)名稱光照強(qiáng)度測(cè)量?jī)x 學(xué)生姓名陳冠 0704032046 學(xué)號(hào) 專業(yè)班級(jí)07級(jí)網(wǎng)絡(luò)工程(2)班 指導(dǎo)教師龍夏、何力新 2010年3月 1.題義分析及解決方案 設(shè)計(jì)一個(gè)簡(jiǎn)易的光照強(qiáng)度測(cè)量?jī)x,由光照強(qiáng)度產(chǎn)生的模擬電壓信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),然 后轉(zhuǎn)換為照度(單位是勒克斯)顯示在LED上 ; b5E2RGbCAP 校準(zhǔn)照度測(cè)量器:在一定的光強(qiáng)度下,產(chǎn)生200數(shù)字量的電壓,以此對(duì)應(yīng)關(guān)系(照度一電 壓)將其它光強(qiáng)度轉(zhuǎn)換為勒克斯值,顯示在LED上。1.1題義

2、需求分析p1EanqFDPw 光照強(qiáng)度測(cè)量?jī)x主要根據(jù)光敏電阻的特性制作的。光敏電阻值隨受到的光照強(qiáng)度的變化 而變化(光照強(qiáng)度越大,電阻值越小)。將光敏電阻接入電路中,不同光照強(qiáng)度導(dǎo)致光敏電阻 值變化,于是光敏電阻上的電壓發(fā)生變化,導(dǎo)致電路的輸出電壓也相應(yīng)變化。根據(jù)電壓-光照 度函數(shù)關(guān)系,由電壓計(jì)算得到光照強(qiáng)度值,然后以可視化界面形式輸出(即PC機(jī)和LED數(shù)碼管 顯示),以供用戶查看結(jié)果。DXDiTa9E3d 其中光敏電阻的特性是光敏電阻隨受到的光照強(qiáng)度的變化電阻值發(fā)生變化,光照強(qiáng)度越 強(qiáng)電阻越小,在分壓電路中獲得電壓越低。根據(jù)這一特性,結(jié)合光照強(qiáng)度和輸出的模擬電壓 之間的關(guān)系,可以得到某一光強(qiáng)

3、度下的對(duì)應(yīng)的模擬電壓。將模擬電壓通過(guò)AD轉(zhuǎn)化器轉(zhuǎn)換為數(shù) 字電壓,以便于計(jì)算機(jī)處理。然后再將數(shù)字電壓轉(zhuǎn)換成光照度。RTCrpUDGiT 1.2.解決問(wèn)題方法及思路 1.2.1硬件部分 程序設(shè)計(jì)中用到的硬件是光敏電阻、ADC0809 8255A和七段LED數(shù)碼管。提出問(wèn)題: (1)為什么接口使用8255A而不是8279? (2)為什么顯示裝置使用LED七段數(shù)碼管而不是LCD? (3)為什么選用光敏電阻? 解決問(wèn)題: 1.2.1.1接口芯片選用8255A而不是8279是由于8255A在本程序中使用軟件控制很容易 實(shí)現(xiàn)且不需要用到小鍵盤(pán),具體如表1 1所示。5P CZVD7HXA 8255A發(fā)出的控制

4、字和 dvzfvkwMI1 RESET用來(lái)使8255A復(fù) 8 位內(nèi)部和外部數(shù)據(jù)總線 器件名稱 特 點(diǎn) 8255A芯片8255芯片是可編程的并行接口芯片,不需要附加外部電路便可 和大多數(shù)并行傳輸數(shù)據(jù)的外部設(shè)備相連,數(shù)據(jù)的各位同時(shí)傳送, 使用十分方便。 8279A芯片8279芯片可以實(shí)現(xiàn)對(duì)鍵盤(pán)/顯示器的自動(dòng)掃描,以減輕 CPU負(fù)擔(dān), 具有顯示穩(wěn)定,程序簡(jiǎn)單,不會(huì)出現(xiàn)誤動(dòng)作等。 表1 1 8255A 與8279A性能比較表 121.2 本實(shí)驗(yàn)選擇的顯示設(shè)備是七段 LED數(shù)碼管,沒(méi)有選擇LCD的原因如表12 所示。 與LCD相比,LED在亮度,功耗可視角度和刷新速率等方面更具有優(yōu)勢(shì),LED其最顯著的

5、特點(diǎn)是使用壽命長(zhǎng)光電轉(zhuǎn)換效能高,綠色環(huán)保。 jLBHrnAILg LCD占用空間小,功耗低,低輻射,能降低視覺(jué)疲勞,但會(huì)出現(xiàn)閃爍 LCD現(xiàn)象。 表1 2 LCD與LED性能比較表 1.2.1.3本實(shí)驗(yàn)選用的是光敏電阻,因?yàn)楣饷綦娮枭系墓庹諒?qiáng)度與輸出電壓成線 性關(guān)系,得到的模擬電壓也成線性關(guān)系。 1.2.2 軟件部分 根據(jù)硬件需求采用8255A芯片,采用匯編語(yǔ)言,8255A芯片的PA PB PC三口的工作方 式為方式0,將8255的PA口接發(fā)光二極管,PB口作為段選碼,PC口作位選碼,用軟件編程 實(shí)現(xiàn)從C 口讀入信息,通過(guò)8個(gè)LED數(shù)碼管循環(huán)顯示光照強(qiáng)度。XHAQX74J0X 2. 硬件設(shè)計(jì) 2

6、.1. 選擇芯片 8255A 2.1.1芯片8255A在本設(shè)計(jì)中的作用 芯片8255A通過(guò)數(shù)據(jù)口從CPL接受轉(zhuǎn)換得到的光照度數(shù)據(jù),通過(guò) B口輸出作為位選,實(shí)現(xiàn) LED數(shù)碼管的動(dòng)態(tài)顯示,通過(guò) A 口將數(shù)值輸出到LED數(shù)碼管。LDAYtRyKfE 2.1.2芯片8255A的功能分析 2.1.2.18255 引腳圖 8255是可編程并行接口,內(nèi)部有3個(gè)相互獨(dú)立的8位數(shù)據(jù)端口,即A 口、B 口和C 口。三 個(gè)端口都可以作為輸入端口或輸出端口。A 口有三種工作方式:即方式0、方式1和方式2,而 B 口只能工作在方式0或方式1下,而C 口通常作為聯(lián)絡(luò)信號(hào)使用。8255的工作只有當(dāng)片選 CS有效時(shí)才能進(jìn)行,

7、而控制邏輯端口實(shí)現(xiàn)對(duì)其他端口的控制。Zzz6ZB2Ltk 2.1.2.2CPU 接口 (數(shù)據(jù)總線緩沖器和讀 / 寫(xiě)控制邏輯 ) 數(shù)據(jù)總線緩沖器 : 這是一個(gè)8位雙向三態(tài)緩沖器,三態(tài)是由讀/寫(xiě)控制邏輯控制的。這個(gè) 緩沖器是 8255A與 CPU數(shù)據(jù)總線的接口。所有數(shù)據(jù)的輸入/輸出,以及CPU用輸出指令向 用輸入指令從8255A讀入的外設(shè)狀態(tài)信息,都是通過(guò)這個(gè)緩沖器傳遞的。 讀/寫(xiě)控制邏輯: 它與CPU勺6根控制線相連,控制8255A內(nèi)部的各種操作。控制線 位。和地址線A1及A0用于芯片選擇和通道尋址??刂凭€和用來(lái)決定 上信息傳送的方向,即控制把 CPIU勺控制命令或輸出的數(shù)據(jù)送到相應(yīng)的通道,或把

8、狀態(tài)信息 或輸入數(shù)據(jù)送到CPU 8255A的讀/寫(xiě)控制邏輯的作用,是從CPU勺地址和控制總線上接受輸入 的信號(hào),轉(zhuǎn)變成各種命令送到 A組或B組控制電路進(jìn)行相應(yīng)的操作。rqyn14ZNXI 2.1.2.38255A 的引腳信號(hào) 與外設(shè)相連的 P A7 PAO:A口數(shù)據(jù)信號(hào)線。 P B7 PBO:B 口數(shù)據(jù)信號(hào)線。 P C7 PCO:m數(shù)據(jù)信號(hào)線。 與CPU相連的 RESET復(fù)位信號(hào)。當(dāng)此信號(hào)來(lái)時(shí),所有寄存器都被清除。同時(shí)三個(gè)數(shù)據(jù)端口被自動(dòng)置為 輸入端口。 D7D0它們是8255A的數(shù)據(jù)線和系統(tǒng)總線相連。 CS:片選信號(hào)。在系統(tǒng)中,一般根據(jù)全部接口芯片來(lái)分配若于低位地址(比如A5、A4 A3) 組

9、成各種芯片選擇碼,當(dāng)這幾位地址組成某一個(gè)低電平,于8255A被選中。只有當(dāng)有效時(shí), 讀信號(hào)寫(xiě)才對(duì) 8255進(jìn)行讀寫(xiě)。 EmxvxOtOco RD讀信號(hào)。當(dāng)此信號(hào)有效時(shí),CPU可從8255A中讀取數(shù)據(jù)。 WR寫(xiě)信號(hào)。當(dāng)此信號(hào)有效時(shí),CPU可向8255A中寫(xiě)入數(shù)據(jù)。 A1、A0:端口選擇信號(hào)。8255A內(nèi)部有3個(gè)數(shù)據(jù)端口和1個(gè)控制端口,共4個(gè)端口。規(guī)定 當(dāng)A1、A0:為00時(shí),選中A端口 ;為01時(shí),選中B端口 ;為10時(shí),選中C端口 ;為11時(shí),選 中控制口。 SixE2yXPq5 8255 的基本操作如下表 2-1 所示。 表 21 8255 的基本操作 2.1.2.4芯片8255A的技術(shù)參數(shù)

10、,如下表22所示: 參數(shù)說(shuō)明 : 輸入最低電壓 :min,-0.5V , max,0.8 V 輸入最高電壓 :2.0 V 輸出最低電壓 :0.45 V 輸出最高電壓 :2.4 V 表2 2 8255A的技術(shù)參數(shù) 2.1.2.5 8255A 工作方式控制字 A 口、B 口為輸出模式,工作于方式 0。CPU中的數(shù)據(jù)經(jīng)由數(shù)據(jù)線路到達(dá) 8255A再由A 口、B 口分別段選、位選后輸出到 LED詳細(xì)控制字見(jiàn)表2 3。6ewMyirQFL 表2 3 8255A的工作方式控制字 方式 0的工作特點(diǎn) 這種方式通常不用聯(lián)絡(luò)信號(hào),不使用中斷,三個(gè)通道中的每一個(gè)都有可以由程序選定作 為輸入或輸出。其功能為 : ?兩

11、個(gè)8位通道:通道A B。兩個(gè)四位通道:通道C高4位和低四位;?任何一個(gè)通道可以 作輸入/輸出; 示。 ?輸出是鎖存的 ; ?輸入是不鎖存的 ; ?在方式 0 時(shí)各個(gè)通道的輸入 / 輸出可有 2.2選擇LED七段數(shù)碼管 2.2.1LED 七段數(shù)碼管在實(shí)驗(yàn)中的作用 LED發(fā)光二級(jí)管(Light-Emitting Diode) kavU42VRUs 物理構(gòu)造:LED發(fā)光二級(jí)管,采用砷化傢、 16種不同的組合。 ,在本設(shè)計(jì)中采用 7 段發(fā)光二級(jí)管作為終端顯 鎵鋁砷和磷化鎵等材料制成,其內(nèi)部結(jié)構(gòu)為一 個(gè)PN結(jié),具有單向?qū)щ娦?。y6v3ALoS89 2.2.2LED 七段數(shù)碼管的功能分析 工作原理:當(dāng)在發(fā)

12、光二極管PN結(jié)上加正向電壓時(shí),PN結(jié)勢(shì)壘降低,載流子的擴(kuò)散運(yùn)動(dòng)大 于漂移運(yùn)動(dòng),致使P區(qū)的空穴注入到N區(qū),N區(qū)的電子注入到P區(qū),這樣相互注入的空穴與電 子相遇后會(huì)產(chǎn)生復(fù)合,復(fù)合時(shí)產(chǎn)生的能量大部分以光的形式出現(xiàn)。 M2ub6vSTnP 數(shù)字成像:七段LED顯示器可以控制在哪幾個(gè)數(shù)位上,哪幾個(gè)發(fā)光二極管亮,從而顯示數(shù) 字。如果發(fā)光二極管共陽(yáng)極,則輸入為 0時(shí)亮,為 1 時(shí)不亮,反之如果發(fā)光共陰極,則輸入 1 時(shí)亮, 0 時(shí)不亮。 0YujCfmUCw 在本實(shí)驗(yàn)中選用了共陰極。所謂共陰極是指將各LED二極管的陰極連接在一起(一般相連 接地)各陽(yáng)極接到相應(yīng)器件引腳上。發(fā)光二極管是一種外加電壓超過(guò)額定電壓

13、時(shí)發(fā)生擊穿,并 因此能產(chǎn)生可發(fā)光的器件,數(shù)碼顯示器通常由多個(gè)發(fā)光二極管來(lái)組成七段或八段筆畫(huà)顯示 器,當(dāng)段組合發(fā)光時(shí),便會(huì)顯示某一個(gè)數(shù)碼管或字符,七段代碼的各位用作ag和DP的輸 入。CO麗8個(gè)發(fā)光二極管的公共引線,實(shí)驗(yàn)中 COMI線接內(nèi)部8個(gè)二極管的陰極, abcdefg(dp) 則為 8個(gè)發(fā)光二極管的陽(yáng)極的引線。 eUts8ZQVRd 實(shí)驗(yàn)中LED管采用動(dòng)態(tài)顯示:3個(gè)LED顯示器按固定的時(shí)間間隔顯示一段時(shí)間(1.25ms), 利用人眼視覺(jué)滯后,感覺(jué)3個(gè)LED顯示器同時(shí)點(diǎn)亮且無(wú)閃爍感。2.2.3 LED七段數(shù)碼管的技 術(shù)參數(shù) sQsAEJkW5T 表 24 LED 顯示的技術(shù)參數(shù) 主要參數(shù) :

14、 此時(shí)的驅(qū)動(dòng)電流為 25mA。 發(fā)光二極管的壓降一般為1.52.0 V,其工作電流一般取1020mA為宜。發(fā)光二極管的 發(fā)光顏色有 : 紅色光、黃色光、綠色光、紅外光等。 發(fā)光二極管應(yīng)用電路有四種,即直流驅(qū) 動(dòng)電路、交流驅(qū)動(dòng)電路、脈沖驅(qū)動(dòng)電路、變色發(fā)光驅(qū)動(dòng)電路。 GMsIasNXkA 由于8255A的最大驅(qū)動(dòng)電流為4.0mA,而LED的工作電流一般為1020mA所以需要加一 個(gè)驅(qū)動(dòng)器 74LS244。 TIrRGchYzg 2.2.4LED 七段顯示器的功能分析 表 2 5 LED 真值表 LED數(shù)字顯示原理: 如下圖26為L(zhǎng)ED數(shù)碼管及其框圖 圖 26 LED 顯示器 光敏電阻 上面兩圖分別

15、為外形圖和原理圖,當(dāng)七段數(shù)碼管點(diǎn)亮其中幾段可顯示數(shù)字和簡(jiǎn)單的西文 字符,將七段數(shù)碼管負(fù)極連接到一起稱為公共端,而發(fā)光二極管的正極則分別由引腳引出, 便于控制哪個(gè)發(fā)光二極管點(diǎn)亮,在右圖中如果在COM端接低電平,而在其他引出線上施加不 同的電平,則對(duì)高電平的發(fā)光二極管就會(huì)點(diǎn)亮,由于將 8 個(gè)發(fā)光二極管負(fù)極全部連接在一 起,稱為共陰極數(shù)碼管,還有將 8 個(gè)發(fā)光二極管的正極連接在一起,故稱之為共陽(yáng)極數(shù)碼 管。 7EqZcWLZNX 本次實(shí)驗(yàn)用的數(shù)碼管需動(dòng)態(tài)掃描顯示,其接口電路將所有數(shù)碼管的筆畫(huà)控制段與ah同 名端連在一起,接到一個(gè)并行端口,每個(gè)公共極COM端由獨(dú)立的I/O線控制,CPU向字模輸出 口送

16、出字形碼時(shí),所有數(shù)碼管接收到相同的字形碼,究竟哪個(gè)數(shù)碼管顯示,取決于每個(gè) LED 的COM端,所謂動(dòng)態(tài)掃描,就是顯示一位信息時(shí),其他位不能顯示,必須采用分時(shí)方法,輪 流控制 COM。lzq7IGfO2E 2.3 選擇光敏電阻 2.3.1光敏電阻在本設(shè)計(jì)中的作用 光敏電阻在實(shí)驗(yàn)中是用來(lái)提供模擬電壓的,通過(guò)光照度的變化改變電阻值,提供變化的 模擬電壓。 2.3.2光敏電阻的功能分析 物理構(gòu)造 : 光敏電阻又稱光導(dǎo)管,它幾乎都是用半導(dǎo)體材料制成的光電器件。 沒(méi)有極性,純粹是一個(gè)電阻器件,使用時(shí)既可加直流電壓,也可以加交流電壓。無(wú)光照時(shí), 光敏電阻值 (暗電阻)很大,電路中電流 (暗電流)很小。zvp

17、geqJ1hk 當(dāng)光敏電阻受到一定波長(zhǎng)范圍的光照時(shí),它的阻值 (亮電阻)急劇減少,電路中電流迅速 增大。 一般希望暗電阻越大越好,亮電阻越小越好,此時(shí)光敏電阻的靈敏度高。實(shí)際光敏電 阻的暗電阻值一般在兆歐級(jí),亮電阻在幾千歐以下。 光敏電阻的原理結(jié)構(gòu) : 它是涂于玻璃底 板上的一薄層半導(dǎo)體物質(zhì),半導(dǎo)體的兩端裝有金屬電極,金屬電極與引出線端相連接,光敏 電阻就通過(guò)引出線端接入電路。 為了防止周?chē)橘|(zhì)的影響,在半導(dǎo)體光敏層上覆蓋了一層漆 膜,漆膜的成分應(yīng)使它在光敏層最敏感的波長(zhǎng)范圍內(nèi)透射率最大。 NrpoJac3v1 工作原理 : 光敏電阻接有一個(gè)穩(wěn)定電壓,當(dāng)光照度變化時(shí),光敏電阻的阻值會(huì)改變,通過(guò)

18、 比例放大器輸出電阻的壓降。 1nowfTG4KI 2.3.3光敏電阻的技術(shù)參數(shù) 亮阻約為2K歐,暗阻大于1M歐,外觀直徑5毫米,最咼承受電壓直流120V,最大功耗 lOOmW/t升響應(yīng)時(shí)間20ms,下降響應(yīng)時(shí)間30ms。實(shí)驗(yàn)中光敏電阻電路輸出的電壓范圍為 0-5V。 fjnFLDa5Zo 光敏電阻電路圖如下 : 2.4選擇芯片 ADC0809 2.4.1ADC0809 在本設(shè)計(jì)中的作用 ADC0809接收光敏電阻電路傳送的模擬電壓,將模擬電壓轉(zhuǎn)換為數(shù)字電壓,傳送給CPUS 行數(shù)據(jù)轉(zhuǎn)換,CPU將數(shù)字電壓通過(guò)電壓與光照度的比例關(guān)系轉(zhuǎn)換為光照度。tfnNhnE6e5 2.4.2ADC0809 的功

19、能分析 。ORjBnOwcEd 物理構(gòu)造:ADC0809是 CMO單片型逐次逼近式A,D轉(zhuǎn)換器,內(nèi)部結(jié)構(gòu)由8路模擬開(kāi)關(guān)、地 址鎖存與譯碼器、比較器、8位開(kāi)關(guān)樹(shù)型D,A轉(zhuǎn)換器、逐次逼近數(shù)碼寄存器、時(shí)序及控制邏輯 和三態(tài)輸出鎖存器組成。 HbmVN777sL 工作原理:首先輸入3位地址,并使ALE=1將地址存入地址鎖存器中。此 地址經(jīng)譯碼選通8路模擬輸入之一到比較器。START!升沿將逐次逼近寄存器復(fù)位。下降 沿啟動(dòng)A/D轉(zhuǎn)換,之后EOC俞出信號(hào)變低,指示轉(zhuǎn)換正在進(jìn)行。直到A/D轉(zhuǎn)換完成,EOC變?yōu)?高電平,指示A/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個(gè)信號(hào)可用作中斷申請(qǐng)。當(dāng)OE輸入 高電平 時(shí),

20、輸出三態(tài)門(mén)打開(kāi),轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。 V7l4jRB8Hs 2.4.3ADC0809 的技術(shù)參數(shù) ADC0809是 8路8位A/D轉(zhuǎn)換器,即分辨率8位。具有轉(zhuǎn)換起??刂贫?。轉(zhuǎn)換時(shí)間為 100卩s單個(gè),5V電源供電 模擬輸入電壓范圍0,,5V,不需零點(diǎn)和滿刻度校準(zhǔn)。工作溫度范 圍為- 40, , 85攝氏度低功耗,約 15mW。 2.4.4 ADC0809 主要信號(hào)引腳的功能說(shuō)明。見(jiàn)圖 2 7。 83lcPA59W9 圖 27 引腳圖 ADC0809芯片有28條引腳,采用雙列直插式封裝,如圖所示。下面說(shuō)明各引腳功 能。 IN7,IN0 8 路模擬量輸入端。 D7,D0 8 位數(shù)字量

21、輸出端。 ADDA、ADDB、ADDC 3位地址輸入線,用于選通 8 路模擬輸入中的一路 ALE地址鎖存允許信號(hào),輸入,高電平有效。對(duì)應(yīng)ALE上跳沿,A B C地址狀態(tài)送 入地址鎖存器中。 STAR轉(zhuǎn)換啟動(dòng)信號(hào)。A/D轉(zhuǎn)換啟動(dòng)脈沖輸入端,輸入一個(gè)正脈沖(至少100ns寬) 使其啟動(dòng)。START上升沿時(shí),復(fù)位ADC0809;STAR下降沿時(shí)啟動(dòng)芯片,開(kāi)始進(jìn)行 A/D轉(zhuǎn)換;在 A/D轉(zhuǎn)換期間,START應(yīng)保持低電平。 mZkklkzaaP EOC A/D轉(zhuǎn)換結(jié)束信號(hào),輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),此端輸出一個(gè)高電平(轉(zhuǎn)換期間一 直為低電平 ) 。 OE數(shù)據(jù)輸出允許信號(hào),輸入,高電平有效(OE=O,輸出

22、數(shù)據(jù)線呈高阻;OE=1,輸出轉(zhuǎn) 換得到的數(shù)據(jù))。當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),此端輸入一個(gè)高電平,才能打開(kāi)輸出三態(tài)門(mén),輸出數(shù)字 量。 AVktR43bpw CLK時(shí)鐘脈沖輸入端。要求時(shí)鐘頻率不高于 640KHZ通常使用頻率為500KHz的時(shí)鐘 信號(hào)。 REF(+)、REF(- )基準(zhǔn)電壓。參考電源、參考電壓用來(lái)與輸入的模擬信號(hào)進(jìn)行比較, 作為逐次逼近的基準(zhǔn)。其典型值為 Vref(+)=+5V, Vref(-)=-5V Vcc電源,單一,5V。 GND接地。 2.5硬件總邏輯圖及其說(shuō)明 硬件總邏輯圖如下圖 28所示: 圖 28 硬件總邏輯圖 芯片8255A的數(shù)據(jù)線D0,D7與主機(jī)低八位數(shù)據(jù)線相連,8255

23、A的RD線、WF線、A0 A1、RESE分別與主機(jī)的RD線、WR線 A0、A1、RESETS連接。8255A的A 口控制LED的段 選, B 口控制位選 . 2MiJTy0dTT 光敏電路如下 : 在單片機(jī)上的接口連接如下 : 3.控制程序設(shè)計(jì) 3.1控制程序設(shè)計(jì)思路說(shuō)明 初始化8255芯片,設(shè)置工作方式控制字為 89(100010001B),即A B 口為輸出,分別控 制LED的段選、位選,C 口輸入。下圖為控制字:gliSpiue7A 以采樣五十次為一周期,求得五十次采樣的總值。然后除以50,得到采樣 50次的平 均值,存入LastAD。在每一次采樣過(guò)程中,都在 PC機(jī)和LED上輸出上一周

24、期采樣轉(zhuǎn)化得到的 光照強(qiáng)度 ( 單位 : 勒克斯 ) 。具體轉(zhuǎn)化過(guò)程為 : uEh0U1Yfmh 采樣得到的模擬值經(jīng)過(guò)AD轉(zhuǎn)化后為電壓值,電壓范圍為0-5V。而考慮到實(shí)際生活中,一 般照明為 200lux ,重點(diǎn)照明為 300lux ,所以實(shí)驗(yàn)中可顯示的光照強(qiáng)度為 0-500lux 。于是參考 兩者之間的線性關(guān)系,定下入下圖的關(guān)系 : IAg9qLsgBX 圖 29 電壓-光照度函數(shù) 3.2程序流程圖 開(kāi)始 初始化 8255 CX=50 采樣,計(jì)算采樣總值 百位數(shù)/ 整數(shù)部分入 BUF/BUFFER+,4 十位數(shù)/第一位小數(shù) 入 BUF+1/BUFFER+6個(gè)位數(shù)/第二位小數(shù) 入BUF+2/B

25、UFFER+7調(diào)用DOS勺9號(hào)功能在PC機(jī)上 輸出電壓。 WwghWvVhPE 采樣平均值送 8255, 8255的PA口段選、PB 口位選。 在LED上輸出一位數(shù)據(jù), 位選數(shù)據(jù)DATA爼移一位。 重復(fù)三次為一個(gè)周期。 然后還原DATA2=0FEH 延時(shí), i - N i=0? Y 繼續(xù)下一次采樣 計(jì)算采樣平均值 程序強(qiáng)制關(guān)閉 結(jié)束 圖 3-1 程序流程圖 3.3控制程序 初始化 ooeyYZTjj1 100 XOR AL,AL JMP START6 ADDR_0809 采樣五十次LastAD DB 0 ; 上一次AD轉(zhuǎn)換 .DATA BkeGuInkxI IO_Bit8_BaseAddres

26、s DW ? START2: CALL AL,0 ; 轉(zhuǎn)化為可顯示的 10 進(jìn)制數(shù) DX,ADDR_0809 MOV BUFFER + 4,AL DX,AL ; 整數(shù)部分 MOV AL,10 .MODEL TINY CALL ModifyAddress ;根據(jù) PCI 提 PCIBAR3 EQU 1CH供的基地址,將 偏移地址轉(zhuǎn)化為實(shí)地 asfpsfpi4k ;8 位 I/O 空間基地址 (它就是實(shí)驗(yàn)址 儀的基地址 ,也為DMA 廠商 ID 號(hào) INT 21H Device_ID EQU 8376 ; 設(shè)備 ID 號(hào) CALL Init8255 ; 8255A .STACK DW 00F0H

27、START1: MOV CX,50 ; MOV BX,0 ; 累計(jì)五十次采值 樣值 AD0809 BUFFER DB H . V$ XOFAH,AH ;采樣值在ALmsgCDBBIOS不支持訪問(wèn)PCI $中,AH清0后,AX即為采樣值msg1 DB 找不到 Star PCI9052 板 ADD BX,AX ;BX 為采樣總值 卡 $ CALL DISPLAY_PC msg2 DB讀8位I/O空間基地址時(shí);在PC機(jī)上顯示結(jié)果PgdO0sRIMo 出錯(cuò)$ CALL DISPLAY_LED msg3DBAD轉(zhuǎn)換結(jié)果(前邊是16;LED顯示上一次采樣的結(jié)果進(jìn)制數(shù),后邊是十進(jìn)制數(shù)):$ LastAD 3

28、cdXwckm15 COM_ADD DW 00E3控制口偏移 LOOP START2 量 MOV AX,50 h8c52WOngM P A_ADD DW 00E0H ;PA口偏移量 XCHG AX,BX P B_ADD DW 00E1H ;PB 口偏移量 DIV BL ;五十次的平PC_ADD DW 00E2H ;P(口偏移量均值,BL=50,平均值在AL中,余數(shù)在 LED_DATA DBA中 v4bdyGious 3Fh,06h,5Bh,4Fh,66h,6Dh,7Dh,0 CMP AL,LastAD 7h,7Fh,6Fh ;0-9的七段代碼 表 JZ START3 SHIFT DB 0FEH

29、 ;用于位 START6: MOV LastAD,AL 選;LastAD 值為 AD轉(zhuǎn)換值 J0bm4qMpJ9 START3: CALL IfExit .CODE JZ START1 START: MOV AX,DATA JMP Exit XVauA9grYP MOV DS,AX NOP AD080 9 PROC NEAR CALL InitPCI MOV SI,CX MOV MOV OUT MOV DX,IO_Bit8_BaseAddress MUL AH MOV CX,100 DIV BL AD08091:IN AL,DX OR AL,0 LOOP AD08091 MOV BUFFER

30、+ 6,AL ;延時(shí),等待AD轉(zhuǎn)換完成;第一位小數(shù) bR9C6TJscw OUT DX,AL CALL DLTIME ; 延時(shí) ROL AL,1 MOV DX,ADDR_0809 MOV AL,10 IN AL,DX MUL AH MOV CX,SI DIV BL RET OR AL,0 AD0809 ENDP MOV BUFFER + 7,AL ; 第二位小數(shù) ToChar PROC NEAR MOV DX,43 ; 轉(zhuǎn)化為可顯示的 16 進(jìn)制數(shù) MOV AH,02H ADD AL,0 INT 10H ; 定位光標(biāo) CMP AL,9 LEA DX,BUFFER JBE ToChar1 MOV

31、 AH,09H ADD AL,07H INT 21H ; 顯示結(jié)果 ToChar1: RET MOV AX,SI ; 相當(dāng)于 POP ToChar ENDP MOV BX,DI pN9LBDdtrd RET DISPLAY_PC PROC NEAR DISPLAY_PC ENDP MOV SI,AX ;相當(dāng)于 PUSH MOV DI,BX TO_LED PROC NEAR ;LED MOV AL,LastAD 顯示 ;將AD轉(zhuǎn)換值讀入 AX中 LEA BX,LED_DATA MOV AH,AL XLAT ; 經(jīng)代碼表轉(zhuǎn) AND AL,OFH換為七段LED表中的段碼,AL=BXAL CALL T

32、oChar MOV DX,PA_ADD MOV BUFFER + 1,AL ;從8255A的PA 口讀取數(shù)字量,段 MOV AL,AH選 AND AL,OFOH OUT DX,AL ROR AL,4 MOV AL,SHIFT ;七段 LED的 CALL ToChar位選,OFEH選取最低位,位選 MOV BUFFER,AL MOV DX,P B_ADD ;P口位選 MOV AL,AH XOR AH,AH MOV BL,51 ;255/5 (16 進(jìn)制的 1 = 1/51V) ; 向前選取次低位,位選 DIV BL MOV SHIFT,AL OR AL,O MOV AL,OFFH ; 禁止顯示,

33、 全置為滅 , 防止數(shù)字串 MOV AH,O6H 位 INT 21H OUT DX,AL MOV AX,SI RET MOV DX,DI TO_LED ENDP RET IfExit ENDP DISPLAY_LED PROC NEAR MOV SI,AX InitPCI PROC NEAR MOV DI,BXMOV AH,00H 4B7a9QFw9h XOR AX,AXMOV AL,03H MOV AL,BUFFER + 7 INT 10H ; SUB AL,30H 屏 CALL TO_LED MOV AH,0B1H ;在LED上顯示右起第一位數(shù) MOV AL,01H MOV AL,BUFF

34、ER + 6 INT 1AH SUB AL,30H CMP AH,0 CALL TO_LED JZ InitPCI2 ; 顯示第二位數(shù) LEA DX,msg0 MOV AL,BUFFER + 4 InitPCI1: MOV AH,09H SUB AL,30H INT 21H CALL TO_LED JMP Exit ; 顯示第三位數(shù) InitPCI2: MOV AH,0B1H MOV SHIFT,0FEH MOV AL,02H ;恢復(fù) SHIFT原值,應(yīng)用于下一次 MOV CX,Device_ID 輸出 MOV DX,Vendor_ID DJ8T7nHuGT MOV AX,SI MOV SI,

35、0 MOV BX,DI INT 1AH RET JNC InitPCI3 DISPLAY_LED ENDP ; 是否存在 Star PCI9052 板卡 QF81D7bvUA LEA DX,msg1 DLTime PROC NEAR JMP InitPCI1 MOV SI,CX InitPCI3: MOV DI,PCIBAR3 MOV CX,1563 MOV AH,0B1H DLT: NOP ; 空操作,用于延時(shí) MOV AL,09H ix6iFA8xoX LOOP DLT INT 1AH ; 循環(huán)延時(shí) , 延時(shí) 1.25ms ; 讀取該卡 PCI9052 基地址 MOV CX,SI JNC

36、InitPCI4 RET LEA DX,msg2 DLTime ENDP JMP InitPCI1 InitPCI4: AND CX,0FFFCH IfExit PROC NEAR MOV IO_Bit8_BaseAddress,CX wt6qbkCyDE MOV SI,AX RET MOV DI,DX InitPCI ENDP MOV DL,0FFH Init8255 PROC NEAR MOV DX,COM_ADD MOV AL,89H ;A、B 口為輸出(段選,位選),C 口輸入 OUT DX,AL MOV DX,PA_ADD ;LED 全熄滅 MOV AL,0FFH OUT DX,AL

37、 RET Init8255 ENDP ModifyAddress PROC NEAR ADD ADDR_0809,CX ;ADDR_0809=34F0H ADD COM_ADD,CX ADD PA_ADD,CX ADD PB_ADD,CX ADD PC_ADD,CX RET ModifyAddress ENDP Exit: MOV AH,4CH INT 21H END START 4.上機(jī)調(diào)試過(guò)程 4.1硬件調(diào)試 (1) 按照預(yù)習(xí)報(bào)告上的硬件總邏輯圖接線,注意段選線線與位選擇線均不能接反,否則顯 示在LED顯示器上的是亂碼或顯示順序是反的,連線松動(dòng)常導(dǎo)致LED顯示器上顯示不出數(shù)字, 所以硬件調(diào)

38、試時(shí)一定要確保連線的緊度。(2)ADC0809中,有多路通道可以進(jìn)行 A/D轉(zhuǎn)換。因 此實(shí)驗(yàn)一開(kāi)始就需要解決通道選擇問(wèn)題。我將ES-PCI的A0,A1,A2分別與ADC0809勺 ADDA,ADDB,ADDC連,以設(shè)定ADC0809的 IN0與模擬電路進(jìn)行相連,以實(shí)現(xiàn)對(duì)此模擬電路進(jìn)行 檢測(cè)。(BLED七段顯示器的段選是8位。本實(shí)驗(yàn)還需要位選4位。僅僅靠B 口只能實(shí)現(xiàn)段 選。因此,在初始化8255的時(shí)候,將C口也設(shè)定為輸出,實(shí)現(xiàn)對(duì) LED顯示器的位選。 Kp5zH46zRk 4.2軟件調(diào)試 實(shí)驗(yàn)中的程序經(jīng)由 0809 的匯編程序添加改編而來(lái)。在編寫(xiě)將數(shù)字電壓轉(zhuǎn)化為光照強(qiáng)度的 程序段時(shí),沒(méi)有頭緒,

39、想不出什么方法。經(jīng)過(guò)和同組的周三平同學(xué)的分析和討論,利用存儲(chǔ) 在BUFFER中的數(shù)據(jù)進(jìn)行轉(zhuǎn)換。這種方法十分的方便,大大節(jié)省了轉(zhuǎn)換部分的時(shí)間。 Yl4HdOAA61 4.3聯(lián)機(jī)調(diào)試 將下位機(jī)與PC機(jī)通過(guò)兩條扁平電纜相連,給下位機(jī)上電,運(yùn)行編寫(xiě)好的匯編程序。七段 數(shù)碼顯示管沒(méi)有按照預(yù)定方式顯示。由此,程序的編寫(xiě)過(guò)程中出現(xiàn)問(wèn)題,然后進(jìn)行單步調(diào) 試。在調(diào)試的過(guò)程中發(fā)現(xiàn)顯示的數(shù)值不是對(duì)應(yīng)相應(yīng)的電壓,然后發(fā)現(xiàn)是在PB 口輸出位選的時(shí) 候,位選的代碼出現(xiàn)錯(cuò)誤。開(kāi)始是采用XLAT指令通過(guò)查表來(lái)實(shí)現(xiàn)位選,這使得程序段冗余。 后經(jīng)同學(xué)的指點(diǎn),改為采用邏輯尺的方式來(lái)決定位選,更加方便。 ch4PJx4BlI 4.4調(diào)試結(jié)果及問(wèn)題的提出 經(jīng)過(guò)上述的改

溫馨提示

  • 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)論