版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
真誠為您提供優(yōu)質(zhì)參考資料,若有不當(dāng)之處,請指正。真誠為您提供優(yōu)質(zhì)參考資料,若有不當(dāng)之處,請指正。/真誠為您提供優(yōu)質(zhì)參考資料,若有不當(dāng)之處,請指正。目錄前言………一、設(shè)計目的…………………二、設(shè)計內(nèi)容及要求…………三、具體設(shè)計過程……………1、總體設(shè)計思想……………………2、硬件連接圖……………………3、各芯片的作用及工作方式……4、各芯片工作原理及功能簡介……(1)ADC0809………………(2)DAC0832……………………(3)可編程計數(shù)/定時接口芯片8253…………(4)可編程并行I/O接口芯片8255A…………(5)74LS138譯碼器………………5、流程圖………………6、具體實現(xiàn)方法…………四、心得體會…………參考文獻(xiàn)……………附錄1實驗總程序………………附錄2實驗原理圖………………前言由于計算機(jī)技術(shù)的飛速發(fā)展,微機(jī)原理與接口技術(shù)課程已經(jīng)作為一門比較重要的專業(yè)基礎(chǔ)課。微機(jī)原理與接口技術(shù)已經(jīng)融入我們的基本生活當(dāng)中,我們生活中的許多電子產(chǎn)品都與之密切相關(guān)。微機(jī)原理與接口技術(shù)是一門實踐性強(qiáng)的學(xué)科,其中很多理論和知識僅考書本的學(xué)習(xí)是無法掌握的,必須通過實踐才能比較直觀深刻的理解。通過課程設(shè)計可以培養(yǎng)我們動手的能力,使我們對書本的理論知識掌握更加牢固,培養(yǎng)學(xué)生編程的能力以及提出問題,分析分體,解決問題的能力。本次課程設(shè)計所做的是關(guān)于數(shù)字錄音機(jī)的設(shè)計。一、設(shè)計目的1.進(jìn)一步加深對微機(jī)系統(tǒng)的理解和認(rèn)識,提高微機(jī)系統(tǒng)的應(yīng)用水平。2.進(jìn)一步學(xué)習(xí)和掌握匯編語言程序的編寫和應(yīng)用的方法,通過較大規(guī)模程序的編寫,提高編寫匯編語言程序的水平和學(xué)習(xí)程序調(diào)試方法。3.進(jìn)一步熟悉接口,DAC0832、ADC0809及定時計數(shù)器等芯片的使用。
二、設(shè)計內(nèi)容及要求:1.設(shè)計一個聲音錄放系統(tǒng),通過傳感器及ADC0809以每秒5000次的速率采集語言信號,錄音12秒后,再以同樣的速率將語音數(shù)據(jù)通過DAC0832送出至喇叭發(fā)聲(放音)。2.用protel畫出系統(tǒng)的硬件連接圖。3.畫出程序流程圖并編寫程序?qū)崿F(xiàn)上述功能。
三、具體設(shè)計過程1.總體設(shè)計思想根據(jù)設(shè)計要求,本次數(shù)字錄音機(jī)的匯編語言設(shè)計所需芯片有模數(shù)轉(zhuǎn)換芯片ADC0809、數(shù)模轉(zhuǎn)換芯片DAC0832、定時計數(shù)器8253、可編程并行I/O接口8255A及譯碼器74LS138。設(shè)計過程可簡述為:利用傳感器和ADC0809采集語音數(shù)據(jù),以每秒5000的速率采集IN0輸入的語音數(shù)據(jù)并存入內(nèi)存,共采集數(shù)據(jù)60000個,即錄音12秒。DAC0832進(jìn)行數(shù)模轉(zhuǎn)換,以同樣的速率將數(shù)據(jù)送DAC0832使喇叭發(fā)聲。8253用作定時,定時0.2ms,設(shè)置成方式0,計數(shù)初值為200。8253計數(shù)器0的OUT0與
2.硬件連接圖(見附錄)
3.各芯片的作用及工作方式(1)ADC0809在本次設(shè)計中的作用及工作方式ADC0809作數(shù)據(jù)采集用,用來采集12秒的語音信號并保存到相應(yīng)的存儲單元。對ADC0809的8個模擬通道,這里是用數(shù)據(jù)總線的低8位D2、D1、D0來控制ADC的通道選擇信號ADDC、ADDB、ADDA,以實現(xiàn)選擇其中之一模擬通道輸入。在本次設(shè)計中,初始值為000(D2=0、D1=0、D0=0),即選擇IN0通道進(jìn)行數(shù)據(jù)采集,然后使ADC0809的ALE、START有效,START和ALE信號通過CPU向選中的通道口執(zhí)行一條輸出指令,啟動A/D轉(zhuǎn)換。轉(zhuǎn)換結(jié)束后,發(fā)出EOC信號,當(dāng)EOC為高電平時,可供CPU查詢,讀取每次采集的A/D轉(zhuǎn)換結(jié)果。當(dāng)CPU知道轉(zhuǎn)換已完成,執(zhí)行一條輸入指令使OE信號有效,此時輸出緩沖器被打開,數(shù)據(jù)送到數(shù)據(jù)總線。系統(tǒng)時鐘經(jīng)分頻后接到ADC0809芯片的時鐘引腳CLK上。
(2)DAC0832在本次設(shè)計中的作用及工作方式在本次設(shè)計中,我使用的DAC0832采用直通方式與CPU連接,從硬件圖中可以看出,該片DAC0832只有一個端口地址,即88H。DAC0832的ILE信號與+5V連在一起,、WR1和WR2均接地,總是有效的,DAC0832的輸入寄存器和DAC寄存器均處于選通狀態(tài),只要CPU想88H端口執(zhí)行一條輸出指令,就會使XFER有效,CPU輸出繁榮數(shù)字量就會順利通過DAC0832的兩個寄存器,然后進(jìn)行D/A轉(zhuǎn)換,在運算放大器的輸出端得到轉(zhuǎn)換結(jié)果。
(3)8253、8255A在本次設(shè)計中的作用及工作方式8253在本次設(shè)計中用作定時,工作于方式0,與8255A連接使用完成定時操作。8255A采用工作方式0進(jìn)行輸入操作,工作方式0是8255A個端口的基本輸入輸出方式,CPU可從指定端口輸入信息,也可向指定端口輸出信息。當(dāng)8253寫入方式0控制字后,計數(shù)輸出端OUT0立即變?yōu)榈碗娖剑⑶以谟嫈?shù)過程中一直保持低電平,當(dāng)計數(shù)完成時,OUT0輸出變?yōu)楦唠娖健?253計數(shù)器0的OUT0與8255A的PA0連接,因此可通過查詢PA0是否為1,判斷計數(shù)是否完成。計數(shù)完成,則表示定時時間到。
(4)74LS138在本次設(shè)計中的作用譯碼器74LS138對地址線進(jìn)行譯碼以產(chǎn)生各接口芯片所需的信號各接口芯片端口地址分配如下:
芯片A7
A6
A5A4
A3
A2A1
A0
選中的芯片端口地址82531
0
01
0
00
0
00
0
00
00
1Y0選中8253計數(shù)器0
選中8253控制口
80H
81H8255A1
0
01
0
00
0
10
0
10
00
1Y1選中8255A的A口
選中8255A控制口
84H
85HDAC08321
0
00
1
00
0Y2選中DAC
88HADC08091
0
01
0
01
0
00
1
11
0
01
0
10
00
00
0Y3選中ADCIN0
選中ADC轉(zhuǎn)換結(jié)果端口
選中ADC的EOC端口
8CH
90H
94H
4.各芯片工作原理及功能簡介(1)ADC0809
ADC0809是CMOS工藝制成的雙列直插式8位A/D轉(zhuǎn)換芯片,內(nèi)部采用逐次逼近原理,單極性,量程為0~+5V。片內(nèi)部有8路模擬開關(guān),可控制選擇輸入8個模擬量之中的一個,并帶有三態(tài)輸出鎖存緩沖器,可直接與CPU總線連接,不需要外部鎖存器,是應(yīng)用較廣泛的一種A/D轉(zhuǎn)換芯片。①ADC0809內(nèi)部結(jié)構(gòu)ADC0809內(nèi)部結(jié)構(gòu)框圖如圖1所示ADC0809內(nèi)部由兩部分電路組成:第一部分:8路模擬通道選擇開關(guān),地址鎖存器和譯碼器。第二部分:比較器、8位逐次逼近寄存器SAR、8位開關(guān)樹型D/A轉(zhuǎn)換電路、控制邏輯、三態(tài)輸出緩沖鎖存器。工作原理:由ADDA、ADDB、ADDC及ALE選擇8個模擬量之一,并通過通道選擇開關(guān)加至比較器一端。由START信號啟動A/D轉(zhuǎn)換開始且SAR清0。在CLOCK的控制下,將SAR從高位逐次置1,并將每次置位后的SAR送D/A轉(zhuǎn)換器轉(zhuǎn)換成與SAR中數(shù)字量成正比的模擬量。DAC的輸出加至比較器的另一端與輸入的模擬電壓進(jìn)行比較,若Vi大于等于V0保留SAR中該位的1;若Vi小于V0則該位清0。經(jīng)過8次比較(8個CLOCK)后,SAR中的8位數(shù)字量即是結(jié)果。在OE有效時,將SAR中的8位二進(jìn)制數(shù)輸出至鎖存器,并通過D7~D0輸出,同時發(fā)出EOC轉(zhuǎn)換結(jié)束信號。
圖1ADC0809內(nèi)部結(jié)構(gòu)框圖
②ADC0809引腳功能如下:
IN0~I(xiàn)N7:8路模擬輸入通道。D0~D7:8位數(shù)字量輸出端。START:啟動轉(zhuǎn)換命令輸入端,由1→0時啟動A/D轉(zhuǎn)換,要求信號寬度>100nOE:輸出使能端,高電平有效ADDA、ADDB、ADDC:地址輸入線,用于選通8路模擬輸入中的一路進(jìn)入A/D轉(zhuǎn)換。其中ADDA是LSB位,這三個引腳上所加電平的編碼為000~111,分別對應(yīng)IN0~I(xiàn)N7,例如,當(dāng)ADDC=0,ADDB=1,ADDA=1時,選中IN3通道。ALE:地址鎖存允許信號。用于將ADDA~ADDC三條地址線送入地址鎖存器中。EOC:轉(zhuǎn)換結(jié)束信號輸出。轉(zhuǎn)換完成時,EOC的正跳變可用于向CPU申請中斷,其高電平也可供CPU查詢。CLK:時鐘脈沖輸入端,要求時鐘頻率不高于640KHZ。REF(+)、REF(-):基準(zhǔn)電壓,一般與微機(jī)接口時,REF(-)接0V或-5V,REF(+)接+5V或0V。
(2)DAC0832DAC0832是用COMS工藝制成的雙列直插式8位D/A轉(zhuǎn)換芯片,內(nèi)部采用T型電阻網(wǎng)絡(luò),數(shù)字輸入有輸入寄存器和DAC寄存器兩級緩沖,可以雙緩沖、單緩沖或直接輸入方式連接。DAC0832內(nèi)部結(jié)構(gòu)圖DAC0832引腳圖如圖2所示,各引腳功能如下:
圖2DAC0832引腳圖
DI7~DI0:轉(zhuǎn)換數(shù)據(jù)輸入:片選信號(輸入),低電平有效ILE:數(shù)據(jù)鎖存允許信號(輸入),高電平有效:第1寫信號(輸入),低電平有效上述兩個信號控制輸入寄存器是數(shù)據(jù)直通方式還是數(shù)據(jù)鎖存方式;當(dāng)ILE=1和=0時,為輸入寄存器直通方式;當(dāng)ILE=1和=1時,為輸入寄存器鎖存方式。:第2寫信號(輸入),低電平有效:數(shù)據(jù)傳送控制信號(輸入),低電平有效上述兩個信號控制DAC寄存器是數(shù)據(jù)直通方式還是數(shù)據(jù)鎖存方式;當(dāng)=0和=0時,為DAC寄存器直通方式;當(dāng)=1和=0時,為DAC寄存器鎖存方式。Iout1:電流輸出1Iout2:電流輸出2DAC轉(zhuǎn)換器的特性之一是:Iout1+Iout2=常數(shù)。Rfb—反饋電阻端0832是電流輸出,為了取得電壓輸出,需在電壓輸出端接運算放大器,Rfb即為運算放大器的反饋電阻端。運算放大器的接法如圖3所示。Vref:基準(zhǔn)電壓,其電壓可正可負(fù),范圍-10V~+10V。DGND:數(shù)字地AGND:模擬地
DAC0832的三種工作方式①直通方式當(dāng)ILE接高電平,都接數(shù)字地時,DAC處于直通方式,8位數(shù)字量一旦到達(dá)D0~D7輸入端,就立即加到D/A轉(zhuǎn)換器,被轉(zhuǎn)換成模擬量。在D/A實際連接中,要注意區(qū)分“模擬地”和“數(shù)字地”的連接,為了避免信號串?dāng)_,數(shù)字量部分只能連接到數(shù)字地,而模擬量部分只能連接到模擬地。這種方式可用于不采用微機(jī)的控制系統(tǒng)中。②單緩沖方式單緩沖方式是將兩個鎖存器之一處于直通狀態(tài),輸入數(shù)據(jù)中經(jīng)過一級緩沖送入D/A轉(zhuǎn)換器。如把都接地,使寄存鎖存器2處于直通狀態(tài),ILE接+5V,接CPU系統(tǒng)總線的信號,接端口地址譯碼信號,這樣CPU可執(zhí)行一條OUT指令,使和有效,寫入數(shù)據(jù)并立即啟動D/A轉(zhuǎn)換。③雙緩沖方式即數(shù)據(jù)通過兩個寄存器鎖存后再送入D/A轉(zhuǎn)換電路,執(zhí)行兩次寫操作才能完成一次D/A轉(zhuǎn)換。這種方式可在D/A轉(zhuǎn)換的同時,進(jìn)行下一個數(shù)據(jù)的輸入,可提高轉(zhuǎn)換速度。更為重要的是,這種方式特別適用于系統(tǒng)中含有2片及以上的DAC0832,且要求同時輸出多個模擬量的場合。
(3)可編程計數(shù)/定時接口芯片82538253外部引腳結(jié)構(gòu)8253各引腳的功能定義如下:
數(shù)據(jù)總線D0~D7:它們?yōu)槿龖B(tài)輸入/輸出線,用于將8253與系統(tǒng)數(shù)據(jù)總線相連,是8253與CPU接口數(shù)據(jù)線,供CPU向8253讀寫數(shù)據(jù)、命令和狀態(tài)信息。
讀信號RD:它為輸入信號,低電平有效。它由CPU發(fā)出,用于對8253寄存器讀操作。
寫信號WR:它為輸入信號,低電平有效。它由CPU發(fā)出,用于對8253寄存器寫操作。
地址譯碼線A1A0:這兩根線接到系統(tǒng)地址總線的A1A0上。當(dāng)CS=0,8253被選中時,A1A0用于選擇8253內(nèi)部寄存器,以便對它們進(jìn)行讀寫操作。8253內(nèi)部寄存器與地址碼A1A0的關(guān)系如表7-3所示。
時鐘信號CLK:CLK為輸入信號。3個計數(shù)器,各有一獨立的時鐘輸入信號,分別為CLK0、CLK1、CLK2。時鐘信號的作用是在8253定時或計數(shù)工作時,每輸入一個時鐘信號CLK,便使定時或計數(shù)值減1。它是計量的基本時鐘。
門選通信號GATE:GATE信號為輸入信號。3個通道,每一個都有自己的門選通信號,分別為GATE0、GATE1、GATE2。GATE信號的作用是用來禁止、允許或開始計數(shù)過程。對8253的6種不同工作方式,GATE信號的控制不同(參見后面的表7-4)。
計數(shù)器輸出信號OUT:OUT是8253向外輸出信號。3個獨立通道,每一個都有自己的計數(shù)器輸出信號,分別為OUT0、OUT1、OUT2。OUT信號的作用是,計數(shù)器工作時,當(dāng)定時或計數(shù)值減為0時,即在OUT線上輸出OUT信號,用以指示定時或計數(shù)已到。這個信號可作為外部定時、計數(shù)控制信號引到I/O設(shè)備用來啟動某種操作(開/關(guān)或啟/停),也可作為定時、計數(shù)已到的狀態(tài)信號供CPU檢測,或作為中斷請求信號使用。8253的內(nèi)部結(jié)構(gòu)①數(shù)據(jù)總線緩沖器該緩沖器為8位雙向三態(tài)的緩沖器,8根數(shù)據(jù)線D0~D7可直接掛在CPU數(shù)據(jù)總線上。②
讀/寫控制邏輯它是8253內(nèi)部操作的控制部分,它決定三個計數(shù)器和控制字寄存器中哪一個能進(jìn)行工作,并控制內(nèi)部總線上數(shù)據(jù)傳送的方向。③控制字寄存器接收從CPU來的控制字,并由控制字的D7、D6位的編碼決定該控制字寫入哪個計數(shù)器的控制寄存器,控制寄存器只能寫入,不能讀出。④計數(shù)器8253有3個獨立的計數(shù)器通道,每個通道的結(jié)構(gòu)完全相同,如圖10.2所示。每一個通道有一個16位減法計數(shù)器;還有對應(yīng)的16位初值寄存器和輸出鎖存器。每個計數(shù)器都可以對其CLK輸入端輸入的脈沖按照二進(jìn)制或BCD碼從預(yù)置的初值開始進(jìn)行減1計數(shù),當(dāng)減至0時,從OUT端輸出一個信號,計數(shù)的開始由軟件啟動或硬件門控信號GATE控制。計數(shù)開始前寫入的計數(shù)初值存于初值寄存器;計數(shù)過程中,減法計數(shù)器的值不斷遞減,而初值寄存器中的初值不變。輸出鎖存器則用于寫入鎖存命令時鎖定當(dāng)前計數(shù)值。當(dāng)8253用作計數(shù)器時,加在CLK引腳上脈沖的間隔可以是不相等的;當(dāng)它用作定時器時,則在CLK引腳應(yīng)輸入精確的時鐘脈沖,8253所能實現(xiàn)的定時時間,取決于計數(shù)脈沖的頻率和計數(shù)器的初值。對8253來講,外部輸入到CLK引腳上的時鐘脈沖頻率不能大于2MHZ,否則需分頻后才能送到CLK端。
(4)可編程并行I/O接口芯片8255A8255A的外部引腳布局如圖所示。它有40根引腳,可分為與系統(tǒng)總線(如8086)連接的引腳和與外部設(shè)備連接的引腳。8255A引腳圖8255A8255A①并行輸入/輸出端口A、B、C8255A芯片具有24個可編程輸入輸出引腳,分成3個8位端口,其中:端口A包含一個8位數(shù)據(jù)輸出鎖存/緩沖寄存器和一個8位數(shù)據(jù)輸入鎖存器;端口B包含一個8位數(shù)據(jù)輸入/輸出、鎖存/緩沖寄存器和一個8位數(shù)據(jù)輸入緩沖寄存器;端口C包含一個輸出鎖存/緩沖寄存器和一個輸入緩沖寄存器。必要時端口C可分成兩個4位端口,分別與端口A與端口B配合工作,通常將端口A和端口B定義為輸入/輸出的數(shù)據(jù)端口,而端口C可作為狀態(tài)或控制信息的傳送端口。②A組和B組控制部件端口A與端口C的高4位(PC7~PC4)構(gòu)成A組,由A組控制部件實現(xiàn)控制功能,端口B與端口C的低4位(PC3~PC0)構(gòu)成B組,由B組控制部件實現(xiàn)控制功能。它們各有一個控制單元,可接收來自讀/寫控制部件的命令和CPU通過數(shù)據(jù)總線(D7~D0)送來的控制字,并根據(jù)它們來定義各個端口的操作方式。③
數(shù)據(jù)總線緩沖器這是一個三態(tài)雙向8位數(shù)據(jù)緩沖器,它是8255A與8086CPU之間的數(shù)據(jù)接口,CPU輸入輸出的數(shù)據(jù),CPU輸出的控制字以及外設(shè)的狀態(tài)信息都是通過這個緩沖器進(jìn)行傳送。④
讀/寫控制部件
這是8255A內(nèi)部完成讀/寫控制功能的部件,它與CPU的地址總線及有關(guān)的控制信號相連,接收CPU的控制命令,并根據(jù)它們向片內(nèi)各功能部件發(fā)出操作命令(5)74LS138譯碼器74LS138是3-8線二進(jìn)制譯碼器,它有3個輸入端,8個輸出端,輸出低電平有效。該器件3個輸入端A、B、C接受二進(jìn)制碼,其輸出端Y0~Y7工8條譯碼輸出線。除此之外,還有3個使能控制端G、G2A、G2B,目的在于靈活應(yīng)用并組合各種電路。只有當(dāng)G=0,同時G2A+G2B=0時,譯碼器工作,否則,譯碼器功能被禁止。
5.流程圖
6.具體實現(xiàn)方法實現(xiàn)該聲音錄放系統(tǒng)功能的程序可以分為以下三個部分(1)主程序主程序的主要任務(wù)是對8253、8255A進(jìn)行初始化,實現(xiàn)錄、放音的功能調(diào)用。①8253初始化設(shè)置(C)放音子程序8253在程序中設(shè)置成方式0,計數(shù)200,定時0.2ms8253工作方式控制字:10000000B,即10H;選擇通道0,方式0,只讀寫的、低8位設(shè)8253輸入時鐘信號的頻率為1MHZ計數(shù)初值=0.2ms/0.001ms=200控制字端口地址為:81H計數(shù)器0端口地址為:80H②8255A初始化設(shè)置8255A控制字:10010000B,即90H;方式0,A口輸入控制字端口地址為:85HA口地址為:84H③調(diào)用錄、放音子程序首先DOS功能調(diào)用,顯示錄音提示信息,然后BIOS功能調(diào)用,讀鍵盤緩沖區(qū)字符,等待鍵盤輸入,若無鍵按下,繼續(xù)等待;有鍵按下,則調(diào)用錄音子程序,錄音12秒。清除鍵盤緩沖區(qū)后,再進(jìn)行放音子程序的調(diào)用。(2)A/D錄放音子程序根據(jù)設(shè)計要求,ADC0809要以每秒5000的速率采集語音數(shù)據(jù),錄音12秒,因此共需采集5000×12=60000個數(shù)據(jù),計數(shù)器CX=60000。選擇IN0通道進(jìn)行數(shù)據(jù)采集(D2=0、D1=0、D0=0),尋址A/D轉(zhuǎn)換啟動端口地址,CPU向IN0通道執(zhí)行一條輸出指令,啟動一次A/D轉(zhuǎn)換。尋址EOC狀態(tài)端口地址,讀取EOC狀態(tài),測試轉(zhuǎn)換是否結(jié)束,未完則繼續(xù)等待,轉(zhuǎn)換完成后,則尋址ADC0809轉(zhuǎn)換結(jié)果端口,CPU執(zhí)行一條輸入指令,取A/D轉(zhuǎn)換結(jié)果。A/D轉(zhuǎn)換啟動端口地址:8CH轉(zhuǎn)換結(jié)果端口地址:90HEOC狀態(tài)端口地址:94H(3)D/A放音子程序置數(shù)據(jù)區(qū)首址至SI,計數(shù)器CX=60000。從數(shù)據(jù)區(qū)取數(shù)據(jù),尋址DAC端口地址,CPU執(zhí)行一條輸出指令,進(jìn)行D/A轉(zhuǎn)換。DAC端口地址為:88H(4)延時子程序DELAY是延時0.2ms的子程序
將8253計數(shù)器0的OUT0輸入到8255A端口,測試PA0是否為1,若不為1,則表示8253未計數(shù)完,繼續(xù)查詢,如果為1,則表示8253計數(shù)完成,定時時間到。四、心得體會在進(jìn)行這次微機(jī)原理及其應(yīng)用課程設(shè)計之前,我覺得利用匯編語言進(jìn)行較大規(guī)模程序的編寫是非常困難的,但通過對這次課題數(shù)字錄音機(jī)的設(shè)計與編程,我不僅加深了對微機(jī)原理及接口技術(shù)的認(rèn)識和理解,還認(rèn)識到只要自己認(rèn)真對待,通過查閱資料,理解消化資料,編程并不是難事。剛拿到這個課題時,我還十分擔(dān)心編不出程序,因為DAC0832,ADC0839都是從未接觸過的芯片,設(shè)計要求中要通過傳感器及ADC0809采集語音信號,錄音12秒,再通過DAC0832送至喇叭放音,我感覺很抽象,以為程序一定會很復(fù)雜,但通過查閱資料,了解了數(shù)模轉(zhuǎn)換和模數(shù)轉(zhuǎn)換芯片的功能及應(yīng)用,我認(rèn)為這次的設(shè)計任務(wù)并不麻煩,但在編程中也遇到一些問題,比如如何利用8253定時延時,CPU與A/D、D/A轉(zhuǎn)換芯如何連接,在請教知道老師以后,問題基本得以解決。我和同組人通過所獲得的資料及老師的提示,終于完成了編程任務(wù)。雖然不是很復(fù)雜龐大的程序,但我們依然很有成就感,因為我們真正掌握了這些知識。每次課程設(shè)計,我都會認(rèn)真對待,因為這個是培養(yǎng)我們應(yīng)用能力的最佳機(jī)會,也是對課本知識的進(jìn)一步深化與提高。通過這次課程設(shè)計我又收獲了不少新知識,掌握了這次設(shè)計中所用到的芯片的工作原理功能及應(yīng)用,而且經(jīng)過這次設(shè)計,我們的自學(xué)能力與獨立思考能力也得到了提高。參考文獻(xiàn)1.《微機(jī)原理與接口技術(shù)》
主編:彭楚武
湖南大學(xué)出版社2.《微機(jī)原理與接口技術(shù)實驗指導(dǎo)》
主編:黃海萍、陳用昌
國防工業(yè)出版社3.《微機(jī)原理應(yīng)用及實訓(xùn)》
主編:趙歡
高等教育出版社附錄1:源程序NAME
EXAMPLEDATA
SEGMENTBUF
DB60000DUP(?)MESS1
DB‘NOWREADAYTORACORD’,0DH,0AH,‘$’MESS2
DB‘NOWPLAYTHERECORDING!’,0DH,0AH,‘$’DATA
ENDS
CODE
SEGMENTASSUME
CS:CODE,DS:DATASTART:
MOVDX,81H
;指向8253控制口
MOVAL,10H
;控制字:選擇通道0,方式0,只讀寫的、低8位
OUTDX,AL
;送控制字
MOVDX,85H
;指向8255A控制口
MOVAL,90H
;控制字:方式0,A口輸入
OUTDX
MOVAX,DATA
MOVDS,AX
MOVDX,OFFSETMESS1
MOVAH,09H
INT21H
;顯示錄音提示信息
WAIT:
MOVAH,01H
INT16H
;讀鍵盤緩沖區(qū)字符,是否有鍵按下JZ
WAIT
;無鍵按下,繼續(xù)等待CALLREAD
;有鍵按下,調(diào)用錄音子程序
MOVDX,OFFSETMESS2
MOVAH,09HINT21H
;顯示放音提示信息
MOVAL,07HMOVAH,0CHINT21H
;清除鍵盤緩沖區(qū)
RE:
MOVAH,01HINT16H
;讀鍵盤緩沖區(qū)字符,是否有鍵按下JZ
RE
;無鍵按下,繼續(xù)等待CALL
PLY
;有鍵按下,調(diào)用放音子程序
CMPAL,20H
;是空格嗎JZ
RE
;不是,繼續(xù)循環(huán)MOVAH,4CH
;是,子程序返回INT21H
READPROCNEARMOVDI,OFFSETBUF
;尋址數(shù)據(jù)區(qū)MOVCX,60000
;裝入計數(shù)器CX=60000
READ1:
MOVAL,00H
;選擇IN0通道
MOVDX,8CH
;DX指A/D轉(zhuǎn)換啟動端口地址
OUTDX,AL
;啟動A/D轉(zhuǎ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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年分期家庭教育合同
- 《小島失蹤之謎》課件
- 2025年度綠色環(huán)保木材進(jìn)口與銷售合作合同范本大全4篇
- 二零二五年度冷鏈物流倉單質(zhì)押貸款服務(wù)協(xié)議2篇
- 二零二五年度競業(yè)禁止協(xié)議法律風(fēng)險防控及合規(guī)咨詢合同
- 二零二五年度商業(yè)地產(chǎn)地下車位銷售及品牌推廣協(xié)議
- 二零二五年度股份有限公司私下股份分配與公司戰(zhàn)略協(xié)議書
- 二零二五版鋁單板幕墻材料采購專項合同4篇
- 二零二五年度離婚協(xié)議中兩個子女教育支持合同
- 二零二五年度浙江省企業(yè)合同制員工聘用合同
- 2025屆安徽省皖南八校高三上學(xué)期8月摸底考試英語試題+
- 工會資金采購管理辦法
- 玩具活動方案設(shè)計
- Q∕GDW 516-2010 500kV~1000kV 輸電線路劣化懸式絕緣子檢測規(guī)程
- 2024年湖南汽車工程職業(yè)學(xué)院單招職業(yè)技能測試題庫及答案解析
- 家長心理健康教育知識講座
- GB/T 292-2023滾動軸承角接觸球軸承外形尺寸
- 軍人結(jié)婚函調(diào)報告表
- 民用無人駕駛航空器實名制登記管理規(guī)定
- 北京地鐵6號線
評論
0/150
提交評論