

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 課程設計(綜合實驗)報告</p><p> ( 2012 -- 2013 年度第 一 學期)</p><p> 名 稱: 微機原理與應用 </p><p> 題 目: 串行通信實現(xiàn)文件傳輸 </p><p> 院 系: 控制與計算機工程學院 </p>
2、<p> 日期: 2013年 1 月 3日</p><p> 課程設計的目的與要求。</p><p><b> 設計的目的。</b></p><p> 掌握串行通信的一般原理。</p><p> 掌握雙機通迅的方法。</p><p> 掌握8250A的的工作原理
3、。</p><p> 能夠應用8250A實現(xiàn)雙機串行通信。</p><p> 鞏固所學知識,培養(yǎng)分析和解決問題的能力。</p><p><b> 設計的要求。</b></p><p> 設計雙機文件互傳程序,即每臺計算機均有文件發(fā)送和接受功能。要求采用盡可能高的波特率,操作方式盡可能靈活、實用。</p>
4、;<p> 1.3 設計的意義。</p><p> 在微機原理及應用課程中學過了微機各個基本組成模塊的原理和編程技術,在實驗室現(xiàn)有的設備情況下,設計一個具有一定功能的應用系統(tǒng),達到對知識的深入理解和融會貫通,培養(yǎng)動手能力、實踐能力以及團隊合作的精神。</p><p><b> 設計正文。</b></p><p><b&
5、gt; 設計的基本原理。</b></p><p><b> 串行異步通信規(guī)程。</b></p><p> 串行異步通信規(guī)程是把一個字符看作一個信息單元,每一個字符中的各位以固定的時間傳送。因此,這種傳送方式在同一字符內(nèi)部是同步的,而字符間是異步的。在異步通信中,收發(fā)雙方取得同步的方法是:采用在字符格式中設置起始位和停止位的辦法。在一個有效字符正式發(fā)送
6、之前,先發(fā)送一個起始位,而在字符結(jié)束時發(fā)送一至兩個停止位。當接收到起始位時,便能知道接著是有效的字符位,于是開始接收字符,檢測到停止位時,就將接收到的有效字符裝載到接收緩沖器中。</p><p> 2.1.2 8250部分引腳。</p><p> ?。?)D0-D7:雙向數(shù)據(jù)線,用于傳送和接收數(shù)據(jù)。</p><p> ?。?)A2-A0:地址信號,實現(xiàn)片內(nèi)各寄
7、存器的選擇。</p><p><b> ?。?),片選信號。</b></p><p> ?。?):數(shù)據(jù)設備準備就緒信號,低電平表示</p><p> 數(shù)據(jù)設備可與8250進行數(shù)據(jù)傳輸。</p><p> (5):請求發(fā)送信號,低電平時通知數(shù)據(jù)設備,8250已準</p><p><b>
8、; 備好發(fā)送數(shù)據(jù)。</b></p><p> (6):清除發(fā)送信號,每當Modem狀態(tài)寄存器的CTS位改</p><p> 變狀態(tài)時,若允許Modem狀態(tài)中斷,就會產(chǎn)生一次中斷。</p><p> ?。?)SOUT和SIN:串行數(shù)據(jù)輸出、輸入端。</p><p> (8)XTAL:外部時鐘輸入端。</p>&
9、lt;p> (9)INTRPT:中斷請求輸出,高電平有效,此時中斷允許寄存器IER相應位必須為1。</p><p> ?。?0):用戶指定的輸出信號, 分別受控于Modem控制寄存器的D2和D3位。如果編程將D2和D3設定為1,則均為有效的低電平。8250復位后輸出高電平。</p><p><b> 地址譯碼電路</b></p><p&g
10、t; 8250 內(nèi)部寄存器編址</p><p><b> 在接收數(shù)據(jù)時:</b></p><p> (1) 接收移位寄存器將SIN引腳的串行數(shù)據(jù)進行移位輸入。</p><p> (2) 檢測到SIN輸入信號變低后,連續(xù)測試8個接收時鐘周期。</p><p> ?。?) 如果采樣到的都是低電平,則確認為起始位,否則
11、為干擾信號。</p><p> (4) 找到起始位后,每隔16個接收時鐘脈沖對SIN輸入的數(shù)據(jù)進行一次采樣,直到完整的字符幀結(jié)束。</p><p> ?。?) 接收移位寄存器將接收到的數(shù)據(jù)轉(zhuǎn)化為并行數(shù)據(jù)送入到接收數(shù)據(jù)緩沖器RBR。</p><p><b> 在發(fā)送數(shù)據(jù)時:</b></p><p> ?。?) CPU送
12、來的并行數(shù)據(jù)存放在發(fā)送保持寄存器中。</p><p> (2) 數(shù)據(jù)經(jīng)過發(fā)送移位寄存器進行并串轉(zhuǎn)換。</p><p> ?。?) 按規(guī)定格式加上起始位、奇偶校驗位和停止位,構(gòu)成完整的串行數(shù)據(jù)幀。</p><p> ?。?) 數(shù)據(jù)由SOUT發(fā)出。</p><p> 2.1.4 8250A內(nèi)部結(jié)構(gòu)。</p><p>&
13、lt;b> 2.2 設計方案。</b></p><p> 2.2.1 總體方案。(見附錄)</p><p> 2.2.2 硬件原理圖。</p><p> 2.2.3 8250A初始化流程。</p><p> 2.3 程序設計。</p><p> 2.3.1 發(fā)送程序(查詢方式):<
14、;/p><p> DATA SEGMENT</p><p> MSG1 DB 13,10,'Please input a char : ', 13,10,13,10,'$' </p><p> MSG2 DB 'transmission start:', 13,10,13,10,'$'
15、; ;回車換行</p><p> DATA ENDS</p><p> CODE SEGMENT</p><p> ASSUME CS:CODE,DS:DATA</p><p> START: MOV AX,DATA</p><p> MOV DS,AX</p><p
16、> MOV DX,3FBH ;通信線路控制寄存器地址</p><p> MOV AL,80H ;允許訪問波特率因子寄存器</p><p> OUT DX,AL</p><p> MOV DX,3F8H ;置波特率因子寄存器</p><p> MOV A
17、L,12H ;波特率因子低字節(jié)</p><p> OUT DX,AL</p><p> MOV DX,3F9H</p><p> MOV AL,0 ;波特率因子高字節(jié)</p><p> OUT DX,AL ;波特率設置為最大值9600</p>
18、<p> ;----------------------------------------------------------------------------</p><p> MOV DX,3FBH ;置線路控制寄存器</p><p> MOV AL,0BH ;數(shù)據(jù)位8位、停止位1位、奇校驗</p><p
19、> OUT DX, AL</p><p> MOV DX,3FCH ;置MODEM控制寄存器</p><p> MOV AL,03H ;禁止中斷,發(fā)送接收雙向就緒</p><p> OUT DX, AL</p><p> MOV DX,3F9H ;置中斷
20、允許寄存器</p><p> MOV AL,0 ;屏蔽所有中斷</p><p> OUT DX,AL</p><p> MOV DX,OFFSET MSG2 ;顯示發(fā)送提示信息</p><p> MOV AH,9</p><p> INT 21H
21、 ;顯示以$結(jié)尾的字符串</p><p> ;-----------------------------------------------------------------------------</p><p> MOV DX,OFFSET MSG1 ;顯示發(fā)送提示信息</p><p> MOV AH,9</p><
22、;p> INT 21H ;顯示以$結(jié)尾的字符串</p><p> LOP: MOV AH,1 ;讀取按鍵字符,存入AL中,并顯示</p><p> INT 21H</p><p> MOV DX,3F8H ;發(fā)送數(shù)據(jù)保持寄存器地址,準備發(fā)送該字符</p>
23、<p> OUT DX, AL</p><p> CMP AL,0DH ;判斷按下字符是否是回車?</p><p> JZ OVER ;是,則結(jié)束</p><p> JMP LOP ;不是,繼續(xù)循環(huán)</p><p> OVER: MOV
24、 AH,4CH ;返回DOS</p><p> INT 21H</p><p><b> CODE ENDS</b></p><p><b> END START</b></p><p> 2.3.2 接收程序(查詢方式):</p><p>
25、 DATA SEGMENT</p><p> RBUF DB 30 DUP(0)</p><p> DISP DB 'RECEIVE START:', 13,10,13,10,'$'</p><p> ERROR DB 'RECEIVE ERROR!', 13,10,13,10,&
26、#39;$'</p><p> DATA ENDS</p><p> CODE SEGMENT</p><p> ASSUME CS:CODE,DS:DATA</p><p> START: MOV AX,DATA</p><p> MOV DS,AX</p&
27、gt;<p> LEA SI,RBUF;置接收緩沖區(qū)地址指針</p><p> MOV DX,3FBH;通信線路控制寄存器地址,置DLAB=1</p><p> MOV AL,80H</p><p> OUT DX,AL</p><p> MOV DX,3F8H;置波特率因子寄存
28、器</p><p> MOV AL,12H;波特率因子低字節(jié)</p><p> OUT DX, AL</p><p> MOV DX,3F9H</p><p> MOV AL,0;波特率因子高字節(jié)</p><p> OUT DX,AL;波特率設置為最大值9600<
29、/p><p> ;----------------------------------------------------------------------------</p><p> MOV DX,3FBH;置通信線路控制寄存器</p><p> MOV AL,0AH;數(shù)據(jù)位8位、停止位1 位、奇校驗</p><p>
30、 OUT DX,AL</p><p> MOV DX,3FCH;置MODEM控制寄存器</p><p> MOV AL,03;禁止中斷,發(fā)送接收雙向就緒</p><p> OUT DX,AL</p><p> MOV DX,3F9H;置中斷允許寄存器</p><p>
31、 MOV AL,0;屏蔽所有中斷</p><p> OUT DX,AL</p><p> MOV DX,OFFSET DISP</p><p> MOV AH,9</p><p> INT 21H;顯示接收提示信息</p><p> MOV DX,3F
32、8H</p><p> IN AL,DX;讀接收緩沖器內(nèi)容,不處理</p><p> LOP: MOV DX,3FDH;讀線路狀態(tài)寄存器</p><p> IN AL,DX</p><p> TEST AL,1EH;測試。該寄存器除最低位只要有一位是1就算出現(xiàn)錯誤</p>
33、<p> JNZ ER;有錯誤,轉(zhuǎn)錯誤顯示</p><p> TEST AL,01H;無錯誤,則測試最低位接收數(shù)據(jù)準備好?</p><p> JZ LOP;未準備好則循環(huán)測試</p><p> MOV DX,3F8H;準備好則接收字符</p><p> IN AL,DX</
34、p><p> AND AL,7FH</p><p> CMP AL,13H;判斷接收結(jié)束嗎?</p><p> JZ OVER;結(jié)束轉(zhuǎn)OVER</p><p> MOV [SI],AL;未結(jié)束則存入緩沖區(qū)</p><p> INC SI</p><p&
35、gt; MOV DL,AL;顯示該字符</p><p> MOV AH,02</p><p> INT 21H</p><p> JMP LOP</p><p> ER: MOV DX,2F8H;清標志位,接收數(shù)據(jù)緩沖器的內(nèi)容一旦讀過后,8250有錯誤位自動復位</p>
36、<p> IN AL,DX</p><p> MOV DX,OFFSET ERROR;顯示錯誤信息</p><p> MOV AH,9</p><p> INT 21H</p><p> JMP LOP</p><p> OVER: MOV
37、 DL,AL</p><p> MOV AH,2</p><p> INT 21H</p><p> MOV AH,4CH;返回DOS</p><p> INT 21H</p><p> CODE ENDS</p><p> END S
38、TART</p><p> 課程設計的總結(jié)和結(jié)論。</p><p><b> 3.1 設計結(jié)論。</b></p><p> 雙機串行通信,在一臺PC機鍵入字串符,從8250A的發(fā)送端發(fā)送給另一臺PC機,另一臺PC機的 8250A的接收端接收,然后在屏幕上顯示出來。</p><p><b> 3.2 設計
39、總結(jié)。</b></p><p> 通過這一周時間的微機課程設計,我體會很多,由于之前從未接觸過課程設計,這也是我進入大學的第一個課程設計,感到新鮮的同時不乏焦慮?,F(xiàn)在終于將它完成了,感到受益頗多。首先,這是一份考驗我們自覺性、動手能力與協(xié)作意識的任務。在長達一個周的時間里,我們不斷發(fā)現(xiàn)自身不足也不斷自我完善。其次,未知并不可怕,可怕的是因未知而止步。通過本次課程設計,我發(fā)現(xiàn)我在課堂上所學的知識是非常
40、有限的,這次的課程設計就是一個很好的考驗。實踐中我遇到很多問題,有些函數(shù)的運用我們還沒掌握牢固,甚至初次接觸,一些簡單的循環(huán)語句都可能出錯,所以我深刻感受到只有實踐,才能知道自己真正掌握了多少,也感悟到了理論結(jié)合實際的重要性。最后,團結(jié)就是力量一點都不假,三個臭皮匠頂一個諸葛亮。在團組合作時我們更便于互相取長補短,相互討論,效果很好。</p><p><b> 參考文獻。</b></
41、p><p> 【1】李繼燦,《新編16/32位微型計算機原理及應用(第四版)》,清華大學出版社,2008年</p><p> 【2】陳慶軍,《微機接口——雙機通迅》,中南大學,2011-7-9</p><p> 【3】《可編程接口芯片8250》,http://wenku.baidu.com/view/1201257b1711cc7931b7161c.html<
42、;/p><p> 【4】《8250串行接口實驗》,http://wenku.baidu.com/view/c7e848bf960590c69ec376cd.html</p><p> 【5】周佩玲,彭虎,傅忠謙編.微機原理與接口技術學習指導(基于16位機).北京:電子工業(yè)出版社, 2005.4</p><p><b> 附錄:總體方案</b>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 微機原理課程設計報告-雙機串行通信
- 串行通信實驗
- 微機原理與接口串行通信
- 課程設計 雙機串行通信的實現(xiàn)
- 雙機串行通信課程設計
- 串行通信系統(tǒng)微機課程設計說明書
- 接口與通信課程設計---雙擊串行通信
- 串行通信的實現(xiàn)
- 基于FPGA的串行通信實現(xiàn)與CRC校驗.pdf
- 第七次 串行通信實驗
- 微機原理串口通信課程設計
- 雙機串行通信的設計與實現(xiàn)
- pc機與單片機串行通信課程設計
- 串行通信接口
- 雙機串行通信的設計與實現(xiàn)
- 雙擊串行通信
- 串行通信75470
- sci串行通信
- 串行通信75305
- 串行通信設計外文翻譯--基于rs-232的串行通信設計
評論
0/150
提交評論