freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

計算機綜合實踐報告(編輯修改稿)

2025-06-10 03:40 本頁面
 

【文章內(nèi)容簡介】 定時器工作在方式3,是一個頻率發(fā)生器,它負責(zé)向揚聲器發(fā)送指定頻率的脈沖信號。當8255的PA0和PA1都為1時,8253發(fā)出指定頻率的聲音信號的前提下,聲音信號通過與門到達驅(qū)動器驅(qū)動揚聲器發(fā)聲。硬件原理圖如圖1所示:8253計數(shù)器與門揚聲器驅(qū)動揚聲器8255 PA08255 PA1門控控制喇叭Q0圖1 硬件原理圖揚聲器驅(qū)動電路如圖2所示。圖2 揚聲器驅(qū)動電路軟件設(shè)計 系統(tǒng)要求實現(xiàn)2個功能,電子琴和音樂盒的功能。兩者發(fā)聲的方法一樣,只是一個數(shù)據(jù)是從鍵盤讀取的,另一個是已經(jīng)保存好的數(shù)據(jù)。首先我們可以用一個子程序?qū)崿F(xiàn)單個音調(diào)的產(chǎn)生,對8253輸入不同的計數(shù)初值生成不同頻率的波形,然后延時一段時間。電子琴程序主要是讀取鍵盤按鍵,根據(jù)鍵值產(chǎn)生不同的音調(diào)即可。而樂曲的播放先將樂曲的音符編碼表和節(jié)拍編碼表建立好的,然后在播放時讀取數(shù)據(jù)。1. 單音調(diào)子程序SOUND單音調(diào)子程序的調(diào)用前需要進行以下幾個方面工作:1)確定相應(yīng)的音調(diào)所對應(yīng)的頻率,查表可以得到,再由頻率得到對應(yīng)的8253計數(shù)初值。2)確定音長,即一個音符所持續(xù)的時間。在單音調(diào)子程序中實現(xiàn)發(fā)出一個音符的聲音,持續(xù)所需的時間,流程圖如圖3所示:讀取8253計數(shù)初值和音長8253置初值開啟與門和8253GATE延時關(guān)閉與門和8253GATE返回圖3 單音調(diào)子程序流程圖2.音樂盒程序音樂盒的樂曲播放程序中需要有兩組數(shù)據(jù)支持:一組是頻率數(shù)據(jù),一組是節(jié)拍時間數(shù)據(jù)。音符的頻率可以通過簡譜從頻率表中查得。節(jié)拍時間就是音符的持續(xù)時間,取決于樂曲的速度和每個音符的節(jié)拍數(shù)據(jù)。如4/4(四四拍)中,每小節(jié)包括4拍,全音符持續(xù)4拍,二分音符持續(xù)2拍,四分音符持續(xù)一拍,八分音符持續(xù)半拍等。有了音調(diào)與頻率和時間的關(guān)系后,就可以按照樂曲的曲譜將每個音符的頻率和持續(xù)的時間定義成兩組數(shù)據(jù)表,然后編程依次取出表中的頻率值和節(jié)拍值,調(diào)用單音調(diào)子程序就可依次產(chǎn)生各個音調(diào),播放出樂曲。在程序中存儲幾個樂曲數(shù)據(jù),根據(jù)音樂盒子菜單選擇相應(yīng)的樂曲演奏,讀取對應(yīng)的數(shù)據(jù)輸出。樂曲《兩只老虎》的簡譜如下:兩只老虎1=C 4/41 2 3 1 | 1 2 3 1 | 3 4 5 |3 4 5 | 3 1 | 3 1 |2 5 1 | 2 5 1 |對應(yīng)的頻率數(shù)據(jù)表Freq、節(jié)拍數(shù)據(jù)表Time如下:TWOTIGERS_FRE DW 2 DUP(524,588,660,524,0) ;樂曲的頻率表 DW 2 DUP(660,698,784,0) DW 2 DUP(784,880,784,698,660,524,0) DW 2 DUP(588,392,524,0),1TWOTIGERS_TIME DW 10 DUP(100),200,100,100,200 ;樂曲的時間表 DW 2 DUP(50,50,50,50,100,100) DW 2 DUP(100,100,200)outb_p(0x34,0x43)。 outb_p(LATCHamp。0xff,0x40)。 outb_p(LATCH8,0x40)。 outb(inb_p (0x21) amp。 ~0x01, 0x21)。 //允許接收定時器中斷 } void do_timer(void) { 這是定時器主程序,用于每隔一段時間后進行某些操作 } []: //以下是nasm格式的匯編代碼,這個中斷處理函數(shù)必須用匯編 timer_interrupt: push gs push fs push es push ds push ebp push edi push esi push edx push ecx push ebx push eax 。如果你不在操作系統(tǒng)下使用,以下三行必須刪除,否則必須把0x10更改為內(nèi)核段選擇符mov eax,0x10 mov ds,ax mov es,ax mov al,0x20 out 0xa0,al 。發(fā)送EOI out 0x20,al call do_timer pop ebx pop ecx pop edx pop esi pop edi pop ebp pop ds pop es pop fs pop gs xor eax,eax iretd實驗四 實時時鐘實驗 實驗?zāi)康模赫莆誂RM7嵌入式系統(tǒng)實驗箱的使用方法;掌握LPC2148的內(nèi)部定時器模塊的使用方法;掌握LPC2148的RTC模塊的使用方法。 實驗內(nèi)容:學(xué)習(xí)使用LPC2148的內(nèi)部定時
點擊復(fù)制文檔內(nèi)容
外語相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1