版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
接口實驗輔導第1頁,共46頁,2023年,2月20日,星期一雙機接口通訊保護模式下的中斷實驗利用鍵盤驅動實驗熟悉WDM編程第2頁,共46頁,2023年,2月20日,星期一雙機接口通訊熟悉串行通訊原理了解RS-232C串行接口標準及連接方法。掌握16550接口芯片的編程方法,實現雙工通訊。兩臺微機之間通過RS-232C電纜連接實現串行通信。(已連好,不用動)。第3頁,共46頁,2023年,2月20日,星期一異步方式全雙工通信,每次傳送單個字符,波特率因子64,7位數據位,1位停止位。通信雙方均采用查詢方式??捎玫乃夭模篠jtxS.asm微機串口地址(實驗室老師會說明用的是哪個串口)數據口:02F8H(COM2)/03f8H(COM1)命令/狀態(tài)口:02FDH(COM2)/03fDH(COM1)第4頁,共46頁,2023年,2月20日,星期一此實驗中如果有實驗箱,則實驗箱上的8237芯片必須隨便連接一個片選信號,通訊雙方(對面兩組)參數設定保持一致即可。如果沒有實驗箱則沒有這個要求。當輸入“*”號時退出。匯編成exe文件格式。實驗報告中要求包括雙機通信的接口圖。第5頁,共46頁,2023年,2月20日,星期一和8250類似,可以看成增強型的8250。16550增加了16個字節(jié)的FIFO隊列。8250的最大通訊速率是19200bps,16550的最大通訊速率是115200bps。包括初始化部分與操作部分。第6頁,共46頁,2023年,2月20日,星期一初始化需要編程線路控制寄存器和分頻系數鎖存器這兩個寄存器。線路控制寄存器(LCR)如教材P157圖6-27所示,假設地址為03fbH。格式:DLSBSTPPESL1L0L1L0:數據長度:00-5位;01-6位;10-7位;11-8位。S:停止位的位數:0-1位;1-1.5位(5位數據)或2位(6、7、8位數據)。第7頁,共46頁,2023年,2月20日,星期一ST、P、PE編碼的作用如下:001奇校驗101檢驗位置1111檢驗位清0。SB:發(fā)送間隔符,間隔符由兩幀邏輯“0”構成。第8頁,共46頁,2023年,2月20日,星期一DL:分頻系數鎖存位(波特率因子)=0時讀/寫03f8H端口為數據;寫03f9H端口為中斷允許寄存器。=1時讀/寫03f8H端口為分頻系數低8位值。寫03f9H端口為分頻系數高8位值。第9頁,共46頁,2023年,2月20日,星期一當編程的線路控制寄存器LCR的D7位DL=1時,接下來向03f8H和03f9H端口寫入的值為分頻系數16位值,允許僅寫低8位。例如,置波特率9600時,分頻系數=12。第10頁,共46頁,2023年,2月20日,星期一設8位數據,2位停止位,偶校驗無間隔傳送,則線路控制寄LCR=9FH。MOVAL,9FHMOVDX,03fbHOUTDX,AL;初始化LCR第11頁,共46頁,2023年,2月20日,星期一MOVAL,12;分頻率數低8位MOVDX,03f8H;低8位系數端口OUTDX,AL;初始化分頻系數低位MOVAL,0MOVDX,03f9H;高8位系數端口OUTDX,AL;分頻系數高位填0第12頁,共46頁,2023年,2月20日,星期一注意:初始化的兩部分都完成后,在讀寫操作之前要將LCR的最高位DL清“0”,即再寫一次LCR。第13頁,共46頁,2023年,2月20日,星期一MOVAL,1FH;將DL清“0”的線路控制字MOVDX,03fbH;端口地址OUTDX,AL;線路控制器清零第14頁,共46頁,2023年,2月20日,星期一在初始化線絡控制寄存器以及分頻率數后,還需編程FIFO控制寄存器。FIFO控制寄存的地址為03FAH,16550的FIFO控制寄存器的格式為:第15頁,共46頁,2023年,2月20日,星期一EN:FIFO允許,0-禁止,1-允許。REVCRET:接收器復位,1-復位接收器。XMITRET:發(fā)送器復位1-復位發(fā)送器。DMA:方式控制:0-用作16550UART;1-FIFO方式第16頁,共46頁,2023年,2月20日,星期一RT1RT0:接收器觸發(fā)值00-1字節(jié)觸發(fā)01-4字節(jié)觸發(fā)10-8字節(jié)觸發(fā)11-14字節(jié)觸發(fā)第17頁,共46頁,2023年,2月20日,星期一例:置FIFO允許,接收器復位,發(fā)送器復位的控制字為07HMOVAL,07H;FIFO控制字MOVDX,03FAHOUTDX,AL第18頁,共46頁,2023年,2月20日,星期一同8250一樣,16550也有一個狀態(tài)寄存器,稱為線路狀態(tài)寄存器,格式如下:第19頁,共46頁,2023年,2月20日,星期一DR:數據就緒,0-沒接收到數據,1-FIFO中有數據。OE:超越錯,1-有超越錯。PE:奇偶錯,1-有奇偶錯。FE:幀格式錯,1-有幀格式錯。BI:間隔指示,1-接收到間隔符。第20頁,共46頁,2023年,2月20日,星期一TH:發(fā)送器保持寄存器0-發(fā)送未完成1-發(fā)送完成。TE:發(fā)送器空,1-空。ER:錯誤標志,1-至少有一個錯誤。查詢式發(fā)送/接收時,在進行發(fā)送/接收之前必須先查詢線路狀態(tài),之后才可以進行相應的收/發(fā)操作。第21頁,共46頁,2023年,2月20日,星期一發(fā)送程序:
SEND:MOVDX,狀態(tài)端口號;
IN
AL,DX;讀狀態(tài)
TESTAL,20H;檢發(fā)送器就緒
JZSEND MOVDX,數據端口號;
MOVAL,data;發(fā)送的數據
OUTDX,AL第22頁,共46頁,2023年,2月20日,星期一接收程序:RECV:MOVDX,狀態(tài)端口號;
INAL,DX;讀狀態(tài)
TESTAL,02H;是否接收到數據
JZRECV TESTAL,0EH;檢3個錯誤
JNZERR; 出錯轉處理
MOVDX,數據端口號;
INAL,DX;讀數據第23頁,共46頁,2023年,2月20日,星期一實驗在純DOS環(huán)境下進行(1)實驗中可將鍵盤敲入的數據發(fā)送。讀鍵盤數據用INT21H,Ah=01H。(2)實驗中可將接收到的字符送CRT顯示,顯示也用INT21H,Ah=09H。第24頁,共46頁,2023年,2月20日,星期一可用的素材BhzdS.asm:經過修改可以運行的源代碼。BhzdXg.exe:最終版本的運行效果示意。第25頁,共46頁,2023年,2月20日,星期一要求:(1)在保護模式32位代碼段中添加如下鍵盤中斷處理程序:KeyboardHandler:inal,60hcmpal,1jnznotEscmovecx,1notEsc:incbyteptrgs:[((80*1+70)*2)];屏幕第1行,第70列。mov al,20hout 20h,al;發(fā)送EOIIretd鍵盤中斷的中斷向量號為21h。第26頁,共46頁,2023年,2月20日,星期一(2)在保護模式下,按Esc鍵后,返回實模式。第27頁,共46頁,2023年,2月20日,星期一在純DOS下:編輯BhzdS.asmmasmBhzdS.asm;linkBhzdS.obj;BhzdS.asm(運行)最后BhzdS.exe的運行結果應和BhzdXg.exe一致。第28頁,共46頁,2023年,2月20日,星期一也可以在模擬DOS環(huán)境下,比如DOSBOX(會提供下載)中編輯、匯編、運行。DOSBOX使用方法在“DosBox用法.txt”文件中說明。在windows環(huán)境中雙擊“dosbox.exe”啟動DOSBOX.第29頁,共46頁,2023年,2月20日,星期一(1)執(zhí)行結果(2)簡述程序執(zhí)行過程(其中的重要步驟)(3)列出對素材源程序的修改部分(4)心得體會第30頁,共46頁,2023年,2月20日,星期一可用素材:JieKouExp3文件夾中的內容。第31頁,共46頁,2023年,2月20日,星期一實驗步驟幫助在“JieKouExp3.txt”文件中。OSRLoader可以加載、啟動、停止驅動程序(.sys文件)。針對不同系統(tǒng)有兩個版本OsrLoader_XpOsrLoader_2k第32頁,共46頁,2023年,2月20日,星期一basic_hardware文件夾的作用:啟動OSRLoader,選擇.sys文件(basic_hardware\basic_hardware\objchk_wnet_x86\i386目錄中),再按"RegisterService",按"StartService",就會看到鍵盤燈在不停的閃爍.按"StopService"以后,就不閃爍了.這個文件夾有驅動源程序“basic_hardware.c”。作用是演示鍵盤控制。第33頁,共46頁,2023年,2月20日,星期一basic_keysniff文件夾的作用:啟動DebugView.exe.啟動OSRLoader,選擇.sys文件(basic_keysniff\bhwin_keysniff\objchk_wnet_x86\i386目錄中),再按“RegisterService”,按“StartService”,DebugView.exe里邊顯示一些信息。之后,所有鍵盤按鍵的掃描碼保存在緩沖區(qū)里面。按“StopService”以后,DebugView.exe把緩沖區(qū)里的鍵盤的掃描碼顯示出來了。第34頁,共46頁,2023年,2月20日,星期一作用是演示驅動程序利用緩沖區(qū)傳遞字符。驅動程序源代碼在“bhwin_keysniff.c”中。第35頁,共46頁,2023年,2月20日,星期一Ioctl_sample啟動OSRLoader,選擇.sys文件(ioctl_sample\IoCtrlSample\BIN\x86目錄中),再按"RegisterService",按"StartService“.執(zhí)行ioctl_sample\IoCtrlSample\BIN\x86\IoCtrl.exe,選1,利用ioctl接口發(fā)送數據到driver;選3,從driver接收數據。驅動程序源代碼是“Driver.c”和“IoCtrl.c”
。作用是演示通過驅動及控制臺程序接收發(fā)送數據。第36頁,共46頁,2023年,2月20日,星期一綜合上述3個例子程序的基礎上,(1)驅動程序保存鍵盤的掃描碼,Console應用程序發(fā)送ioctl從驅動程序中讀入掃描碼.將把掃描碼轉成ASCII碼并顯示出來。(2)Console應用程序向驅動程序發(fā)送ioctl,要求驅動程序設置鍵盤燈的狀態(tài)。第37頁,共46頁,2023年,2月20日,星期一文件夾中還有兩個程序:sniff.sys,sniffui.exe。其中sniff.sys是編寫完整的驅動程序經過編譯后的結果,sniffui.exe啟動后可以查看鍵盤輸入字符。這個程序的運行效果也就是最終要達到的效果。第38頁,共46頁,2023年,2月20日,星期一啟動OSRLoader,選擇sniff.sys文件,,再按"RegisterService",按"StartService“.運行sniffui.exe,選擇1,鍵盤燈不停的閃爍.按Ctrl+C退出程序,停止閃爍.運行sniffui.exe,選擇2.之后,在其他程序中輸入字母、數字,輸入內容由sniffui.exe顯示出來。第39頁,共46頁,2023年,2月20日,星期一利用VC的集成編譯環(huán)境和DDK庫,這個需要設置VC的include路徑和lib路徑,以及編譯參數。利用DDK的命令行編譯.c文件(進入驅動源程序所在目錄后執(zhí)行build-cef)。第40頁,共46頁,2023年,2月20日,星期一DDKDDK+VC第41頁,共46頁,2023年,2月20日,星期一驅動程序中鍵盤的中斷向量號可能會因操作系統(tǒng)版本不同而需要改變,比如win98,win2000,windowsxp和windowsvista。如果設置不對,則不能從鍵盤讀數據或者控制。比如basic_keysniff中的效果不修改可能無法演示。這時可以利用sea
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度米面產品冷鏈物流配送服務合同4篇
- 2025年度模特影視廣告模特聘用合同協(xié)議
- 二零二五年度奶牛養(yǎng)殖信息化管理系統(tǒng)采購合同4篇
- 2025年度藝術品抵押貸款服務合同
- 杯間乾坤酒中情懷中國傳統(tǒng)文化之酒文化講解
- 2025年度個人房產托管服務合同范本2篇
- 上海國資國企創(chuàng)新基地2024年度區(qū)塊鏈創(chuàng)新應用白皮書
- 二零二五年度環(huán)保污染治理設施運營合同4篇
- 二零二五年度房地產項目營銷策劃合同
- 課題申報參考:農村婦女土地權益特殊保障制度研究-基于浙江、四川、貴州12區(qū)縣的實證分析
- GB/T 16895.3-2024低壓電氣裝置第5-54部分:電氣設備的選擇和安裝接地配置和保護導體
- 安徽省合肥市2025年高三第一次教學質量檢測地理試題(含答案)
- 計劃合同部部長述職報告范文
- 風光儲儲能項目PCS艙、電池艙吊裝方案
- 人教版高一地理必修一期末試卷
- GJB9001C質量管理體系要求-培訓專題培訓課件
- 二手車車主寄售協(xié)議書范文范本
- 窗簾采購投標方案(技術方案)
- 基于學習任務群的小學語文單元整體教學設計策略的探究
- 高中英語原版小說整書閱讀指導《奇跡男孩》(wonder)-Part one 講義
- GB/T 9755-2001合成樹脂乳液外墻涂料
評論
0/150
提交評論