微機(jī)原理與接口技術(shù)課程設(shè)計(串行通訊)_第1頁
微機(jī)原理與接口技術(shù)課程設(shè)計(串行通訊)_第2頁
微機(jī)原理與接口技術(shù)課程設(shè)計(串行通訊)_第3頁
微機(jī)原理與接口技術(shù)課程設(shè)計(串行通訊)_第4頁
微機(jī)原理與接口技術(shù)課程設(shè)計(串行通訊)_第5頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、微機(jī)原理與接口技術(shù)課程設(shè)計(串行通訊)一、設(shè)計意義在信息飛速發(fā)展的時代,計算機(jī)的應(yīng)用越來越廣泛。而微 機(jī)原理是機(jī)械工業(yè)控制設(shè)備的理論基礎(chǔ),學(xué)好了就能在激烈 的競爭環(huán)境中找到一份好一點的工作。理論課程學(xué)習(xí)是讓學(xué) 生學(xué)習(xí)基本理論知識, 對課程內(nèi)容和原理有比較深刻的理解, 只要從理論上理解,不用考慮實際的可行性。通過本次課程 設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識 , 發(fā)現(xiàn),提出, 分析和解決 實際問題 ,鍛煉實踐能力的重要環(huán)節(jié) , 是對學(xué)生實際工作能力 的具體訓(xùn)練和考察過程,不僅需要在理論上能實現(xiàn)而且還要 考慮實際的可行性,不能紙上談兵。二、設(shè)計目的1、了解串行通信的基本原理。2、掌握串行接口芯片 825

2、1 的工作原理。3、掌握 8251 芯片的編程方法。4、了解 8253 的初始化。5 、 鞏固和加深在微機(jī)原理課程中所學(xué)的理論知識。通過課程設(shè) 計加深理解課堂教學(xué)內(nèi)容,掌握計算機(jī)接口技術(shù)的基本應(yīng)用 方法。6 、學(xué)會查閱相關(guān)手冊與資料,培養(yǎng)獨立分析與解決問題能力。三、設(shè)計環(huán)境PC機(jī)一臺,串行通訊接口芯片 8251A一片, 8253一片。 TC-1集 成開發(fā)環(huán)境實驗箱一臺。四、設(shè)計題目及要求4.1 設(shè)計題目串行通訊4.2 設(shè)計要求 設(shè)計一個串行通信系統(tǒng),用軟件編程和硬件實驗來實現(xiàn)。 具體要求:用 8253 芯片作為計數(shù)器,用于產(chǎn)生 8251 的發(fā)送和接受時 鐘。 TXD 和 RXD 連在一起。從

3、PC 機(jī)的鍵盤輸入一個字符,將其 ASCII 碼加 1 后發(fā)送 出去,在接受回來在屏幕上顯示,實現(xiàn)自發(fā)自收。8251 的控制端口地址為 2B9H ,數(shù)據(jù)口地址為 2B8H.8253計數(shù)器的計算初值 =時鐘頻率 /(波特率*波特率因子 ), 這里的時鐘頻率接 1MHZ, 波特率若選 1200,波特因子若選 16,則計數(shù)器初值為 52。收發(fā)采用查詢方式。五、設(shè)計原理5.1 8251A 的基本性能8251A是可編程的串行通信接口芯片,基本性能: 1兩種工作方式:同步方式,異步方式。同步方式下, 波特率為 064K,異步方式下,波特率為 019.2K。2同步方式下的格式每個字符可以用 5、6、7或 8

4、位來表示,并且內(nèi)部能自 動檢測同步字符,從而實現(xiàn)同步。除此之外, 8251A 也允許 同步方式下增加奇 / 偶校驗位進(jìn)行校驗。3異步方式下的格式每個字符也可以用 5、6、7 或 8 位來表示,時鐘頻率為 傳輸波特率的 1、16 或 64倍,用 1 位作為奇 /偶校驗。 1 個 啟動位。并能根據(jù)編程為每個數(shù)據(jù)增加 1個、15個或 2個 停止位??梢詸z查假啟動位,自動檢測和處理終止字符。4全雙工的工作方式其內(nèi)部提供具有雙緩沖器的發(fā)送器和接收器。5提供出錯檢測 具有奇偶、溢出和幀錯誤三種校驗電路。5.2 、8251A 的內(nèi)部結(jié)構(gòu)1、發(fā)送器 發(fā)送器由發(fā)送緩沖器和發(fā)送控制電路兩部分組成。 采用異步方式,

5、則由發(fā)送控制電路在其首尾加上起始位 和停止位,然后從起始位開始,經(jīng)移位寄存器從數(shù)據(jù)輸出線TXD逐位串行輸出。8251A內(nèi)部結(jié)構(gòu)圖或采用同步方式,則在發(fā)送數(shù)據(jù)之前,發(fā)送器將自動送出1個 2個同步字符,然后才逐位串行輸出數(shù)據(jù)。如果 CPU與 8251A 之間采用中斷方式交換信息,那么 TXRDY可作為向 CPU發(fā)出的中斷請求信號。當(dāng)發(fā)送器中的 8 位數(shù)據(jù)串行發(fā)送完畢時,由發(fā)送控制電路向 CPU發(fā)出 TXE有 效信號,表示發(fā)送器中移位寄存器已空。2接收器接收器由接收緩沖器和接收控制電路兩部分組成。 接收移位寄存器從 RXD引腿上接收串行數(shù)據(jù)轉(zhuǎn)換成并行 數(shù)據(jù)后存入接收緩沖器。異步方式:在 RXD線上檢

6、測低電平,將檢測到的低電平 作為起始位 , 8251A 開始進(jìn)行采樣,完成字符裝配,并進(jìn)行 奇偶校驗和去掉停止位,變成了并行數(shù)據(jù)后,送到數(shù)據(jù)輸入 寄存器,同時發(fā)出 RXRDY信號送 CPU,表示已經(jīng)收到一個可 用的數(shù)據(jù)。同步方式:首先搜索同步字符。 8251A 監(jiān)測 RXD線,每 當(dāng) RXD線上出現(xiàn)一個數(shù)據(jù)位時,接收下來并送入移位寄存器 移位,與同步字符寄存器的內(nèi)容進(jìn)行比較, 如果兩者不相等, 則接收下一位數(shù)據(jù),并且重復(fù)上述比較過程。當(dāng)兩個寄存器 的內(nèi)容比較相等時, 8251A 的 SYNDET升為高電平,表示同步 字符已經(jīng)找到,同步已經(jīng)實現(xiàn)。采用雙同步方式,就要在測得輸入移位寄存器的內(nèi)容與第

7、一個同步字符寄存器的內(nèi)容相同后,再繼續(xù)檢測此后輸入 移位寄存器的內(nèi)容是否與第二個同步字符寄存器的內(nèi)容相 同。如果相同,則認(rèn)為同步已經(jīng)實現(xiàn)。在外同步情況下, 同步輸入端 SYNDET加一個高電位來實 現(xiàn)同步的。實現(xiàn)同步之后,接收器和發(fā)送器間就開始進(jìn)行數(shù)據(jù)的同 步傳輸。這時,接收器利用時鐘信號對 RXD線進(jìn)行采樣,并 把收到的數(shù)據(jù)位送到移位寄存器中。在 RXRDY引腳上發(fā)出一 個信號,表示收到了一個字符。3數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器是 CPU與 8251A 之間的數(shù)據(jù)接口。包含3 個 8 位的緩沖寄存器:兩個寄存器分別用來存放 CPU向 8251A 讀取的數(shù)據(jù)或狀態(tài)信息。一個寄存器用來存放 CP

8、U向 8251A寫入的數(shù)據(jù)或控制。4讀/ 寫控制電路讀/ 寫控制電路用來配合數(shù)據(jù)總線緩沖器的工作。 功能如 下:(1) 接收寫信號 WR ,并將來自數(shù)據(jù)總線的數(shù)據(jù)和控制字 寫入 8251A;(2) 接收讀信號 RD ,并將數(shù)據(jù)或狀態(tài)字從 8251A 送往數(shù) 據(jù)總線;(3) 接收控制 / 數(shù)據(jù)信號 C/ D ,高電平時為控制字或狀 態(tài)字;低電平時為數(shù)據(jù)。(4) 接收時鐘信號 CLK完成 8251A 的內(nèi)部定時;(5) 接收復(fù)位信號 RESET,使 8251A 處于空閑狀態(tài)。 5調(diào)制解調(diào)控制電路調(diào)制解調(diào)控制電路用來簡化 8251A 和調(diào)制解調(diào)器的連 接。5.3 8251A 的引腳功能1、8251A

9、 和 CPU之間的連接信號8251A 和 CPU之間的連接信號可以分為四類:a) 片選信號?CS :片選信號,它由 CPU的地址信號通過譯碼后得到。b) 數(shù)據(jù)信號D0-D7:8 位,三態(tài),雙向數(shù)據(jù)線, 與系統(tǒng)的數(shù)據(jù)總線相連。 傳輸 CPU對8251的編程命令字和 8251A送往 CPU的狀態(tài)信息 及數(shù)據(jù)。c) 讀 / 寫控制信號? RD :讀信號,低電平時, CPU當(dāng)前正在從 8251A 讀 取數(shù)據(jù)或者狀態(tài)信息。? WR :寫信號,低電乎時, CPU當(dāng)前正在往 8251A 寫 入數(shù)據(jù)或者控制信息。? C/ D :控制 / 數(shù)據(jù)信號,用來區(qū)分當(dāng)前讀 / 寫的是數(shù)據(jù) 還是控制信息或狀態(tài)信息。 該信

10、號也可看作是 8251A數(shù)據(jù)口 / 控制口的選擇信號。由此可知, RD 、WR、C/D這 3 個信號的組合,決定了 8251A的具體操作,它們的關(guān)系如表 7-3 所示:注:數(shù)據(jù)輸入端口和數(shù)據(jù)輸出端口合用同一個偶地址, 而狀態(tài)端口和控制端口合用同一個奇地址。c) 收發(fā)聯(lián)絡(luò)信號? TXRDY:發(fā)送器準(zhǔn)備好信號,用來通知 CPU,8251A 已 準(zhǔn)備好發(fā)送一個字符。? TXE:發(fā)送器空信號, TXE為高電平時有效,用來表示 此時 8251A 發(fā)送器中并行到串行轉(zhuǎn)換器空,說明一個發(fā)送動 作已完成。? RXRD:Y 接收器準(zhǔn)備好信號,用來表示當(dāng)前 8251A 已經(jīng) 從外部設(shè)備或調(diào)制解調(diào)器接收到一個字符,

11、 等待 CPU來取走。 因此,在中斷方式時, RXRDY可用來作為中斷請求信號;在 查詢方式時, RXRDY可用來作為查詢信號。? SYNDE:T 同步檢測信號,只用于同步方式。28251A與外部設(shè)備之間的連接信號 8251A與外部設(shè)備之間的連接信號分為兩類:a) 收發(fā)聯(lián)絡(luò)信號? DTR :數(shù)據(jù)終端準(zhǔn)備好信號,通知外部設(shè)備, CPU 當(dāng) 前已經(jīng)準(zhǔn)備就緒。? DSR :數(shù)據(jù)設(shè)備準(zhǔn)備好信號,表示當(dāng)前外設(shè)已經(jīng)準(zhǔn)備 好。? RTS :請求發(fā)送信號,表示 CPU已經(jīng)準(zhǔn)備好發(fā)送。? CTS :允許發(fā)送信號,是對 RTS 的響應(yīng),由外設(shè)送往 8251A。實際使用時,這 4 個信號中通常只有 CTS必須為低電

12、平, 其它 3 個信號可以懸空。b) 數(shù)據(jù)信號? TXD:發(fā)送器數(shù)據(jù)輸出信號。當(dāng) CPU送往 8251A 的并行 數(shù)據(jù)被轉(zhuǎn)變?yōu)榇袛?shù)據(jù)后,通過 TXD送往外設(shè)。? RXD:接收器數(shù)據(jù)輸入信號。用來接收外設(shè)送來的串行 數(shù)據(jù),數(shù)據(jù)進(jìn)入 8251A 后被轉(zhuǎn)變?yōu)椴⑿蟹绞健?. 時鐘、電源和地8251A 除了與 CPU及外設(shè)的連接信號外,還有電源端、地端 和 3 個時鐘端。? CLK:時鐘輸入,用來產(chǎn)生 8251A 器件的內(nèi)部時序。同步方式下,大于接收數(shù)據(jù)或發(fā)送數(shù)據(jù)的波特率的 30 倍, 異步方式下,則要大于數(shù)據(jù)波特率的 4.5 倍。? TXD:發(fā)送器時鐘輸入,用來控制發(fā)送字符的速度。 同步方式下, T

13、XC的頻率等于字符傳輸?shù)牟ㄌ芈剩惒椒绞?下, TXC的頻率可以為字符傳輸波特率的 1倍、 16倍或者 64 倍。? RXD:接收器時鐘輸入,用來控制接收字符的速度,和TXC一樣。在實際使用時, RXC和 TXC往往連在一起,由同一個外部時 鐘來提供, CLK則由另一個頻率較高的外部時鐘來提供。? VCC:電源輸入? GND:地5.4 、8251A 的編程編程的內(nèi)容包括兩大方面:一是由 CPU發(fā)出的控制字,即方式選擇控制字和操作命令控 制字;二是由 8251A 向 CPU送出的狀態(tài)字。 1方式選擇控制字(模式字) 方式選擇控制字的格式如圖所示。2操作命令控制字(控制字)操作命令控制字的格式如下

14、:3、狀態(tài)字狀態(tài)字的格式如下:4 8251A的初始化a)芯片復(fù)位以后,第一次用奇地址端口寫入的值作為模 式字進(jìn)入模式寄存器。b) 如果模式字中規(guī)定了 8251A工作在同步模式,c)由 CPU用奇地址端口寫入的值將作為控制字送到控制 寄存器,而用偶地址端口寫入的值將作為數(shù)據(jù)送到數(shù)據(jù)輸出 緩沖寄存器。六、設(shè)計方案6.1 、硬件設(shè)計6.1.1 設(shè)計原理圖從鍵盤輸入一個字符 ,將其 ASCII 碼加 1 后發(fā)送出去 ,再接收回 來在屏幕上顯示,實現(xiàn)自發(fā)自收。6.1.2 、實驗注意事項在本實驗方案中有以下幾點需要注意1、圖示電路 8251 的控制口地址為 2B9H,數(shù)據(jù)口地址為 2B8H。2、8253

15、計數(shù)器的計數(shù)初值 =時鐘頻率 / (波特率 * 波特因子),這 里的時鐘頻率接 1MHZ,波特率若選 1200,波特因子若選 16,則計數(shù)器初值為 52。3、收發(fā)采用查詢模式。6.2 軟件設(shè)計6.2.1 程序流程圖 ioport io8253a io8253b io8251a io8251b6.2.2 編程實現(xiàn)data segmentequ 0cc00h-0280h equ ioport+280h equ ioport+283h equ ioport+2b8h equ ioport+2b9h canplay a key on the;設(shè)置 8253計數(shù)器 0 工作方;給 8253計數(shù)器 0 送

16、初值;初始化 8251;向 8251控制端口送 3個 0;向 8251 控制端口送 40H,使其;設(shè)置為 1 個停止位 ,8個數(shù)據(jù)位 ,;向 8251 送控制字允許其發(fā)送 ;顯示提示信息mes1 db 'you keybord!',0dh,0ah,24hmes2 dd mes1 data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax mov dx,io8253b 式 mov al,16h out dx,al mov dx,io8253a mov al,52 out dx,al mov

17、dx,io8251b xor al,al mov cx,03delay:call out1loop delay mov al,40h 復(fù)位 call out1 mov al,4eh 波特率因子為 16 call out1 mov al,27h 和接收 call out1 lds dx,mes2 mov ah,09 int 21hwaiti: mov dx,io8251bin al,dx test al,01 jz waiti mov ah,01 int 21h cmp al,27 jz exit mov dx,io8251a inc al out dx,al mov cx,40h s51: l

18、oop s51 next:;發(fā)送是否準(zhǔn)備好;是,從鍵盤上讀一字符; 若為 ESC,結(jié)束;發(fā)送;延時mov dx,io8251bin al,dx test al,02 jz next mov dx,io8251a in al,dx mov dl,al mov ah,02 上int 21h jmp waiti exit:mov ah,4ch;檢查接收是否準(zhǔn)備好;沒有,等待;準(zhǔn)備好 ,接收;將接收到的字符顯示在屏幕;退出;向外發(fā)送一字節(jié)的子程序;延時int 21h out1 proc near out dx,al push cx mov cx,40h gg:loop ggpop cx ret out

19、1 endp code ends七、調(diào)試運行1. 對設(shè)計原理圖進(jìn)行檢查。主要針對電路連接中的線路連接進(jìn)行 檢查,并生成對應(yīng)電路的網(wǎng)表。特別是對電路節(jié)點的連接檢 查。2. 對設(shè)計的程序進(jìn)行語法檢查。檢查程序中存在的語法錯誤。編 譯連接并下載到芯片中。3. 對設(shè)計進(jìn)行綜合調(diào)試。對下載到芯片中的程序進(jìn)行功能檢查。 直到完成設(shè)計要求的功能。運行結(jié)果:通過對下載的程序的調(diào)試,完成了設(shè)計要求的任務(wù): 從鍵盤上輸入一個字符,將其 ASCII 碼加 1 后發(fā)送出去,在接受 回來在屏幕上顯示,實現(xiàn)自發(fā)自收。八、課程設(shè)計總結(jié)課程設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識發(fā)現(xiàn)、提出、分析 和解決實際問題 ,是鍛煉實踐能力的重要環(huán)節(jié) , 是對學(xué)生實際 工作能力的具體訓(xùn)練和考察

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論