微機(jī)原理與接口技術(shù)課程設(shè)計(jì)串行通訊_第1頁(yè)
微機(jī)原理與接口技術(shù)課程設(shè)計(jì)串行通訊_第2頁(yè)
微機(jī)原理與接口技術(shù)課程設(shè)計(jì)串行通訊_第3頁(yè)
微機(jī)原理與接口技術(shù)課程設(shè)計(jì)串行通訊_第4頁(yè)
微機(jī)原理與接口技術(shù)課程設(shè)計(jì)串行通訊_第5頁(yè)
已閱讀5頁(yè),還剩21頁(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)介

年4月19日微機(jī)原理與接口技術(shù)課程設(shè)計(jì)串行通訊文檔僅供參考,不當(dāng)之處,請(qǐng)聯(lián)系改正。設(shè)計(jì)意義在信息飛速發(fā)展的時(shí)代,計(jì)算機(jī)的應(yīng)用越來(lái)越廣泛。而微機(jī)原理是機(jī)械工業(yè)控制設(shè)備的理論基礎(chǔ),學(xué)好了就能在激烈的競(jìng)爭(zhēng)環(huán)境中找到一份好一點(diǎn)的工作。理論課程學(xué)習(xí)是讓學(xué)生學(xué)習(xí)基本理論知識(shí),對(duì)課程內(nèi)容和原理有比較深刻的理解,只要從理論上理解,不用考慮實(shí)際的可行性。經(jīng)過(guò)本次課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問(wèn)題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過(guò)程,不但需要在理論上能實(shí)現(xiàn)而且還要考慮實(shí)際的可行性,不能紙上談兵。設(shè)計(jì)目的了解串行通信的基本原理。掌握串行接口芯片8251的工作原理。掌握8251芯片的編程方法。了解8253的初始化。鞏固和加深在微機(jī)原理課程中所學(xué)的理論知識(shí)。經(jīng)過(guò)課程設(shè)計(jì)加深理解課堂教學(xué)內(nèi)容,掌握計(jì)算機(jī)接口技術(shù)的基本應(yīng)用方法。學(xué)會(huì)查閱相關(guān)手冊(cè)與資料,培養(yǎng)獨(dú)立分析與解決問(wèn)題能力。設(shè)計(jì)環(huán)境PC機(jī)一臺(tái),串行通訊接口芯片8251A一片,8253一片。TC-1集成開(kāi)發(fā)環(huán)境實(shí)驗(yàn)箱一臺(tái)。四、設(shè)計(jì)題目及要求4.1設(shè)計(jì)題目串行通訊4.2設(shè)計(jì)要求設(shè)計(jì)一個(gè)串行通信系統(tǒng),用軟件編程和硬件實(shí)驗(yàn)來(lái)實(shí)現(xiàn)。具體要求:用8253芯片作為計(jì)數(shù)器,用于產(chǎn)生8251的發(fā)送和接受時(shí)鐘。TXD和RXD連在一起。從PC機(jī)的鍵盤(pán)輸入一個(gè)字符,將其ASCII碼加1后發(fā)送出去,在接受回來(lái)在屏幕上顯示,實(shí)現(xiàn)自發(fā)自收。8251的控制端口地址為2B9H ,數(shù)據(jù)口地址為2B8H.8253計(jì)數(shù)器的計(jì)算初值=時(shí)鐘頻率/(波特率*波特率因子),這里的時(shí)鐘頻率接1MHZ,波特率若選1200,波特因子若選16,則計(jì)數(shù)器初值為52。收發(fā)采用查詢方式。五、設(shè)計(jì)原理5.1.8251A的基本性能8251A是可編程的串行通信接口芯片,基本性能:1.兩種工作方式:同步方式,異步方式。同步方式下,波特率為064K,異步方式下,波特率為0~19.2K。2.同步方式下的格式每個(gè)字符能夠用5、6、7或8位來(lái)表示,而且內(nèi)部能自動(dòng)檢測(cè)同步字符,從而實(shí)現(xiàn)同步。除此之外,8251A也允許同步方式下增加奇/偶校驗(yàn)位進(jìn)行校驗(yàn)。3.異步方式下的格式每個(gè)字符也能夠用5、6、7或8位來(lái)表示,時(shí)鐘頻率為傳輸波特率的1、16或64倍,用1位作為奇/偶校驗(yàn)。1個(gè)啟動(dòng)位。并能根據(jù)編程為每個(gè)數(shù)據(jù)增加1個(gè)、1.5個(gè)或2個(gè)停止位。能夠檢查假啟動(dòng)位,自動(dòng)檢測(cè)和處理終止字符。4.全雙工的工作方式其內(nèi)部提供具有雙緩沖器的發(fā)送器和接收器。5.提供出錯(cuò)檢測(cè)具有奇偶、溢出和幀錯(cuò)誤三種校驗(yàn)電路。5.2、8251A的內(nèi)部結(jié)構(gòu)1、發(fā)送器發(fā)送器由發(fā)送緩沖器和發(fā)送控制電路兩部分組成。采用異步方式,則由發(fā)送控制電路在其首尾加上起始位和停止位,然后從起始位開(kāi)始,經(jīng)移位寄存器從數(shù)據(jù)輸出線TXD逐位串行輸出。8251A內(nèi)部結(jié)構(gòu)圖或采用同步方式,則在發(fā)送數(shù)據(jù)之前,發(fā)送器將自動(dòng)送出1個(gè)2個(gè)同步字符,然后才逐位串行輸出數(shù)據(jù)。如果CPU與8251A之間采用中斷方式交換信息,那么TXRDY可作為向CPU發(fā)出的中斷請(qǐng)求信號(hào)。當(dāng)發(fā)送器中的8位數(shù)據(jù)串行發(fā)送完畢時(shí),由發(fā)送控制電路向CPU發(fā)出TXE有效信號(hào),表示發(fā)送器中移位寄存器已空。2.接收器接收器由接收緩沖器和接收控制電路兩部分組成。接收移位寄存器從RXD引腿上接收串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)后存入接收緩沖器。異步方式:在RXD線上檢測(cè)低電平,將檢測(cè)到的低電平作為起始位,8251A開(kāi)始進(jìn)行采樣,完成字符裝配,并進(jìn)行奇偶校驗(yàn)和去掉停止位,變成了并行數(shù)據(jù)后,送到數(shù)據(jù)輸入寄存器,同時(shí)發(fā)出RXRDY信號(hào)送CPU,表示已經(jīng)收到一個(gè)可用的數(shù)據(jù)。同步方式:首先搜索同步字符。8251A監(jiān)測(cè)RXD線,每當(dāng)RXD線上出現(xiàn)一個(gè)數(shù)據(jù)位時(shí),接收下來(lái)并送入移位寄存器移位,與同步字符寄存器的內(nèi)容進(jìn)行比較,如果兩者不相等,則接收下一位數(shù)據(jù),而且重復(fù)上述比較過(guò)程。當(dāng)兩個(gè)寄存器的內(nèi)容比較相等時(shí),8251A的SYNDET升為高電平,表示同步字符已經(jīng)找到,同步已經(jīng)實(shí)現(xiàn)。采用雙同步方式,就要在測(cè)得輸入移位寄存器的內(nèi)容與第一個(gè)同步字符寄存器的內(nèi)容相同后,再繼續(xù)檢測(cè)此后輸入移位寄存器的內(nèi)容是否與第二個(gè)同步字符寄存器的內(nèi)容相同。如果相同,則認(rèn)為同步已經(jīng)實(shí)現(xiàn)。在外同步情況下,同步輸入端SYNDET加一個(gè)高電位來(lái)實(shí)現(xiàn)同步的。實(shí)現(xiàn)同步之后,接收器和發(fā)送器間就開(kāi)始進(jìn)行數(shù)據(jù)的同步傳輸。這時(shí),接收器利用時(shí)鐘信號(hào)對(duì)RXD線進(jìn)行采樣,并把收到的數(shù)據(jù)位送到移位寄存器中。在RXRDY引腳上發(fā)出一個(gè)信號(hào),表示收到了一個(gè)字符。3.?dāng)?shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器是CPU與8251A之間的數(shù)據(jù)接口。包含3個(gè)8位的緩沖寄存器:兩個(gè)寄存器分別用來(lái)存放CPU向8251A讀取的數(shù)據(jù)或狀態(tài)信息。一個(gè)寄存器用來(lái)存放CPU向8251A寫(xiě)入的數(shù)據(jù)或控制。4.讀/寫(xiě)控制電路讀/寫(xiě)控制電路用來(lái)配合數(shù)據(jù)總線緩沖器的工作。功能如下:(1)接收寫(xiě)信號(hào),并將來(lái)自數(shù)據(jù)總線的數(shù)據(jù)和控制字寫(xiě)入8251A;(2)接收讀信號(hào),并將數(shù)據(jù)或狀態(tài)字從8251A送往數(shù)據(jù)總線;(3)接收控制/數(shù)據(jù)信號(hào)C/,高電平時(shí)為控制字或狀態(tài)字;低電平時(shí)為數(shù)據(jù)。(4)接收時(shí)鐘信號(hào)CLK完成8251A的內(nèi)部定時(shí);(5)接收復(fù)位信號(hào)RESET,使8251A處于空閑狀態(tài)。5.調(diào)制解調(diào)控制電路調(diào)制解調(diào)控制電路用來(lái)簡(jiǎn)化8251A和調(diào)制解調(diào)器的連接。5.3.8251A的引腳功能1、8251A和CPU之間的連接信號(hào)8251A和CPU之間的連接信號(hào)能夠分為四類:a)片選信號(hào)?:片選信號(hào),它由CPU的地址信號(hào)經(jīng)過(guò)譯碼后得到。b)數(shù)據(jù)信號(hào)D0-D7:8位,三態(tài),雙向數(shù)據(jù)線,與系統(tǒng)的數(shù)據(jù)總線相連。傳輸CPU對(duì)8251的編程命令字和8251A送往CPU的狀態(tài)信息及數(shù)據(jù)。c)讀/寫(xiě)控制信號(hào)?:讀信號(hào),低電平時(shí),CPU當(dāng)前正在從8251A讀取數(shù)據(jù)或者狀態(tài)信息。?:寫(xiě)信號(hào),低電乎時(shí),CPU當(dāng)前正在往8251A寫(xiě)入數(shù)據(jù)或者控制信息。?C/:控制/數(shù)據(jù)信號(hào),用來(lái)區(qū)分當(dāng)前讀/寫(xiě)的是數(shù)據(jù)還是控制信息或狀態(tài)信息。該信號(hào)也可看作是8251A數(shù)據(jù)口/控制口的選擇信號(hào)。由此可知,、、C/這3個(gè)信號(hào)的組合,決定了8251A的具體操作,它們的關(guān)系如表7-3所示:注:數(shù)據(jù)輸入端口和數(shù)據(jù)輸出端口合用同一個(gè)偶地址,而狀態(tài)端口和控制端口合用同一個(gè)奇地址。c)收發(fā)聯(lián)絡(luò)信號(hào)?TXRDY:發(fā)送器準(zhǔn)備好信號(hào),用來(lái)通知CPU,8251A已準(zhǔn)備好發(fā)送一個(gè)字符。?TXE:發(fā)送器空信號(hào),TXE為高電平時(shí)有效,用來(lái)表示此時(shí)8251A發(fā)送器中并行到串行轉(zhuǎn)換器空,說(shuō)明一個(gè)發(fā)送動(dòng)作已完成。?RXRDY:接收器準(zhǔn)備好信號(hào),用來(lái)表示當(dāng)前8251A已經(jīng)從外部設(shè)備或調(diào)制解調(diào)器接收到一個(gè)字符,等待CPU來(lái)取走。因此,在中斷方式時(shí),RXRDY可用來(lái)作為中斷請(qǐng)求信號(hào);在查詢方式時(shí),RXRDY可用來(lái)作為查詢信號(hào)。?SYNDET:同步檢測(cè)信號(hào),只用于同步方式。2.8251A與外部設(shè)備之間的連接信號(hào)8251A與外部設(shè)備之間的連接信號(hào)分為兩類:a)收發(fā)聯(lián)絡(luò)信號(hào)?:數(shù)據(jù)終端準(zhǔn)備好信號(hào),通知外部設(shè)備,CPU當(dāng)前已經(jīng)準(zhǔn)備就緒。?:數(shù)據(jù)設(shè)備準(zhǔn)備好信號(hào),表示當(dāng)前外設(shè)已經(jīng)準(zhǔn)備好。?:請(qǐng)求發(fā)送信號(hào),表示CPU已經(jīng)準(zhǔn)備好發(fā)送。?:允許發(fā)送信號(hào),是正確響應(yīng),由外設(shè)送往8251A。實(shí)際使用時(shí),這4個(gè)信號(hào)中一般只有必須為低電平,其它3個(gè)信號(hào)能夠懸空。b)數(shù)據(jù)信號(hào)?TXD:發(fā)送器數(shù)據(jù)輸出信號(hào)。當(dāng)CPU送往8251A的并行數(shù)據(jù)被轉(zhuǎn)變?yōu)榇袛?shù)據(jù)后,經(jīng)過(guò)TXD送往外設(shè)。?RXD:接收器數(shù)據(jù)輸入信號(hào)。用來(lái)接收外設(shè)送來(lái)的串行數(shù)據(jù),數(shù)據(jù)進(jìn)入8251A后被轉(zhuǎn)變?yōu)椴⑿蟹绞健?.時(shí)鐘、電源和地8251A除了與CPU及外設(shè)的連接信號(hào)外,還有電源端、地端和3個(gè)時(shí)鐘端。?CLK:時(shí)鐘輸入,用來(lái)產(chǎn)生8251A器件的內(nèi)部時(shí)序。同步方式下,大于接收數(shù)據(jù)或發(fā)送數(shù)據(jù)的波特率的30倍,異步方式下,則要大于數(shù)據(jù)波特率的4.5倍。?TXD:發(fā)送器時(shí)鐘輸入,用來(lái)控制發(fā)送字符的速度。同步方式下,TXC的頻率等于字符傳輸?shù)牟ㄌ芈?,異步方式下,TXC的頻率能夠?yàn)樽址麄鬏敳ㄌ芈实?倍、16倍或者64倍。?RXD:接收器時(shí)鐘輸入,用來(lái)控制接收字符的速度,和TXC一樣。在實(shí)際使用時(shí),RXC和TXC往往連在一起,由同一個(gè)外部時(shí)鐘來(lái)提供,CLK則由另一個(gè)頻率較高的外部時(shí)鐘來(lái)提供。?VCC:電源輸入?GND:地5.4、8251A的編程編程的內(nèi)容包括兩大方面:一是由CPU發(fā)出的控制字,即方式選擇控制字和操作命令控制字;二是由8251A向CPU送出的狀態(tài)字。1.方式選擇控制字(模式字)方式選擇控制字的格式如圖所示。2.操作命令控制字(控制字)操作命令控制字的格式如下:3、狀態(tài)字狀態(tài)字的格式如下:4.8251A的初始化a)芯片復(fù)位以后,第一次用奇地址端口寫(xiě)入的值作為模式字進(jìn)入模式寄存器。b)如果模式字中規(guī)定了8251A工作在同步模式,c)由CPU用奇地址端口寫(xiě)入的值將作為控制字送到控制寄存器,而用偶地址端口寫(xiě)入的值將作為數(shù)據(jù)送到數(shù)據(jù)輸出緩沖寄存器。六、設(shè)計(jì)方案6.1、硬件設(shè)計(jì)6.1.1設(shè)計(jì)原理圖從鍵盤(pán)輸入一個(gè)字符,將其ASCII碼加1后發(fā)送出去,再接收回來(lái)在屏幕上顯示,實(shí)現(xiàn)自發(fā)自收。6.1.2、實(shí)驗(yàn)注意事項(xiàng)在本實(shí)驗(yàn)方案中有以下幾點(diǎn)需要注意1、圖示電路8251的控制口地址為2B9H,數(shù)據(jù)口地址為2B8H。2、8253計(jì)數(shù)器的計(jì)數(shù)初值=時(shí)鐘頻率/(波特率*波特因子),這里的時(shí)鐘頻率接1MHZ,波特率若選1200,波特因子若選16,則計(jì)數(shù)器初值為52。3、收發(fā)采用查詢模式。6.2軟件設(shè)計(jì)6.2.1程序流程圖6.2.2編程實(shí)現(xiàn)datasegmentioportequ0cc00h-0280hio8253a equioport+280hio8253b equioport+283hio8251a equioport+2b8hio8251b equioport+2b9hmes1db'youcanplayakeyonthekeybord!',0dh,0ah,24hmes2ddmes1dataendscodesegmentassumecs:code,ds:datastart:movax,data movds,ax movdx,io8253b;設(shè)置8253計(jì)數(shù)器0工作方式 moval,16h outdx,al movdx,io8253a moval,52;給8253計(jì)數(shù)器0送初值 outdx,al movdx,io8251b;初始化8251 xoral,al movcx,03;向8251控制端口送3個(gè)0delay:callout1 loopdelay moval,40h;向8251控制端口送40H,使其復(fù)位 callout1 moval,4eh;設(shè)置為1個(gè)停止位,8個(gè)數(shù)據(jù)位,波特率因子為16 callout1 moval,27h;向8251送控制字允許其發(fā)送和接收 callout1 ldsdx,mes2;顯示提示信息 movah,09 int21hwaiti:movdx,io8251b inal,dx testal,01;發(fā)送是否準(zhǔn)備好 jzwaiti movah,01;是,從鍵盤(pán)上讀一字符 int21h cmpal,27;若為ESC,結(jié)束 jzexit movdx,io8251a incal outdx,al;發(fā)送 movcx,40hs51:loops51;延時(shí)next:movdx,io8251b inal,dx testal,02;檢查接收是否準(zhǔn)備好 jznext;沒(méi)有,等待 movdx,io8251a inal,dx;準(zhǔn)備好,接收 movdl,al movah,02;將接收到的字符顯示在屏幕上 int21h jmpwaitiexit:movah,4ch;退出 int21hout1procnear;向外發(fā)送一字節(jié)的子程序 outdx,al pushcx movcx,40hgg:loopgg;延時(shí) popcx retout1endpcodeends七、調(diào)試運(yùn)行1.對(duì)設(shè)計(jì)原理圖進(jìn)行檢查。主要針對(duì)電路連接中的線路連接進(jìn)行檢查,并生成對(duì)應(yīng)電路的網(wǎng)表。特別是對(duì)電路節(jié)點(diǎn)的連接檢查。2.對(duì)設(shè)計(jì)的程序進(jìn)行語(yǔ)法檢查。檢查程序中存在的語(yǔ)法錯(cuò)誤。編譯連接并下載到芯片中。3.對(duì)設(shè)計(jì)進(jìn)行綜合調(diào)試。對(duì)下載到芯片中的程序進(jìn)行功能檢查。直到完成設(shè)計(jì)要求的功能。運(yùn)行結(jié)果:經(jīng)過(guò)對(duì)下載的程序的調(diào)試,完成了設(shè)計(jì)要求的任務(wù):從鍵盤(pán)上輸入一個(gè)字符,將其ASCII碼加1后發(fā)送出去,在接受回來(lái)在屏幕上顯示,實(shí)現(xiàn)自發(fā)自收。八、課程設(shè)計(jì)總結(jié)課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí)發(fā)現(xiàn)、提出、分析和解決實(shí)際問(wèn)題

溫馨提示

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