微機(jī)原理課程設(shè)計(jì)_第1頁
微機(jī)原理課程設(shè)計(jì)_第2頁
微機(jī)原理課程設(shè)計(jì)_第3頁
微機(jī)原理課程設(shè)計(jì)_第4頁
微機(jī)原理課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、課 程 設(shè) 計(jì)課程設(shè)計(jì)名稱: 微機(jī)應(yīng)用系統(tǒng)課程設(shè)計(jì) 專 業(yè) 班 級(jí) :學(xué) 生 姓 名 :學(xué) 號(hào) :指 導(dǎo) 教 師 :課程設(shè)計(jì)時(shí)間:目 錄目 錄1一、設(shè)計(jì)任務(wù)與要求2二、設(shè)計(jì)思想2三、主要元器件介紹23.1、可編程并行通信接口芯片8255A 23.1.1、可編程并行通信接口芯片8255A特性 33.1.2、可編程并行通信接口芯片8255A引腳 33.1.3、可編程并行通信接口芯片8255A控制字 43.1.4、可編程并行通信接口芯片8255A工作方式 53.2、LED數(shù)碼顯示管 6四、設(shè)計(jì)方案與硬件連線 6五、程序流程圖8六、程序源代碼9七、設(shè)計(jì)結(jié)果14八、總結(jié)14一、設(shè)計(jì)任務(wù)與要求連接電路,設(shè)

2、計(jì)程序,實(shí)現(xiàn)兩位LED數(shù)碼管全亮(2秒)、全滅(2秒),然后從00開始累加直到60,然后重新回到00,依次循環(huán)。以肉眼能夠看到清楚的LED明滅變化為準(zhǔn)。二、設(shè)計(jì)思想LED數(shù)碼管動(dòng)態(tài)顯示接口是單片機(jī)中應(yīng)用最為廣泛的一種顯示方式之一,動(dòng)態(tài)驅(qū)動(dòng)是將所有數(shù)碼管的8個(gè)顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個(gè)數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨(dú)立的I/O線控制,當(dāng)單片機(jī)輸出字形碼時(shí),單片機(jī)對(duì)位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會(huì)亮。通過分時(shí)輪流控制各個(gè)數(shù)碼管的的C

3、OM端,就使各個(gè)數(shù)碼管輪流受控顯示,這就是動(dòng)態(tài)驅(qū)動(dòng)。在輪流顯示過程中,每位數(shù)碼管的點(diǎn)亮?xí)r間為12ms,由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應(yīng),盡管實(shí)際上各位數(shù)碼管并非同時(shí)點(diǎn)亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會(huì)有閃爍感,動(dòng)態(tài)顯示的效果和靜態(tài)顯示是一樣的,能夠節(jié)省大量的I/O端口,而且功耗更低。三、主要元器件介紹本次實(shí)驗(yàn)需要的元器件有:可編程并行通信接口芯片8255A、LED數(shù)碼顯示管、若干導(dǎo)線、電阻、總線等。3.1、可編程并行通信接口芯片8255A8255是Intel公司生產(chǎn)的可編程并行I/O接口芯片,有3個(gè)8位并行I/O口。具有3個(gè)通道3種工作方式的可編程并行

4、接口芯片(40引腳)。 其各口功能可由軟件選擇,使用靈活,通用性強(qiáng)。8255可作為單片機(jī)與多種外設(shè)連接時(shí)的中間接口電路。8255作為主機(jī)與外設(shè)的連接芯片,必須提供與主機(jī)相連的3個(gè)總線接口,即數(shù)據(jù)線、地址線、控制線接口。同時(shí)必須具有與外設(shè)連接的接口A、B、C口。3.1.1、可編程并行通信接口芯片8255A特性(1)一個(gè)并行輸入、輸出的LSI芯片,多功能的I/O器件,可作為CPU總線與外圍的接口。(2)具有24個(gè)可編程設(shè)置的I/O口,即3組8位的I/O口為PA口,PB口和PC口。它們又可分為兩組12位的I/O口,A組包括A口及C口(高4位,PC4PC7),B組包括B口及C口(低4位,PC0PC3)

5、。A組可設(shè)置為基本的I/O口,閃控(STROBE)的I/O閃控式,雙向I/O3種模式;B組只能設(shè)置為基本I/O或閃控式I/O兩種模式,而這些操作模式完全由控制寄存器的控制字決定。3.1.2、可編程并行通信接口芯片8255A引腳RESET:復(fù)位輸入線,當(dāng)該輸入端處于高電平時(shí),所有內(nèi)部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成輸入方式。CS:芯片選擇信號(hào)線,當(dāng)這個(gè)輸入引腳為低電平時(shí),即/CS=0時(shí),表示芯片被選中,允許8255與CPU進(jìn)行通訊;/CS=1時(shí),8255無法與CPU做數(shù)據(jù)傳輸.RD:讀信號(hào)線,當(dāng)這個(gè)輸入引腳為低跳變沿時(shí),即/RD產(chǎn)生一個(gè)低脈沖且/CS=0時(shí),允許8255通過

6、數(shù)據(jù)總線向CPU發(fā)送數(shù)據(jù)或狀態(tài)信息,即CPU從8255讀取信息或數(shù)據(jù)。WR:寫入信號(hào),當(dāng)這個(gè)輸入引腳為低跳變沿時(shí),即/WR產(chǎn)生一個(gè)低脈沖且/CS=0時(shí),允許CPU將數(shù)據(jù)或控制字寫入8255。D0D7:三態(tài)雙向數(shù)據(jù)總線,8255與CPU數(shù)據(jù)傳送的通道,當(dāng)CPU 執(zhí)行輸入輸出指令時(shí),通過它實(shí)現(xiàn)8位數(shù)據(jù)的讀/寫操作,控制字和狀態(tài)信息也通過數(shù)據(jù)總線傳送。8255具有3個(gè)相互獨(dú)立的輸入/輸出通道端口,用+5V單電源供電,能在以下三種方式下工作。方式0基本輸入輸出方式;方式1選通輸入/出方式;方式2雙向選通輸入/輸出方式;PA0PA7:端口A輸入輸出線,一個(gè)8位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個(gè)8位的數(shù)據(jù)輸

7、入鎖存器。 工作于三種方式中的任何一種;PB0PB7:端口B輸入輸出線,一個(gè)8位的I/O鎖存器, 一個(gè)8位的輸入輸出緩沖器。 不能工作于方式二;PC0PC7:端口C輸入輸出線,一個(gè)8位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個(gè)8位的數(shù)據(jù)輸入緩沖器。端口C可以通過工作方式設(shè)定而分成2個(gè)4位的端口, 每個(gè)4位的端口包含一個(gè)4位的鎖存器,分別與端口A和端口B配合使用,可作為控制信號(hào)輸出或狀態(tài)信號(hào)輸入端口。'不能工作于方式一或二。3.1.3、控制字D7位為“1”時(shí),為方式選擇控制字的標(biāo)識(shí)位。D6、D5位決定A端口的工作方式。D4位決定A端口工作在輸入還是輸出方式。D3位決定C端口高4位PC7PC4是作為

8、輸入端口,還是作為輸出端口。D2位用來選擇B端口的工作方式。D1位決定B端口作為輸入還是輸出端口。D0位決定C端口低4位PC3PC0作出為輸入,還是輸出。3.1.4、工作方式3種工作方式可用軟件編程對(duì)控制口設(shè)置來指定。三種基本的工作方式為: 方式0基本的輸入輸出,方式1選通輸入輸出方式, 方式2雙向傳送方式。1) 工作方式0(基本輸入輸出方式)功能:方式0不使用聯(lián)絡(luò)信號(hào),也不使用中斷,A口和B口可定義為輸入或輸出口,C口分成兩個(gè)部分(高四位和低四位),C口的兩個(gè)部分也可分別定義為輸入或輸出。在方式0,所有口輸出均有鎖存,輸入只有緩沖,無鎖存,C口還具有按位將其各位清0或置1的功能。常用于與外設(shè)

9、無條件的數(shù)據(jù)傳送或接收外設(shè)的數(shù)據(jù)。2) 工作方式1(選通輸入輸出方式)A口借用C口的一些信號(hào)線用作控制和狀態(tài)信號(hào),組成A組,B口借用C口的一些信號(hào)線用作控制和狀態(tài)信號(hào),組成B組。在方式1下,C口的某些位被占用。方式1的輸出:當(dāng)A口工作于方式1且用作輸出口時(shí),C口的PC7線用作輸出緩沖器滿OBF信號(hào),PC6用作外設(shè)B口輸出收到數(shù)據(jù)后的響應(yīng)信號(hào)ACK,PC3用作中斷請(qǐng)求輸出信號(hào)線INTR。當(dāng)B口工作于方式l且用作輸出口時(shí),C口的PC1線用作輸出緩沖器滿OBF信號(hào),PC2用作外設(shè)收到數(shù)據(jù)后的響應(yīng)信號(hào)ACK,PC0用作中斷請(qǐng)求輸出信號(hào)線INTR。3) 工作方式2 (雙向輸入輸出方式)功能:方式2是A組

10、獨(dú)有的工作方式。外設(shè)既能在A口的8條引線上發(fā)送數(shù)據(jù),又能接收數(shù)據(jù)。此方式也是借用C口的5條信號(hào)線作控制和狀態(tài)線,A口的輸入和輸出均帶有鎖存。3.2、LED數(shù)碼顯示管LED數(shù)碼顯示管由7個(gè)字符短和一個(gè)小數(shù)點(diǎn)段組成,每段對(duì)應(yīng)一個(gè)發(fā)光二極管,當(dāng)發(fā)光二極管點(diǎn)亮?xí)r,相應(yīng)的字符段點(diǎn)亮。LED數(shù)碼顯示管有共陰極和共陽極兩種供應(yīng)狀態(tài)。共陽極顯示時(shí),將LED數(shù)碼顯示管現(xiàn)實(shí)的COM接VCC,將八個(gè)字符段端a,b,c,d,e,f,g,dp依次與一個(gè)8位I/O口的最高到最低位連接,當(dāng)I/O給LED數(shù)碼顯示管的哪個(gè)字符段送入一個(gè)低電平時(shí),該段就被點(diǎn)亮,從而可從這8個(gè)字符段中被點(diǎn)亮的構(gòu)成相應(yīng)的字符顯示出來。當(dāng)數(shù)碼管特定的

11、段加上電壓后,這些特定的段就會(huì)發(fā)亮,以形成我們眼睛看到的字樣了。如:顯示一個(gè)“2”字,那么應(yīng)當(dāng)是a亮b亮g亮e亮d亮f不亮c不亮dp不亮。LED數(shù)碼管有一般亮和超亮等不同之分,也有0.5寸、1寸等不同的尺寸。小尺寸數(shù)碼管的顯示筆畫常用一個(gè)發(fā)光二極管組成,而大尺寸的數(shù)碼管由二個(gè)或多個(gè)發(fā)光二極管組成,一般情況下,單個(gè)發(fā)光二極管的管壓降為1.8V左右,電流不超過30mA。發(fā)光二極管的陽極連接到一起連接到電源正極的稱為共陽數(shù)碼管,發(fā)光二極管的陰極連接到一起連接到電源負(fù)極的稱為共陰數(shù)碼管。常用LED數(shù)碼管顯示的數(shù)字和字符是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。四、設(shè)計(jì)方案與硬件

12、連線實(shí)驗(yàn)臺(tái)設(shè)有兩個(gè)共陰極數(shù)碼管及驅(qū)動(dòng)電路,電路圖如圖4.1。段碼輸入端:a、b、c、d、e、f、g、dp,位碼輸入端:S0、S1。圖4.1 電路圖圖4.2 硬件連接1、實(shí)驗(yàn)臺(tái)上的七段數(shù)碼管為共陰型,段碼采用同相驅(qū)動(dòng),輸入端加高電平,選中的數(shù)碼管亮,位碼加反相驅(qū)動(dòng)器,位碼輸入端高電平選中。按圖4-2連接好電路,七段數(shù)碼管段碼連接不變,位碼驅(qū)動(dòng)輸入端S1,S0接8255 C口的PC1,PC0。2、七段數(shù)碼管的字型代碼表如下圖4.3和4.4:圖4.3 字型代碼表(1)顯示字形gefdcba段碼001111113fh1000011006h21010115bh310011114fh4110011066h

13、511011016dh611111017dh7000011107h811111117fh911011116fh圖4.4 字型代碼表(2)五、程序流程圖開始將8255設(shè)置A口輸出送8的斷碼至A口送位碼11至C口送8的斷碼至A口延時(shí)設(shè)置CX循環(huán)顯示次數(shù)SI指向斷碼查找偏移量斷碼將斷碼從8255A口輸出延時(shí)是否有鍵按下?退出CX不為0,繼續(xù)循環(huán)顯示圖5 程序流程圖六、程序源代碼data segmentio8255a equ 28ahio8255b equ 28bhio8255c equ 288hled db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh ;段碼buf

14、fer1 db 0,0 ;存放要顯示的十位和個(gè)位buffer2 db 8,8 ;存放要顯示的十位和個(gè)位bz dw ? ;位碼data endscode segment assume cs:code,ds:datastart: mov ax,data mov ds,ax mov dx,io8255a ;將8255設(shè)為A口輸出 mov al,80h out dx,al mov di,offset buffer2 ;設(shè)di為顯示緩沖區(qū) push cxbegin procmov cx,5loop3: mov bh,02lll1: mov byte ptr bz,bh push di dec di ad

15、d di, bz mov bl,di ;bl為要顯示的數(shù) pop di mov bh,0 mov si,offset led ;置led數(shù)碼表偏移地址為SI add si,bx ;求出對(duì)應(yīng)的led數(shù)碼 mov al,byte ptr si mov dx,io8255c ;自8255A的口輸出 out dx,al mov al,11;byte ptr bz ;使相應(yīng)的數(shù)碼管亮 mov dx,io8255a out dx,al push cx mov cx,20delay1: call delay loop delay1 ;延時(shí) mov al,00h out dx,al mov bh,byte p

16、tr bz shr bh,1 jnz lll1 ;loop loop3 mov dx,0ffh begin endp ;loop loop3 push cx mov cx,20delay5: call delay loop delay5 pop cx mov dx,io8255a mov al,0 ;關(guān)掉數(shù)碼管顯示 out dx,al ;jmp a123 ;mov ah,4ch ;返回 ;int 21hmov cx,20delay2: call delay loop delay2 ;mov ax,data ;mov ds,ax mov dx,io8255b ;將8255設(shè)為A口輸出 mov a

17、l,80h out dx,ala123: mov di,offset buffer1 ;設(shè)di為顯示緩沖區(qū);loop1: mov cx,0300h ;循環(huán)次數(shù)loop1: mov cx,030h ;循環(huán)次數(shù)loop2: mov bh,02lll: mov byte ptr bz,bh push di dec di add di, bz mov bl,di ;bl為要顯示的數(shù) pop di mov bh,0 mov si,offset led ;置led數(shù)碼表偏移地址為SI add si,bx ;求出對(duì)應(yīng)的led數(shù)碼 mov al,byte ptr si mov dx,io8255c ;自825

18、5A的口輸出 out dx,al mov al,byte ptr bz ;使相應(yīng)的數(shù)碼管亮 mov dx,io8255a out dx,al push cx mov cx,60 delay3: loop delay3 ;延時(shí) pop cx mov al,00h out dx,al mov bh,byte ptr bz shr bh,1 jnz lll loop loop2 ;循環(huán)延時(shí) mov ax,word ptr di cmp al,00 jnz set cmp ah,06 jnz set mov ax,0000 mov di,al mov di+1,ah jmp loop1set: mov

19、 ah,01 int 16h jne exit ;有鍵按下則轉(zhuǎn)exit mov ax,word ptr di inc al aaa mov di,al ;al為十位 mov di+1,ah ;ah中為個(gè)位 jmp loop1 delay proc near ;延時(shí)子程序 push cx push ax mov ax,15x1: mov cx,0ffffhx2: dec cx jnz x2 dec ax jnz x1 pop ax pop cx retdelay endpexit: mov dx,io8255a mov al,0 ;關(guān)掉數(shù)碼管顯示 out dx,al mov ah,4ch ;返回 int 21hcode ends end start七、設(shè)計(jì)結(jié)果程序開始后,從8255分別向S0,S1輸出信號(hào)8,轉(zhuǎn)碼后對(duì)應(yīng)7FH,對(duì)應(yīng)8個(gè)輸入燈接口。之后數(shù)碼管上顯示88,換言之?dāng)?shù)碼管上所有信

溫馨提示

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

評(píng)論

0/150

提交評(píng)論