版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
微機(jī)原理實(shí)驗(yàn)課件第一頁,共五十一頁,編輯于2023年,星期二前言《微型計(jì)算機(jī)原理及應(yīng)用》是電子信息工程、計(jì)算機(jī)應(yīng)用及其自動化等專業(yè)的一門重要的技術(shù)基礎(chǔ)課,課程內(nèi)容貫穿全書,前后聯(lián)系密切,概念抽象,很難理解。因此,為了配合該課程的學(xué)習(xí),培養(yǎng)學(xué)生調(diào)試、運(yùn)行匯編語言源程序的能力,加深和提高學(xué)生對微處理器和典型的可編程接口芯片功能的理解能力,使學(xué)生對該課程的內(nèi)容有一個(gè)感性的認(rèn)識,必須加強(qiáng)實(shí)踐。全書共分三章。第一章簡要介紹了匯編語言程序設(shè)計(jì)上機(jī)調(diào)試用的DEBUG調(diào)試程序中的一些常用命令及其用法。第二章簡要介紹了完成微機(jī)原理及應(yīng)用硬件接口實(shí)驗(yàn)所用到的實(shí)驗(yàn)環(huán)境組成。第三章編排了此門實(shí)驗(yàn)課必須完成的幾個(gè)實(shí)驗(yàn)內(nèi)容,包括8086尋址方式練習(xí)、常用匯編語言程序設(shè)計(jì)練習(xí)、簡單I/O接口設(shè)計(jì)實(shí)驗(yàn)、8255A并行接口實(shí)驗(yàn)、8253定時(shí)器/計(jì)數(shù)器實(shí)驗(yàn)、A/D轉(zhuǎn)換實(shí)驗(yàn)等。學(xué)生至少應(yīng)完成大綱要求的4個(gè)實(shí)驗(yàn)。由于時(shí)間倉促,加之編者水平有限,此書的編寫難免有不妥之處,望廣大同學(xué)及同行多提寶貴意見。
編者2001年7月于西安電子科技大學(xué)第二頁,共五十一頁,編輯于2023年,星期二目錄第一章DEBUG介紹第二章實(shí)驗(yàn)系統(tǒng)環(huán)境介紹
第三章微機(jī)原理與應(yīng)用實(shí)驗(yàn)第三頁,共五十一頁,編輯于2023年,星期二第一章DEBUG介紹DEBUG是DOS為匯編語言提供的一種調(diào)試軟件。它可用于檢查、修改存儲單元和寄存器的內(nèi)容,裝入及運(yùn)行用戶程序。一、
啟動DEBUG啟動DEBUG時(shí),可以指定被調(diào)試文件,也可以先不指定被調(diào)試文件。如果指定了文件名,DEBUG啟動后會把指定的文件裝入內(nèi)存。例如,要調(diào)試ADD.EXE文件,只要鍵入:K:>DEBUGADD.EXE-這時(shí)已進(jìn)入DEBUG狀態(tài),提示符為一短線“-”,可用各種調(diào)試命令對ADD.EXE進(jìn)行操作。如果在啟動DEBUG時(shí),未指定被調(diào)試文件,進(jìn)入DEBUG后要用N和L命令將被調(diào)試文件裝入內(nèi)存。例如:K:>DEBUG;啟動DEBUG-NADD.EXE;指定ADD.EXE文件-L;裝如被指定的文件-二、
主要調(diào)試命令下面介紹的調(diào)試命令均在DEBUG狀態(tài)下(顯示提示符-)使用。首先說明一下命令中所需地址參數(shù)的選擇形式。Address(地址):包括段地址與偏移量。但在使用時(shí)為了方便操作,有時(shí)可省略段地址,或省略段地址和偏移量,其可能的形式有以下四種:a.
輸入段地址和偏移地址。如1500:10;段地址為1500H,偏移地址0010H第四頁,共五十一頁,編輯于2023年,星期二b.用寄存器表示段地址,用數(shù)字表示偏移地址。如
DS:10;取DS所指示的內(nèi)容為段地址c.只輸入偏移地址,段地址取默認(rèn)的段寄存器所指示的地址。如
10;當(dāng)前段,偏移地址為10Hd.只輸入調(diào)試命令,無地址輸入,此時(shí)默認(rèn)為當(dāng)前段,且偏移地址取有關(guān)偏移地址寄存器中的內(nèi)容。
1.
R(Register)顯示/修改寄存器內(nèi)容(1)顯示CPU所有寄存器和狀態(tài)標(biāo)志,命令格式:-R;鍵入單字母命令R及回車。例如:-RAX=0000BX=0000CX=0024DX=0000SP=0000BP=0000SI=0000DI=0000DS=14E3SS=14F3CS=14F4IP=0000NVUPEIPLNZNAPONC
其中,NVUPEIPLNZNAPONC為各標(biāo)志位的當(dāng)前狀態(tài)。(2)顯示/修改單個(gè)寄存器內(nèi)容,命令格式為:-Rregistername;鍵入R與寄存器名例如要顯示AX的內(nèi)容??涉I入:-RAX
機(jī)器顯示為:
AXnnnn
:即AX的內(nèi)容為nnnn。機(jī)器等待在冒號(:)之后輸入新的數(shù)值。如輸入1234則AX的內(nèi)容改為1234H。若不輸入新的值,直接按回車即可結(jié)束當(dāng)前命令。(3)顯示/修改各標(biāo)志位狀態(tài)。命令格式為-RF
系統(tǒng)響應(yīng)如下:
NVUPEIPLNZNAPONC-第五頁,共五十一頁,編輯于2023年,星期二此時(shí),可修改各狀態(tài)位的狀態(tài)。如NVUPEIPLNZNANC-CYOVNG則進(jìn)位位由NC改成CY,溢出位由NV改成OV,符號位由PL改成NG。修改各狀態(tài)時(shí)無先后次序關(guān)系。若不修改狀態(tài)位,直接按回車鍵來結(jié)束RF命令。標(biāo)志寄存器共有9位,除追蹤標(biāo)志T不能顯示/修改外,其他8個(gè)標(biāo)志位都可用RF命令顯示或修改。2.
U(Unassemble)反匯編命令U命令的作用是把內(nèi)存中程序的二進(jìn)制代碼以指令助記符形式顯示出來(稱為反匯編),其目的是方便用戶用助記符形式閱讀程序,而不必細(xì)究其機(jī)器代碼,方便調(diào)試操作。(1)從指定地址開始反匯編32個(gè)字節(jié),其命令格式是:-U[address]隨著地址給出形式不同,U命令可以有以下幾種形式:-U段地址:偏移地址-UCS:偏移地址-U偏移地址;默認(rèn)CS內(nèi)容為段地址-U;默認(rèn)(CS)為段地址,(IP)為偏移地址下面給出一個(gè)反匯編顯示實(shí)例:-U1501:01501:0000B8F314MOVAX,14F31501:00038ED0MOVSS,AX1501:0005BCC800MOVSP,00C81501:00081EPUSHDS1501:00092BC0SUBAX,AX1501:000B50PUSHAX1501:000CB80015MOVAX,15001501:000F8ED8MOVDS,AX1501:0011A10000MOVAX,[0000]1501:001403060200ADDAX,[0002]1501:0018A30400MOV[0004],AX1501:001BCBRETF第六頁,共五十一頁,編輯于2023年,星期二┆
(2)從起始地址反匯編到結(jié)束地址,命令格式:-U[range]例如:-UCS:010;從地址CS:0開始反匯編到地址CS:0010H。
1.
D(Dump)顯示內(nèi)存單元內(nèi)容,其命令形式有下列幾種:-D段地址:偏移地址;從此地址起顯示80H個(gè)字節(jié)-DDS:偏移地址;(DS)為段地址-D偏移地址;默認(rèn)DS為段地址寄存器-D段地址:偏移地址結(jié)束偏移地址;從起始地址顯示到結(jié)束地址下面給出一個(gè)顯示實(shí)例:-U1500:103F;從1500:0010開始顯示到1500:003F單元1500:00103031323334353637-38393031323334340123456789012341500:00204142434445460000–0000000000000000ABCDEF……….1500:00306162636465660000–0000000000000000abcdef……….顯示內(nèi)存單元內(nèi)容時(shí),每行顯示十六個(gè)字節(jié)(隨顯示器規(guī)格不同可能會有差異),每行的左邊給出了該行的第一個(gè)字節(jié)的段地址和偏移地址,十六個(gè)字節(jié)顯示完成后,在該行后面顯示出各字節(jié)的內(nèi)容所代表的可視字符,若不是可視字符則用圓點(diǎn)·來代替。1.
E(Enter)修改內(nèi)存單元內(nèi)容。(1)不連續(xù)修改內(nèi)存單元內(nèi)容,命令格式如下:-Eaddress例如-E1500:0則顯示1500:0單元內(nèi)容1500:000024.-第七頁,共五十一頁,編輯于2023年,星期二如果需要修改該單元內(nèi)容可以由鍵盤輸入數(shù)字,在按一次空格顯示/修改下一單元的內(nèi)容。例如,把1500:0000單元修改成78,操作如下:1500:000024.7836.-其中36為1500:0001單元的內(nèi)容。用戶可以不斷修改相繼單元的內(nèi)容,若某一字節(jié)無需修改可用空格鍵跳過,直到用回車結(jié)束該命令為止。(2)修改連續(xù)單元的內(nèi)容。命令格式為:-EaddressList例:-E1500:01234‘123’該命令將12H、34H、31(1的ASCⅡ碼)、32H、33H存放到從1500:0000開始的連續(xù)單元中去1.
F(Fill)內(nèi)存填充命令。命令格式為:-FrangList例如:-F1500:05F3‘XYZ’37使1500:0000~1500:0004單元依次置入5個(gè)字節(jié)的數(shù)據(jù)F3H、‘X’、‘Y’、‘Z’及37H。如果List中的字節(jié)數(shù)超過指定的范圍(rang),則忽略超過的字節(jié),即超過的字節(jié)數(shù)據(jù)無效;如果list種給出的字節(jié)數(shù)小于指定的范圍,則重復(fù)填入list中的各項(xiàng),直至填滿所有指定的內(nèi)存單元為止。2.
G(Go)運(yùn)行命令,其命令格式為:-G=address1[address2[address3……]]其中:address1給出了運(yùn)行程序的起始地址,如不指定,則從當(dāng)前的CS:IP處開始運(yùn)行。后面的address2、address3等均為斷點(diǎn)地址,當(dāng)指令運(yùn)行到斷點(diǎn)時(shí),就停止執(zhí)行并顯示所有寄存器的當(dāng)前內(nèi)容及各標(biāo)志位狀態(tài)。同時(shí)給出下一條將要執(zhí)行的指令。例如,從1500:0000開始運(yùn)行到1500:0010暫停,命令形式為-G=1500:0103.
T(Trace)跟蹤命令,有兩種格式:(1)逐條指令跟蹤-T[=address]其功能是從給定地址起執(zhí)行一條指令后停下來,顯示各寄存器內(nèi)容、標(biāo)志位的狀態(tài)并給出將要執(zhí)行的指令。如果未指定起始地址則從當(dāng)前的CS:IP處開始執(zhí)行。第八頁,共五十一頁,編輯于2023年,星期二(2)多條指令跟蹤-T[address][value]從給定地址開始連續(xù)跟蹤n條指令后停止,每條指令執(zhí)行完后均顯示寄存器內(nèi)容及標(biāo)志位的狀態(tài)。其中n值由value給出。4.
A(Assmble)匯編命令,格式為:-A[address]該命令允許輸入助記符指令,并將他們匯編成機(jī)器代碼相繼地存入從指定地址開始的存儲區(qū)中。1.
N(Name)指定文件命令,命令格式為:-N[d:][path]filename.Exe該命令的功能是把兩個(gè)文件標(biāo)識符格式化在CS:5CH和CS:6CH的兩個(gè)文件控制塊中,以便在其后用L或W命令把文件裝入或存盤。例如:-NADD.EXE-L-把可執(zhí)行文件ADD.EXE裝入存儲器。10.裝入命令L(Load),有兩種功能?!ぐ汛疟P上指定扇區(qū)范圍的內(nèi)容裝入到存儲器從指定地址開始的區(qū)域中。其格式為:-L[address[drivesectorsector]·裝入指定文件,其格式為-L[address]此命令裝入已在CS:5CH中格式化了的文件控制塊所指定的文件。如未指定地址,對COM文件則裝入CS:0100開始的存儲區(qū)中;對EXE文件則裝入從CS:0000開始的存儲區(qū)中。11.寫命令W(Write),有兩種功能?!ぐ褦?shù)據(jù)寫入磁盤的指定扇區(qū)。其格式為:-Waddressdrivesectorsector·把數(shù)據(jù)寫入指定的文件中。其格式為:-W[address]第九頁,共五十一頁,編輯于2023年,星期二此命令把指定的存儲區(qū)中的數(shù)據(jù)寫入由CS:5CH處的文件控制塊所指定的文件中。如未指定地址則數(shù)據(jù)從CS:0100開始。要寫入文件的字節(jié)數(shù)應(yīng)先放入BX和CX中。注意,W只對COM文件有效,不能用于對EXE文件的操作。12.輸出命令O(Outputcommand)可直接把數(shù)據(jù)送到輸出端口,命令格式為:-O端口地址數(shù)據(jù)12.輸入命令I(lǐng)(Inputcommand)用I命令可直接輸入某一端口的數(shù)據(jù),命令格式為:-I端口地址XX其中:XX為從端口輸入的數(shù)據(jù)。13.退出Q(Quit)命令-Q在-狀態(tài)下用O命令退出DEBUG并返回DOS。返回主目錄第十頁,共五十一頁,編輯于2023年,星期二第二章實(shí)驗(yàn)系統(tǒng)環(huán)境介紹
為了使實(shí)驗(yàn)?zāi)軌蝽樌M(jìn)行,我們結(jié)合本課程的特點(diǎn)開發(fā)研制了適應(yīng)本課程所有實(shí)驗(yàn)項(xiàng)目要求的專用微機(jī)實(shí)驗(yàn)系統(tǒng)。該系統(tǒng)的組成如圖2-1所示。2.1ISA總線接口驅(qū)動卡介紹
586微機(jī)中以ISA總線為核心,開發(fā)了一個(gè)ISA總線接口驅(qū)動卡,該驅(qū)動卡將微機(jī)接口實(shí)驗(yàn)臺上所需的所有總線信號進(jìn)行隔離、驅(qū)動,并以扁平電纜的形式提供給微機(jī)接口實(shí)驗(yàn)臺,供實(shí)驗(yàn)使用。為了完成存貯器實(shí)驗(yàn),我們在ISA總線驅(qū)動卡設(shè)計(jì)時(shí),提供給用戶的存貯器空間為D0000H~DFFFFH或E0000H~EFFFFH兩個(gè)區(qū)間的一個(gè)64KB空間,用戶通過S1跳線來選擇所需的一個(gè)64KB存貯器空間來完成實(shí)驗(yàn)(此卡已將S1開關(guān)跳到了D0000H~DFFFFH)。為了完成所有的I/O接口實(shí)驗(yàn),我們在ISA驅(qū)動卡設(shè)計(jì)時(shí),提供給用戶的I/O地址空間為:
200H~23FH240H~27FH280H~2BFH2C0H~2FFH300H~33FH340H~37FH380H~3BFH3C0H~3FFH
八個(gè)區(qū)間中的一個(gè)64B的空間,用戶可以通過S2跳線開關(guān)選擇所需的一個(gè)64B空間進(jìn)行實(shí)驗(yàn)(本卡已將S2跳線開關(guān)跳到了280H~2BFH區(qū)間)。圖2-1圖2-1第十一頁,共五十一頁,編輯于2023年,星期二
為了完成外部可屏蔽中斷控制實(shí)驗(yàn),ISA總線接口卡上已將IRQ3、IRQ4、IRQ5、IRQ7、IRQ10、IRQ11和IRQ12等七個(gè)中斷請求輸入線連接到了JP3跳線開關(guān)上,用戶可根據(jù)所需選擇其中一個(gè)中斷源來完成實(shí)驗(yàn),該驅(qū)動卡已將JP3跳線開關(guān)跳到了IRQ5上。為了完成DMA傳送實(shí)驗(yàn),ISA總線驅(qū)動卡已將DRQ7、/DACK7一對聯(lián)絡(luò)信號接至DB62插座上,提供給微機(jī)接口實(shí)驗(yàn)臺,供用戶使用。串行接口實(shí)驗(yàn)用戶可借助微機(jī)上配置的COM1、COM2接口進(jìn)行。2.2微機(jī)接口實(shí)驗(yàn)臺介紹微機(jī)接口實(shí)驗(yàn)臺通過DB62插座與ISA總線接口驅(qū)動卡相連。為了完成一些常用的、基本的接口實(shí)驗(yàn),微機(jī)接口實(shí)驗(yàn)臺上配置了I/O譯碼電路、I/O接口電路、I/O模擬設(shè)備、單脈沖電路、信號源、SRAM存貯器電路、8255A、8253、A/D及D/A變換電路、交通信號燈控制電路、矩陣鍵盤電路等供實(shí)驗(yàn)者選用。同時(shí)為了滿足用戶在ISA總線上進(jìn)行特定功能的插件板電路設(shè)計(jì),微機(jī)接口實(shí)驗(yàn)臺上還將ISA總線驅(qū)動卡送來的所有信號還原成標(biāo)準(zhǔn)的ISA總線插座,以J2插座提供給用戶。這樣,用戶可以在不打開微機(jī)機(jī)箱的情況下,直接的、很方便的在微機(jī)接口實(shí)驗(yàn)臺上進(jìn)行ISA總線插件板的設(shè)計(jì)和調(diào)試。下面就微機(jī)接口實(shí)驗(yàn)臺上的各部分電路,分別作一簡要介紹。1.
ISA總線插座圖2-4第十二頁,共五十一頁,編輯于2023年,星期二微機(jī)實(shí)驗(yàn)臺上還原的ISA總線插座如圖2-4所示??偩€上的所有信號均為TTL邏輯電平,總線信號名稱、請參考有關(guān)教材。2.單脈沖產(chǎn)生器(PULSE)微機(jī)實(shí)驗(yàn)系統(tǒng)中的單脈沖發(fā)生器電路如圖2-5所示,每按一下微動開關(guān)PULSE在JS27的兩個(gè)插孔分別產(chǎn)生相反的脈沖,脈沖寬度由用戶按下的時(shí)間決定。用戶可以借用此電路的輸出模擬外部中斷請求信號、8255A的數(shù)據(jù)輸入選通信號、8253的外部計(jì)數(shù)信號等。圖2-53.時(shí)鐘信號發(fā)生器與8分頻電路實(shí)驗(yàn)臺上的CLK模塊提供以4MHZ為基準(zhǔn)的時(shí)鐘分頻電路,通過插線孔JS28可提供2分頻到256分頻(2MHZ~15.635KHZ)的時(shí)鐘信號,其電路如圖2-6所示。用戶可以利用此電路的輸出模擬8253的外部計(jì)數(shù)時(shí)鐘,以及A/D轉(zhuǎn)換電路的時(shí)鐘輸入信號。4.邏輯電平開關(guān)電路微機(jī)實(shí)驗(yàn)系統(tǒng)的邏輯開關(guān)電平電路(SWITCH模塊)中有八個(gè)獨(dú)立的開關(guān)K0~K7,JS26相應(yīng)的八個(gè)雙針插口是邏輯電平輸出端。開關(guān)向上時(shí),JS26中相應(yīng)的插孔輸出邏輯高電平“1”,向下?lián)軙r(shí),輸出低電平“0”。用戶可以借用JS26的輸出電平來模擬外部輸入設(shè)備的輸入數(shù)據(jù)。如圖2-7所示。第十三頁,共五十一頁,編輯于2023年,星期二5.發(fā)光二極管(LED)顯示電路微機(jī)實(shí)驗(yàn)系統(tǒng)LED模塊提供八個(gè)發(fā)光二極管顯示電路,JS13的八對輸入插線孔對應(yīng)八個(gè)LED負(fù)極,當(dāng)輸入端為低電平“0”時(shí),發(fā)光二極管點(diǎn)亮;當(dāng)輸入端為高電平“1”時(shí),發(fā)光二極管為暗。用戶可以借此電路來模擬監(jiān)視某一輸出端口輸出給外部數(shù)據(jù)的正確性。6.交通燈顯示電路系統(tǒng)實(shí)驗(yàn)上的TRL模塊,提供模擬十字路口交通燈的發(fā)光二極管顯示電路,JS17~JS20四組插線孔從左到右(或從上到下)分別對應(yīng)四組紅黃綠燈。當(dāng)輸入端為低電平“0”時(shí),發(fā)光二極管點(diǎn)亮,當(dāng)輸入端為高電平“1”時(shí),發(fā)光二極管點(diǎn)亮,當(dāng)輸入為高電平“1”時(shí),發(fā)光二極管變暗。7.I/O譯碼電路實(shí)驗(yàn)臺上的I/O譯碼電路為所有I/O實(shí)驗(yàn)提供譯碼信號,I/O譯碼范圍為第十四頁,共五十一頁,編輯于2023年,星期二圖2-7圖2-8第十五頁,共五十一頁,編輯于2023年,星期二圖2-9200H~3FFH,通過JP3跳線開關(guān)來選擇所需的某一64B范圍(實(shí)驗(yàn)臺已將JP3跳到280H~2BFH范圍),被選擇的某一64B的I/O地址,再經(jīng)過U7譯碼器接至JS37輸出,將該64B的I/O地址分成了八個(gè)區(qū)域(每個(gè)區(qū)域占八個(gè)地址)提供給用戶使用,其譯碼電路如圖2-10所示。圖中JP5跳線開關(guān)斷開時(shí),只能進(jìn)行八位I/O數(shù)據(jù)傳送,若JP5連通,則可進(jìn)行16位I/O數(shù)據(jù)傳送。8.存貯器譯碼電路實(shí)驗(yàn)臺上的存貯器譯碼電路為用戶擴(kuò)充的存貯器電路提供片選信號。先通過JP2跳線開關(guān)選擇所需的存貯器地址范圍在D0000H~DFFFFH或E0000H~EFFFFH的64KB范圍之內(nèi),再通過JP1跳線開關(guān)來確定所需的存貯器地址范圍在該64KB的哪一個(gè)16KB區(qū)間,其具體電路如圖2-11所示。圖中的JP4跳線開關(guān)若斷開,只能進(jìn)行16位存貯器數(shù)據(jù)傳送;若JP4連通,則能進(jìn)行16位存貯器數(shù)據(jù)傳送。第十六頁,共五十一頁,編輯于2023年,星期二
9.I/O接口電路
為了使學(xué)生掌握簡單的I/O接口電路設(shè)計(jì),實(shí)驗(yàn)臺上用74LS273(U18)8D數(shù)據(jù)鎖存器
設(shè)計(jì)了一個(gè)8位數(shù)據(jù)輸出端口;用74LS245(U19)8D數(shù)據(jù)雙向緩沖器設(shè)計(jì)了一個(gè)8位數(shù)據(jù)輸入端口,用戶需通過JS9和JS10加入相應(yīng)的I/O地址譯碼信號,就可以完成簡單I/O實(shí)驗(yàn),其電路如圖2-12所示。圖2-11第十七頁,共五十一頁,編輯于2023年,星期二10.8255A可編程并行接口電路實(shí)驗(yàn)臺上配置了一片8255A可編程并行接口電路,其電路形式如圖2-13所示。其中,8255A的D0~D7已經(jīng)與系統(tǒng)數(shù)據(jù)總線的D0~D7相連,RESET信號已經(jīng)產(chǎn)生,其余引腳信號由用戶接線完成。11.8253定時(shí)器/計(jì)數(shù)器接口電路實(shí)驗(yàn)臺上配置了一片8253定時(shí)器/計(jì)數(shù)器接口電路,如圖2-14所示。其中8253的D0~D7已經(jīng)與系統(tǒng)總線相連,其余引腳信號由用戶接線完成。12.A/D轉(zhuǎn)換電路實(shí)驗(yàn)臺上用ADC0809配置了A/D轉(zhuǎn)換電路,如圖2-15所示。ADC0809的絕大多數(shù)引腳都已經(jīng)以接線柱的形式提供給用戶,由用戶連線完成A/D實(shí)驗(yàn)。13.模擬電壓輸出用戶調(diào)節(jié)電位器R7,即可在插線孔JS32得到0~+5v的模擬電壓,為A/D轉(zhuǎn)換提供模擬電壓信號。如圖2-16所示。圖2-12第十八頁,共五十一頁,編輯于2023年,星期二圖2-13圖2-14第十九頁,共五十一頁,編輯于2023年,星期二圖2-15圖2-16返回主目錄第二十頁,共五十一頁,編輯于2023年,星期二第三章
微機(jī)原理與應(yīng)用實(shí)驗(yàn)實(shí)驗(yàn)二匯編語言程序設(shè)計(jì)練習(xí)實(shí)驗(yàn)三簡單I/O接口設(shè)計(jì)實(shí)驗(yàn)四8255可編程并行接口實(shí)驗(yàn)實(shí)驗(yàn)五8253定時(shí)器/計(jì)數(shù)器實(shí)驗(yàn)實(shí)驗(yàn)六A/D轉(zhuǎn)換實(shí)驗(yàn)實(shí)驗(yàn)一8086/8088尋址方式練習(xí)實(shí)驗(yàn)第二十一頁,共五十一頁,編輯于2023年,星期二
實(shí)驗(yàn)一8086/8088尋址方式練習(xí)實(shí)驗(yàn)一.
實(shí)驗(yàn)?zāi)康?.
熟練掌握8086/8088的各種尋址方式及應(yīng)用2.
掌握DEBUG調(diào)試程序中的一些常用命令的使用方法,為以后的實(shí)驗(yàn)打下基礎(chǔ)二.
實(shí)驗(yàn)儀器
586微機(jī)1臺三.
實(shí)驗(yàn)內(nèi)容1.
關(guān)于數(shù)據(jù)的尋址方式練習(xí)8086/8088提供多種方式實(shí)現(xiàn)操作數(shù)尋址,大體可分為7種:a.立即尋址b.寄存器尋址;a~b要尋找的操作數(shù)與存儲器無關(guān)c.直接尋址d.寄存器間接尋址e.寄存器相對尋址f.基址變址尋址g.基址變址且相對尋址;c~g要尋找的操作數(shù)在存貯器某單元,存貯器單元的地址由尋址方式確定。
掌握8086/8088的這些尋址方式,是學(xué)習(xí)匯編語言編程的關(guān)鍵。因此,我們編寫了下面的程序段,以數(shù)據(jù)傳送指令為例,列舉了部份尋址方式,請同學(xué)們按下列要求認(rèn)真完成。[1]在全屏幕編輯軟件下,建立以下匯編語言源程序。STACKSEGMENTSTACKDB0B0H,0B1H,0B2H,0B3H,0B4H,0B5H,0B6H,0B7H,0B8H,0B9HDB0BAH,0BBH,0BCH,0BDH,0BEH,0BFHDB10HDUP(00)STACKENDSDATA1SEGMENTDB0A0H,0A1H,0A2H,0A3H第二十二頁,共五十一頁,編輯于2023年,星期二TABLEDW0A5A4HDB0A6H,0A7H,0A8H,0A9H,0AAH,0ABH,0ABHDB0ACH,0ADH,0AEH,0AFHDATA1ENDSDATA2SEGMENTDB0C0H,0C1H,0C2H,0C3H,0C4H,0C5H,0C6H,0C7H,0C8HDB0C9H,0CAH,0CBH,0CCH,0CDH,0CEH,0CFHDATA2ENDSCODESEGMENTASSUMECS:CODE,DS:DATA1,ES:DATA2,SS:STACKSTART:MOVAX,DATA1MOVDS,AXMOVAX,DATA2MOVES,AXMOVBX,0004HMOVCX,0005HMOVBP,0003H MOVSI,0002HMOVDI,0001HMOVAX,CX MOVAX,500H MOVAX,WORDPTRTABLE MOVAX,ES:[BX]第二十三頁,共五十一頁,編輯于2023年,星期二MOVAX,[BX+05H] MOVAX,SS:[BX]+03H MOVAX,TABLE[BX] MOVAX,07H[BX] MOVAX,[BP] MOVAX,TABLE[BP] MOVAX,08H[BP]MOVAX,[BP+06H] MOVAX,DS:[BP+03H] MOVAX,[BP]+05H MOVAX,ES:[SI+03H] MOVAX,[DI+06H] MOVAX,[DI]+05H MOVAX,TABLE[SI] MOVAX,[SI] MOVAX,TABLE[DI] MOVAX,[SI]+05H MOVAX,[BX][DI+01H] MOVAX,[BX][SI]+03H MOVAX,TABLE[BX][SI] MOVAX,ES:[BX][DI] MOVAX,[BP][DI+02H] MOVAX,TABLE[BP][DI] MOVAX,ES:[BP][SI] MOVAX,[BP][SI+05H] MOVAX,03H[BP][DI] MOVAX,[BP][SI] MOVAX,[BP+02H][DI+03H] MOVAX,TABLE[BP+02H][DI+03H] MOVAH,4CH INT21H第二十四頁,共五十一頁,編輯于2023年,星期二[2]用masm.exe宏匯編程序?qū)σ陨显闯绦蜻M(jìn)行匯編,其方法為:
masm文件名.asm;回車此時(shí),如果源程序中無語法錯(cuò)誤,則在磁盤上形成文件名.obj文件。[3]用LINK.EXE連接程序?qū)ξ募?obj文件進(jìn)行連接,其方法為:
link文件名.obj;回車此時(shí),如果連接正確,則在磁盤上形成文件名.exe可執(zhí)行文件。[4]對源程序中從MOVAX,CX開始以下所有指令按表3-1進(jìn)行計(jì)算。指令SRC尋址方式SRC的地址AX推算值A(chǔ)X實(shí)際值MOVAX,CX
MOVAX,500H
MOVAX,TABLE
MOVAX,ES:[BX]
MOVAX,[BX+05H]
MOVAX,SS:[BX]+03H
MOVAX,TABLE[BX]
MOVAX,07H[BX]
MOVAX,[BP]
MOVAX,TABLE[BP]
MOVAX,08H[BP]
MOVAX,[BP+06H]
MOVAX,[BP]+05H
MOVAX,DS:[BP+03H]
MOVAX,ES:[SI+03H]
MOVAX,[DI+06H]
MOVAX,[DI]+05H
MOVAX,TABLE[SI]
MOVAX,[SI]
MOVAX,TABLE[DI]
MOVAX,[SI]+05H
MOVAX,[BX][DI+01H]
MOVAX,[BX][SI]+03H
MOVAX,TABLE[BX][SI]
MOVAX,ES:[BX][DI]
MOVAX,[BP][DI+02H]
MOVAX,TABLE[BP][DI]
MOVAX,ES:[BP][SI]
MOVAX,[BP][SI+05H]
MOVAX,03H[BP][DI]
MOVAX,[BP][SI]
MOVAX,[BP+02H][DI+03H]
MOVAX,TABLE[BP+02H][DI+03H]
表3-1 CODEENDS ENDSTART第二十五頁,共五十一頁,編輯于2023年,星期二T命令單步運(yùn)行程序,并用R命令檢查AX結(jié)果,同時(shí)將結(jié)果作為實(shí)際值填入表3-1中,和推算值進(jìn)行比較,從而檢驗(yàn)自己對該條指令對應(yīng)的尋址方式是否掌握。也可用D命令察看存貯器的內(nèi)容,具體操作方法參看DEBUG使用部分。1.
關(guān)于地址的尋址方式其具體的內(nèi)容及實(shí)驗(yàn)方法參內(nèi)容一由學(xué)生選做完成。四.問題討論在表3-1中,分析AX推算值與實(shí)際值有何不同?找出錯(cuò)誤原因,小結(jié)出各種尋址方式所用的段寄存器的規(guī)律來。五.本實(shí)驗(yàn)的實(shí)驗(yàn)報(bào)告要求實(shí)驗(yàn)名稱
1.
實(shí)驗(yàn)?zāi)康?/p>
2.
實(shí)驗(yàn)儀器
3.
實(shí)驗(yàn)內(nèi)容及實(shí)驗(yàn)程序
4.
實(shí)驗(yàn)數(shù)據(jù)及結(jié)果
5.問題討論返回實(shí)驗(yàn)?zāi)夸浀诙?,共五十一頁,編輯?023年,星期二實(shí)驗(yàn)二匯編語言程序設(shè)計(jì)練習(xí)一.實(shí)驗(yàn)?zāi)康?.
熟練掌握匯編語言程序設(shè)計(jì)的方法及上機(jī)步驟。2.
掌握算術(shù)運(yùn)算中,十進(jìn)制數(shù)調(diào)整指令的應(yīng)用。3.
掌握子程序的設(shè)計(jì)方法4.
掌握DOS功能的調(diào)用方法二.實(shí)驗(yàn)儀器
586微機(jī)1臺三.實(shí)驗(yàn)內(nèi)容1.編寫求十進(jìn)制數(shù)12678532與21736543之和的程序,并將和以十進(jìn)制數(shù)的形式送屏幕顯示。編程要求與提示:[1]兩個(gè)加數(shù)均以壓縮十進(jìn)制數(shù)形式存放在ADD1和ADD2為首址的存貯器單元[2]和以壓縮十進(jìn)制數(shù)的形式存入SUM以下單元。[3]將和送到屏幕顯示部分功能的實(shí)現(xiàn)采用子程序的形式。[4]實(shí)驗(yàn)步驟如下a.用全屏幕編輯軟件建立源程序。b.用masm.exe匯編程序?qū)υ闯绦蜻M(jìn)行匯編,形成目標(biāo)程序。c.用link.exe連接程序?qū)δ繕?biāo)程序進(jìn)行連接形成可執(zhí)行文件。d.用DEBUG對連接通過的可執(zhí)行程序進(jìn)行調(diào)試。1.
有一個(gè)首地址為A的N字?jǐn)?shù)組,請編程序使該數(shù)組中的數(shù)按從大到小的次序排列。編程要求及提示:[1]參加排序的數(shù)據(jù)及個(gè)數(shù)由學(xué)生自己定義。[2]要將排序前的數(shù)組和排序后的數(shù)組在屏幕上顯示出來。[3]實(shí)驗(yàn)步驟同內(nèi)容一。四.問題討論
1.在以十進(jìn)制數(shù)形式參加運(yùn)算的程序設(shè)計(jì)中,應(yīng)注意那些問題。
2.總結(jié)循環(huán)程序設(shè)計(jì)的步驟及方法。第二十七頁,共五十一頁,編輯于2023年,星期二五.實(shí)驗(yàn)報(bào)告要求實(shí)驗(yàn)名稱1.
實(shí)驗(yàn)?zāi)康?.
實(shí)驗(yàn)儀器3.
實(shí)驗(yàn)內(nèi)容4.
給出實(shí)驗(yàn)內(nèi)容對應(yīng)的源程序及流程5.
問題討論
一.實(shí)驗(yàn)?zāi)康?.
掌握簡單I/O接口電路的設(shè)計(jì)方法2.
掌握簡單I/O電路的調(diào)試及驅(qū)動程序的設(shè)計(jì)方法二.實(shí)驗(yàn)儀器及器材1.586微機(jī)1臺2.微機(jī)實(shí)驗(yàn)臺1臺3.+5V3A直流穩(wěn)壓電源1臺4.三用表1臺5.74LS273及74LS245各1片6.剪刀、鑷子各1把7.單股導(dǎo)線若干三.實(shí)驗(yàn)內(nèi)容1.簡單并行輸出接口實(shí)驗(yàn)線路如圖3-1(a)所示,74LS273的功能如圖3-1(b)所示。實(shí)驗(yàn)三簡單I/O接口設(shè)計(jì)圖3-1(a)返回實(shí)驗(yàn)?zāi)夸浀诙隧摚参迨豁?,編輯?023年,星期二實(shí)驗(yàn)步驟:[1]硬件連線從實(shí)驗(yàn)臺的I/O模塊的JS37接線孔選擇I/O地址連接到DRV模塊的JS9的273CP上作為74LS273的CLK信號,74LS273鎖存器的輸出Q0-Q7通過JS11插線孔連接到LED電路模塊上的JS13上(LED模塊電路參考第二章圖2-8)。在CPU對74LS273進(jìn)行寫操作時(shí),如果正確鎖存數(shù)據(jù),既送“FF”時(shí)發(fā)光二極管全滅,若送全“0”時(shí),發(fā)光二極管全亮。[2]軟件編程方法a.
可利用debug的o命令對輸出端口進(jìn)行調(diào)試。b.
編寫一簡單程序(可利用debug的A命令),從鍵盤輸入一字符,將其代碼通過JS11輸出到LED模塊的JS13,根據(jù)8個(gè)發(fā)光二極管發(fā)光情況驗(yàn)證其正確性。c.
紀(jì)錄實(shí)驗(yàn)結(jié)果及現(xiàn)象。圖3-1(b)74LS273真值表
2.簡單并行輸入接口實(shí)驗(yàn)電路如圖3-2(a)所示,74LS245的功能如圖3-2(b)所示。實(shí)驗(yàn)步驟[1]硬件連線從實(shí)驗(yàn)臺的I/O模塊的JS37選擇I/O地址連接到DRV模塊的JS10上作為74LS245的/E選通信號,,74LS245的8個(gè)數(shù)據(jù)輸入端B0-B7通過JS12接線孔分別接SWITCH模塊的邏輯電平開關(guān)輸出端JS26的K0-K7(SWITCH模塊電路參考第二章圖2-7)。8個(gè)數(shù)據(jù)輸入端A0-A7已經(jīng)和系統(tǒng)總線D0-D7相連。[2]軟件編程方法a.
可利用debug的I命令對輸入端口進(jìn)行調(diào)試。b.
用邏輯電平開關(guān)預(yù)置某個(gè)字符的ASCII碼,編一簡單程序(可利用DEBUG的A命令),輸入這個(gè)代碼,并將其在屏幕上顯示出來。C.
紀(jì)錄實(shí)驗(yàn)結(jié)果及現(xiàn)象。第二十九頁,共五十一頁,編輯于2023年,星期二圖3-2(a)方向控制DIR傳送方向LLHLHXB→AA←B三態(tài)使能/E74LS245圖3-2(b)真值表第三十頁,共五十一頁,編輯于2023年,星期二
四.問題討論
1.總結(jié)簡單I/O接口電路設(shè)計(jì)的方法。
2.總結(jié)I/O輸入端口設(shè)計(jì)時(shí)應(yīng)注意的問題。五.實(shí)驗(yàn)報(bào)告要求實(shí)驗(yàn)名稱1.
實(shí)驗(yàn)?zāi)康?.
實(shí)驗(yàn)儀器及器材3.
實(shí)驗(yàn)內(nèi)容及實(shí)驗(yàn)結(jié)果4.
問題討論實(shí)驗(yàn)四8255可編程并行接口實(shí)驗(yàn)一.實(shí)驗(yàn)?zāi)康?.掌握8255A與8位系統(tǒng)總線的連接方法。2.掌握8255A的方式0、方式1的使用及編程方法。3.掌握8255APC口位管理功能的使用方法及編程方法。二.實(shí)驗(yàn)儀器與器材1.586微機(jī)1臺2.微機(jī)實(shí)驗(yàn)臺1臺3.導(dǎo)線若干4.+5V3A直流穩(wěn)壓電源1臺5.剪刀、鑷子等各1把三.實(shí)驗(yàn)線路實(shí)驗(yàn)臺上8255模塊上配置的8255A與系統(tǒng)總線的連線圖如圖3-3所示。PA口、PB口、PC口分別通過三組接線孔JS5、JS6、JS7引出,其它控制信號通過JS8引出。D0-D7已經(jīng)與系統(tǒng)總線D0-D7相連。返回實(shí)驗(yàn)?zāi)夸浀谌豁摚参迨豁?,編輯?023年,星期二實(shí)驗(yàn)四8255可編程并行接口實(shí)驗(yàn)圖3-3一.實(shí)驗(yàn)?zāi)康?.掌握8255A與8位系統(tǒng)總線的連接方法。2.掌握8255A的方式0、方式1的使用及編程方法。3.掌握8255APC口位管理功能的使用方法及編程方法。二.實(shí)驗(yàn)儀器與器材1.586微機(jī)1臺2.微機(jī)實(shí)驗(yàn)臺1臺3.導(dǎo)線若干4.+5V3A直流穩(wěn)壓電源1臺5.剪刀、鑷子等各1把三.實(shí)驗(yàn)線路實(shí)驗(yàn)臺上8255模塊上配置的8255A與系統(tǒng)總線的連線圖如圖3-3所示。PA口、PB口、PC口分別通過三組接線孔JS5、JS6、JS7引出,其它控制信號通過JS8引出。D0-D7已經(jīng)與系統(tǒng)總線D0-D7相連。1.8255A方式控制字各位功能8255A方式控制字各位功能如圖3-5所示。第三十二頁,共五十一頁,編輯于2023年,星期二2.8255APC口位管理使某位置1/復(fù)位。
8255APC口位管理使某位置1/復(fù)位的方法如圖3-4所示。PC口位管理時(shí),一定要滿足其端口地址使8255的A0、A1為11。
3.方式1的聯(lián)絡(luò)信號
8255的PA口、PB口可以工作在方式1—有聯(lián)絡(luò)信號的輸入/輸出方式,所有聯(lián)絡(luò)信號均由PC口的某些位承擔(dān),其具體情況參考有關(guān)教材。
四.實(shí)驗(yàn)內(nèi)容
1.方式0—基本I/O方式練習(xí)。
[1]將PA口設(shè)置成方式0輸出,從PA口輸出FEH數(shù)據(jù),并將輸出的數(shù)據(jù)送至LED燈顯
圖3-4圖3-5第三十三頁,共五十一頁,編輯于2023年,星期二
四.實(shí)驗(yàn)內(nèi)容
1.方式0—基本I/O方式練習(xí)。
[1]將PA口設(shè)置成方式0輸出,從PA口輸出FEH數(shù)據(jù),并將輸出的數(shù)據(jù)送至LED燈顯示。此過程保持一秒鐘左右,使PA口輸出的數(shù)據(jù)循環(huán)左移一位后再從PA口輸出,以后重復(fù)以上過程。
[2]將PA口、PB口分別設(shè)置成方式0輸出、輸入。其輸入數(shù)據(jù)用SWITCH模塊的邏輯電平開關(guān)模擬,輸出的數(shù)據(jù)用LED模塊的發(fā)光二極管監(jiān)視。編程實(shí)現(xiàn)從PB口輸入數(shù)據(jù),并將輸入的數(shù)據(jù)從PA口輸出,在LED燈上顯示觀察其正確性。
實(shí)驗(yàn)步驟:
[1]硬件連接
a.將PA口的輸出通過JS5接線孔對應(yīng)連接到LED模塊的JS13接線孔上。
b.將PB口通過JS6接線孔對應(yīng)連接到SWITCH模塊的JS26接線孔上。
c.將8255A的控制信號通過JS8接線孔連接到JS40、JS39對應(yīng)接線孔上。并通過I/O模塊的JS37接線孔選擇I/O地址接到JS8的/CS上作為8255A的片選信號。
[2]編程
用戶依據(jù)上面給出的實(shí)驗(yàn)內(nèi)容進(jìn)行編程實(shí)驗(yàn),編程時(shí)既可用完整的匯編語言程序設(shè)計(jì)方法完成,也可在DEBUG下用相應(yīng)的命令實(shí)現(xiàn)。
[3]記錄實(shí)驗(yàn)現(xiàn)象
2.PC口位管理使某位“置位/復(fù)位”
使PC口的位通過JS7接線孔接到LED模塊的JS13接線孔的對應(yīng)位置上,用發(fā)光二極管的亮/滅監(jiān)視PC口某位置位(滅)或復(fù)位(亮)的正確性。其實(shí)驗(yàn)方法同內(nèi)容1。
3.方式1—有聯(lián)絡(luò)信號的輸入/輸出方式練習(xí)。
將PA口設(shè)置為方式0輸出,其輸出用LED燈監(jiān)視;PB口設(shè)置為方式1輸入,外設(shè)輸入到PB口的數(shù)據(jù)用邏輯電平開關(guān)模擬。編程實(shí)現(xiàn)從PB口輸入外設(shè)數(shù)據(jù),并將輸入的數(shù)據(jù)經(jīng)PA口輸出,用LED燈監(jiān)視其正確性。
實(shí)驗(yàn)步驟:
[1]硬件連線
在內(nèi)容1硬件連線上的基礎(chǔ)上,外設(shè)給PB口的數(shù)據(jù)選通信號/STB用單脈沖模擬,即將PLUSE模塊單脈沖輸出接線柱JS27的負(fù)脈沖輸出連接到8255的JS7的PC2接線孔。
[2]編程
在確保硬件連線無誤的情況下,編寫題目所要完成功能的程序,其參考流圖如圖3-6所示。第三十四頁,共五十一頁,編輯于2023年,星期二[3]記錄實(shí)驗(yàn)現(xiàn)象五.問題討論總結(jié)8255A方式0與方式1的區(qū)別。六.實(shí)驗(yàn)報(bào)告要求1.
實(shí)驗(yàn)?zāi)康?.
實(shí)驗(yàn)儀器及器材3.
實(shí)驗(yàn)線路4.
實(shí)驗(yàn)內(nèi)容及結(jié)果5.
問題討論圖3-6返回實(shí)驗(yàn)?zāi)夸浀谌屙?,共五十一頁,編輯?023年,星期二
實(shí)驗(yàn)五8253定時(shí)器/計(jì)數(shù)器實(shí)驗(yàn)
一.實(shí)驗(yàn)?zāi)康?.掌握8253與系統(tǒng)總線的接口方法。2.掌握82536種工作方式的初始化編程方法及工作時(shí)序關(guān)系。二.實(shí)驗(yàn)儀器及器材1.586微機(jī)1臺2.微機(jī)實(shí)驗(yàn)臺1臺
3.+5V3A直流穩(wěn)壓電源1臺4.20MHZ雙蹤示波器1臺5.導(dǎo)線若干6.剪刀、鑷子等各1把三.實(shí)驗(yàn)線路實(shí)驗(yàn)臺上8253模塊配置的8253的連線圖如圖3-8所示。其中,8253定時(shí)器通道0的CLK0、GATE0、OUT0連到了JS2接線孔;通道1的CLK1、GATE1、OUT1連到了JS3接線孔;通道2的CLK2、GATE2、OUT2連接到JS4接線孔上。控制信號連接到了JS1接線孔,D0_D7已經(jīng)與系統(tǒng)總線的D0_D7連接。四.8253工作方式控制字8253工作方式控制字如圖3-9所示。其中SC1、SC0決定對哪一個(gè)通道的計(jì)數(shù)器進(jìn)行初始化。SC1SC000選擇計(jì)數(shù)器001選擇計(jì)數(shù)器110選擇計(jì)數(shù)器211為非法圖3-8第三十六頁,共五十一頁,編輯于2023年,星期二RL1、RL0決定所初始化的通道讀寫的規(guī)律RL1RL000計(jì)數(shù)器鎖存操作01只讀/裝入低字節(jié)
10只讀/裝入高字節(jié)
11先讀/裝入低字節(jié),然后讀/裝入高字節(jié),關(guān)于計(jì)數(shù)器的鎖存操作以后再詳細(xì)說明。下面關(guān)于M2-M0的說明。它決定著所初始化的計(jì)數(shù)器所選擇的工作方式。M2M1M0000方式0計(jì)數(shù)結(jié)束中斷;
001方式1可編程單穩(wěn);
x11方式2頻率發(fā)生器;
x11方式3方波頻率發(fā)生器;
100方式4軟件觸發(fā)的選通;
101方式5硬件觸發(fā)的選通。還有最后一位BCD當(dāng)該位為0則為十六進(jìn)制計(jì)數(shù)器;該位為1則為十進(jìn)制計(jì)數(shù)器(四個(gè)十進(jìn)位)。圖3-9第三十七頁,共五十一頁,編輯于2023年,星期二五.實(shí)驗(yàn)內(nèi)容
1.利用微機(jī)實(shí)驗(yàn)臺上配置的一片8253(U1),編寫六種工作方式的程序,用雙蹤示波器觀察/IOW、CLK、OUT、GATE等信號之間的波形關(guān)系(也可利用單脈沖作為8253的CLK計(jì)數(shù)脈沖,將計(jì)數(shù)制讀回在屏幕上顯示出來)。
2.若加到8253CLK0的時(shí)鐘頻率為1MHZ(取自CLOCK模塊),在正確接線的基礎(chǔ)上編程實(shí)現(xiàn)在8253的OUT端產(chǎn)生如下波形:
1S1MS六.實(shí)驗(yàn)步驟1.硬件連線[1]將JS1接線孔上的8253的控制信號接到JS40和JS39的對應(yīng)接線孔上。[2]將JS2接線孔上的8253的CLK0接到CLOCK模塊JS28接線孔的1MHZ上。[3]將JS2接線孔上的GATE0接到VCC(P3)(方式0、2、3、4)或接到CLOCK模塊JS328接線孔的對應(yīng)位置(方式1、5)上。
注:實(shí)驗(yàn)臺上的P7、P3為VCC,P8、P4為GND。2.編程3.運(yùn)行程序,用雙蹤示波器觀察CLK、GATE、OUT、/IOW等信號的波形,并作記錄。七.問題討論1.總結(jié)8253的方式0和方式4、方式1和方式5有何區(qū)別?2.若用8253測量外部脈沖重復(fù)頻率,硬、軟件應(yīng)如何實(shí)現(xiàn)?測量范圍如何?第三十八頁,共五十一頁,編輯于2023年,星期二八.實(shí)驗(yàn)報(bào)告要求
1.
實(shí)驗(yàn)?zāi)康?/p>
2.
實(shí)驗(yàn)儀器及器材
3.
實(shí)驗(yàn)線路
4.
實(shí)驗(yàn)內(nèi)容及結(jié)果
5.
問題討論
返回實(shí)驗(yàn)?zāi)夸浀谌彭?,共五十一頁,編輯?023年,星期二一.實(shí)驗(yàn)?zāi)康?/p>
1.了解ADC0809芯片的工作原理及其參數(shù)特性。
2.掌握ADC0809與CPU之間的接口方法及其驅(qū)動程序的設(shè)計(jì)方法。
二.實(shí)驗(yàn)儀器與器材
1.586微機(jī)1臺
2.微機(jī)實(shí)驗(yàn)臺1臺
3.+5V3A直流穩(wěn)壓電源1臺
4.雙蹤示波器1臺
5.導(dǎo)線若干
6鑷子、剪刀各1把
三.實(shí)驗(yàn)線路
實(shí)驗(yàn)六A/D轉(zhuǎn)換實(shí)驗(yàn)
圖3-10微機(jī)實(shí)驗(yàn)臺上的A/D模塊配置的ADC0809的連線圖如圖3-10所示。其中,IN0-IN7連接到了接線孔JS33上,模擬通道ADDC、ADDB、ADDA以及轉(zhuǎn)換結(jié)束信號EOC接到接線孔JS35,ADC0809的控制信號ALE、START、ENABLE、CLOCK等接到了接線孔JS36上,A/D轉(zhuǎn)換數(shù)字量輸出端接到了接線孔JS32上,其余引腳已經(jīng)接好。
第四十頁,共五十一頁,編輯于2023年,星期二四.預(yù)備知識
1.引腳功能
D0-D7——輸出數(shù)據(jù)線;
IN0-IN7——8路模擬電壓輸入端;
ADDA、ADDB、ADDC——路地址輸入;
START——啟動信號輸入,下降沿有效;
ALE——路地址鎖存信號,用來鎖存ADDA-ADDC的地址輸入,上升沿有效
EOC——變換結(jié)束狀態(tài)信號,高點(diǎn)平表示一次變換結(jié)束;
ENABLE——讀允許信號,高電平有效;
CLK——時(shí)鐘輸入端,頻率范圍為10KHZ-1.2MHZ,一般取值600KHZ左右,此時(shí)變換時(shí)間約為100us;
Vref(+)、Vref(-)——參考電壓輸入;
VCC——+5V電壓輸入;
GND——地。
2.工作時(shí)序
ADC0809工作時(shí)序的定時(shí)關(guān)系如圖3-11所示。
圖3-11第四十一頁,共五十一頁,編輯于2023年,星期二五.實(shí)驗(yàn)內(nèi)容
用0-+5V模擬電壓(參第二章圖2-16)作為ADC0809的模擬電壓輸入(接IN0-IN7中的一路),編寫A/D驅(qū)動程序,將變換后的數(shù)字量通過8255模塊8255A或DRV模塊74LS273輸出在LED燈上顯示,也可將采樣值送顯示器顯示。
六.實(shí)驗(yàn)步驟
1.硬件連線
[1]將ADC0809的D0-D7(接線孔JS34)與系統(tǒng)總線D0-D7(接線孔JS38)相連。
[2]接線孔JS33的IN0接JS320-+5V電壓(R7為0-+5V電壓調(diào)節(jié)電位器)。
[3]ADC0809的控制信號引腳連接到了JS36上。其中ADC0809的工作時(shí)鐘CLK接微機(jī)實(shí)驗(yàn)臺上CLK模塊接線孔JS28上的500KHZ;ALE、START、EN的接法如圖3-12所示,這部分電路用戶需在BOARD模塊板上自己搭接。
[4]接線孔JS35上的ADC0809的路地址選擇輸入端ADDC、ADDB、ADDA根據(jù)所選用的模擬通道來確定接VCC或GND。
圖3-122.編程在硬件
連接正確的基礎(chǔ)上,編寫實(shí)驗(yàn)內(nèi)容所要完成功能的I/O驅(qū)動程序。3.記錄實(shí)驗(yàn)結(jié)果及現(xiàn)象。七.問題討論1.若被采樣的模擬信號變換頻率較高,應(yīng)采用何種措施?2.若用ADC0809構(gòu)成一8路巡回檢查系統(tǒng),其硬件電路應(yīng)如何實(shí)現(xiàn)。第四十二頁,共五十一頁,編輯于2023年,星期二八.實(shí)驗(yàn)報(bào)告要求
1.
實(shí)驗(yàn)?zāi)康?/p>
2.
實(shí)驗(yàn)器材及儀器
3.
實(shí)驗(yàn)線路
4.
實(shí)驗(yàn)內(nèi)容及結(jié)果
5.
問題討論
返回實(shí)驗(yàn)?zāi)夸浀谒氖?,共五十一頁,編輯?023年,星期二實(shí)驗(yàn)七8259中斷控制器實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康恼莆?259外部可屏蔽中斷的工作方式。二、實(shí)驗(yàn)內(nèi)容利用主機(jī)板上的主片8259的IRQ4進(jìn)行外部可屏蔽中斷,中斷請求信號用實(shí)驗(yàn)箱上的單脈沖輸出信號模擬。中斷服務(wù)程序完成:中斷第一次,屏幕上顯示9,中斷第二次,屏幕上顯示8,中斷第三次,屏幕上顯示7……中斷第十次,屏幕上顯示0,返回DOS。三、實(shí)驗(yàn)線路實(shí)驗(yàn)臺上IRQ4級中斷跳線已跳好。JP6已與JS41相連,把JS27的單脈沖輸出作為中斷請求信號(上升沿有效)與JS41的IRQX相連。IRQ4的中斷類型號為0CH,主片地址為20H,21H。四、實(shí)驗(yàn)參考程序
1.利用BIOS對8259初始化進(jìn)行編程
STACKSEGMENTDW256DUP(?)
STACKENDSDATASEGMENTINTDATDW?,?第四十四頁,共五十一頁,編輯于2023年,星期二DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXCLIMOVAH,35HMOVAL,0CH
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《礦物質(zhì)水介紹》課件
- 八下期末考拔高測試卷(2)(原卷版)
- 第23課 內(nèi)戰(zhàn)爆發(fā)(原卷版)
- 2014年高考語文試卷(湖北)(空白卷)
- 農(nóng)耕之路模板
- 建筑行業(yè)工人培訓(xùn)總結(jié)
- 人力資源的戰(zhàn)略驅(qū)動
- 會計(jì)個(gè)人述職報(bào)告匯編15篇
- 網(wǎng)絡(luò)公司前臺接待工作總結(jié)
- 2023年-2024年項(xiàng)目部安全培訓(xùn)考試題附完整答案(奪冠)
- 課程思政專題培訓(xùn)
- 食品買賣合同范本
- 心臟病專病中心申報(bào)
- 期末素養(yǎng)質(zhì)量檢測卷(試題)-2024-2025學(xué)年三年級上冊數(shù)學(xué)人教版
- 皮膚科銀屑病護(hù)理個(gè)案
- 2024年房地產(chǎn)開發(fā)商與承建商之間的工程承包合同
- 語文-句子成分劃分名師公開課獲獎(jiǎng)?wù)n件百校聯(lián)賽一等獎(jiǎng)?wù)n件
- 班組安全爭先創(chuàng)優(yōu)競賽活動考核細(xì)則表
- 2024-2030年中國眼視光行業(yè)現(xiàn)狀態(tài)勢與未來前景預(yù)測報(bào)告
- 2024年教師資格考試初級中學(xué)學(xué)科知識與教學(xué)能力數(shù)學(xué)試題及解答參考
- 小學(xué)三年級上冊數(shù)學(xué)豎式計(jì)算題大全
評論
0/150
提交評論