矩形波正弦波三角波的匯編語言設(shè)計資料_第1頁
矩形波正弦波三角波的匯編語言設(shè)計資料_第2頁
矩形波正弦波三角波的匯編語言設(shè)計資料_第3頁
矩形波正弦波三角波的匯編語言設(shè)計資料_第4頁
矩形波正弦波三角波的匯編語言設(shè)計資料_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、關(guān)于微機原理與接口技術(shù)的波形設(shè)計課程設(shè)計任務(wù)書目 錄第一章 微機應(yīng)用系統(tǒng)課程設(shè)計的目的意義21.1 設(shè)計目的21.1 課程在教學計劃中的地位和作用2第二章 信號發(fā)生器系統(tǒng)軟硬件設(shè)計任務(wù)32.1 設(shè)計內(nèi)容及要求32.2 課程設(shè)計的要求3第三章 總體設(shè)計方案33.1 設(shè)計思想3 3.2 總體設(shè)計流程圖4第四章 硬件設(shè)計4 4.1 硬件設(shè)計概要44.2 所用到的芯片及其各自功能說明44.3 硬件電路設(shè)計系統(tǒng)原理圖6第五章 軟件設(shè)計75.1 流程圖及其說明75.2 源程序及其說明8第六章 軟件系統(tǒng)的使用說明15第七章 收獲、體會15附錄 參考文獻 15第一章 微機應(yīng)用系統(tǒng)課程設(shè)計的目的意義1.1設(shè)計目

2、的通過該課程的學習使學生對微機系統(tǒng)有一個全面的了解、掌握常規(guī)芯片的使用方法、掌握簡單微型計算機應(yīng)用系統(tǒng)軟硬的設(shè)計方法,進一步鍛煉同學們在微型計算機應(yīng)用方面的實際工作能力。本設(shè)計主要能夠完成對制定波形的形成,可以通過輸入來改變頻率。此信號發(fā)生器可以很好的運用于有需要的場合。1.2 課程在教學計劃中的地位和作用微型計算機原理與接口計數(shù)課程是我們測控技術(shù)專業(yè)在這個學期學的一門基礎(chǔ)課程。通過該課程的學習使我們對微機系統(tǒng)有一個基本的了解、掌握常規(guī)芯片的使用方法、掌握簡單微型計算機應(yīng)用系統(tǒng)軟硬的設(shè)計方法。 微機應(yīng)用系統(tǒng)設(shè)計與綜合實驗是結(jié)合本學期的課程開設(shè)的一門實習,它的主要目的:通過課程設(shè)計還要進一步鍛煉

3、同學們在微型計算機應(yīng)用方面的實際工作能力。計算機科學在應(yīng)用上得到飛速發(fā)展,因此,學習這方面的知識必須緊密聯(lián)系實際:掌握這方面的知識更要強調(diào)解決實際問題的能力。同學們要著重學會面對一個實際問題,如何去自己收集資料,如何自己去學習新的知識,如何自己去制定解決問題的方案并通過實踐不斷地提高分析和解決問題的能力。第二章 設(shè)計任務(wù)2.1 設(shè)計內(nèi)容及要求本設(shè)計綜合應(yīng)用D/A轉(zhuǎn)換器、定時器/計數(shù)器電路,中斷技術(shù):通過PC機定時,產(chǎn)生:鋸齒波、三角波、正弦波等模擬信號輸出,信號頻率可通過PC機鍵盤調(diào)節(jié)。2.2 課程設(shè)計要求設(shè)計要求畫出電路原理圖,說明工作原理,編寫程序及程序流程圖。第三章 總體設(shè)計方案3.1

4、設(shè)計思想及方案論證 由于要求達到模擬信號波形發(fā)生,因此要由D/A轉(zhuǎn)換芯片0832來來完成此項任務(wù),由8253形成波形的主要做法是:先輸出一個下限電平,將其保持t然后輸出一個稍高的電平,在保持t,然后重復(fù)此過程,因此需要延長0832輸入數(shù)據(jù)的時間間隔來改變頻率。如圖3-1信號發(fā)生波形圖所示。0832輸入的數(shù)據(jù)的延時可以通過軟件完成,也可以通過硬件完成。由于實驗要求輸出的波的頻率可以改變,且精確,所以選用硬件延時。 +5v 0v 圖3-1 信號發(fā)生波形圖硬件延時主要由計時器8253和中斷控制器8259來實現(xiàn)。由8253輸出的方波的高低電平,來觸發(fā)8259的IR0端,8259給CPU中斷信號,CPU

5、中斷來執(zhí)行相應(yīng)的中斷子程序,中斷子程序為向0832輸出數(shù)據(jù)的程序,通過選擇此程序可以產(chǎn)生鋸齒波,方波,正弦波。由于0832產(chǎn)生的方波的頻率可以控制,所以每次中斷執(zhí)行波形發(fā)生程序的時間間隔可以精確控制。以此來控制輸出的波形頻率。3.2總體設(shè)計方案 總體的設(shè)計就是以8253定時中斷,中斷的子程序來執(zhí)行輸出,輸出的信號經(jīng)過信號發(fā)生器形成波形。初步設(shè)想圖3-2如圖所示。 intr8088 Clk 82530832Ir0 int8259 圖3-2 硬件簡圖第四章 硬件設(shè)計4.1芯片簡介4.1.1可編程中斷控制器8259a8259a是8086/8088系列的可編程中斷控制器,8259a為28個引腳的雙列直

6、插芯片。它的主要功能是:(1)據(jù)8級優(yōu)先級控制,通過聯(lián)級可以擴展到64級優(yōu)先控制。(2)每一級中斷可由程序單獨屏蔽或允許。(3)可提供中斷類型號傳送給CPU。(4)可以通過編程選擇多種不同工作方式。 引腳功能:D7-D0:雙向數(shù)據(jù)線,三態(tài),與數(shù)據(jù)總線相連。IR7-IR0:外設(shè)的中斷請求信號輸入端,輸入,中斷請求:可以是電平觸發(fā),或者邊緣觸發(fā)。RD:讀命令信號,輸入,低電平有效,用來控制數(shù)據(jù)由8259A讀WR:寫命令信號,輸入,地點平有效,用來控制寫到8259CS:片選信號,輸入,通過譯碼器與地址總線相連INT:向CPU發(fā)出中斷請求信號,輸出,與CPU的INTR相連INTA:CPU給8259的中

7、斷響應(yīng)信號,輸入。4.1.2DAC0832:NSC公司生產(chǎn)的DAC0832,是一種內(nèi)部帶有數(shù)據(jù)輸入寄存器的8位D/A轉(zhuǎn)化器,采用CMOS工藝制成,芯片內(nèi)部R-2R梯形電阻網(wǎng)絡(luò),用于對參考電壓產(chǎn)生的電壓進行分流,完成模數(shù)轉(zhuǎn)換,轉(zhuǎn)換結(jié)果以一組差動電流 IOUT1IOUT2輸出各引腳的功能分述如下:VREF : 參考電壓輸入端。根據(jù)需要一定大小的電壓,由于它是轉(zhuǎn)換的基準,要求數(shù)值正確,穩(wěn)定性好。VCC:工作電壓輸入端。AGAN為模擬地,DGAN為數(shù)字地。在模擬電路中,所有的模擬地要連在一起然后將模擬地,數(shù)字地連接到一個公共接地點。DI7-DI0:數(shù)據(jù)輸入??芍苯舆B接到數(shù)據(jù)總線。IOUT1IOUT2:

8、互補的電流輸出端。為了輸出模擬電壓,需加轉(zhuǎn)換電路。4.1.3 8253inter8253是一種能夠完成定時和計數(shù)的芯片,8253內(nèi)部有3個16位計數(shù)器通道,通過對他們編程,每個計數(shù)器可以按照6種工作方式工作,并且都可以按2或10進制格式進行計數(shù)。,最高頻率為2HZ.。8253還可以用于許多其他場合,比如可作編程方波發(fā)生器,分頻器等。引腳:1數(shù)據(jù)緩沖總線數(shù)據(jù)總線緩沖器是8253與系統(tǒng)總線相連時使用的接口電路,它由8位雙相三態(tài)緩沖器構(gòu)成,CPU用輸入輸出指令對8253進行讀寫操作的信息都由8位數(shù)據(jù)總線傳輸:(1)CPU在對8253進行初始化編程時,向他寫入控制字。(2)CPU向某一計時器寫入計數(shù)初

9、值。(3)從計數(shù)器讀出計數(shù)值。2讀寫控制邏輯讀寫控制邏輯接受系統(tǒng)控制總線送來的輸入信號,經(jīng)由組合后形成控制信號,對各部分操作進行控制??山邮艿男盘栍校海?) CS片選,低電平有效,由數(shù)據(jù)總線經(jīng)由IO端口譯碼電路產(chǎn)生。只有CS低電平時,CPU才能對8253進行讀寫操作。(2) RD讀信號,低電平有效,當RD位地電平時,表示CPU正在讀取所選定的計數(shù)器的通道的內(nèi)容。(3) WR寫信號,低電平有效。當WR為低電平時,表示CPU正在將計數(shù)器初值寫入所選中的通道口中,或者將控制字寫入內(nèi)部寄存器中。(4) A1A2 端口選擇信號,改變它的值,來選擇8253內(nèi)三個計數(shù)器通道。如果8253和與8位數(shù)據(jù)總線的微

10、機相連,只要將A1A0分別與地址總相聯(lián)。如果系統(tǒng)采用的是8086CPU,則數(shù)據(jù)總線為16位,傳輸數(shù)據(jù)時,總是將低8位數(shù)據(jù)送往偶地址,將高8位送往奇地址。3計數(shù)器8253內(nèi)部包含三個完全相同俄計數(shù)器定時器通道,對3個通道的操作,完全獨立的。每個通道都包含1個8位的控制字寄存器,1個16位的減寄存器,和一個鎖存器,執(zhí)行部件是一個16位的減法計數(shù)器。每個通道工作時,對輸入到CLK引腳上的脈沖按2進制或10 進制格式進行計數(shù)。每當輸入一個時鐘脈沖,計數(shù)器減1,當計數(shù)器的值減為0時從,從OUT引腳輸出一個脈沖信號。GATE引腳上的門控制信號,決定他是否允許計數(shù)。43硬件電路設(shè)計系統(tǒng)原理圖圖4-1硬件原理

11、圖第五章 軟件設(shè)計 51流程圖主要進行系統(tǒng)初始化和外圍接口芯片初始化,及開中斷,等待中斷產(chǎn)生,其流程圖如圖5.1所示。 圖5-1程序流程圖52源程序及其說明data segmentsinbuf db 80h,8ch,98h,0a5h,0b0h,0bch,0c7h,0d1h db 0dah,0e2h,0eah,0f0h,0f6h,0fah,0fdh,0ffh db 0ffh,0fdh,0fah,0f6h,0f0h,0eah,0e2h,0dah db 0d1h,0c7h,0bch,0b0h,0a5h,98h,8ch,80h db 7fh,73h,67h,5ah,4fh,43h,38h,2eh db

12、 25h,1dh,15h,0fh,09h,05h,02h,00h db 00h,02h,05h,09h,0fh,15h,1dh,25h db 2eh,38h,43h,4fh,5ah,67h,73h,7fh mess1 db'方 波-1'0dh,0ah db'三角波-2'0dh,0ah db'方 波-3'0dh,0ah db'正弦波-3'0dh,0ah mess2 db'輸入發(fā)生頻率',0dh,0ah,'$' cunchu db ? jishu db ? data endsstack segment

13、stack st dw 20 dup(?) TOP label wordstack endscode segment assume cs:code,ds:data,ss:stack,es:datamain proc far mov ax,data mov ds,ax mov ax,stack mov ss,ax mov dx,8259AD0 ;初始化8259,設(shè)置為單片,上升沿觸發(fā),完全 mov al,00010011b ;非自動EOI方式 out dx,al mov dx,8259AD1 mov al,10000000b out dx,al mov al,00000001b out dx,a

14、l lea dx,mess2 ;輸入頻率 mov ah,09h call input mov ax,4096 ;將輸入的頻率計算,得出寫入8253的時間數(shù) mov bx,cx div bx mov cx,ax push cx mov dx,316h mov al,0010011b ;通道1方式字,方式0,BCD記數(shù) out dx,al mov dx,312h pop cx mov al,cl out dx,al mov al,ch out dx,al mov dx,316h ;通道0方式字,方式0,bcd計數(shù) mov al,00110111b out dx,al mov dx,310h mov

15、 al,16h ;16分頻,以0通道作為1通道的時鐘頻率,其頻率為0.125MHz out dx,al mov cuncu,0h ;將存儲單元清零 mov jishu,0h bg: lea dx,mess1 ;選擇波形 mov ah,09h int 21h mov ah,08h int 21h pop ax mov ah,al cmp al,'1' ;若為方波,將方波對應(yīng)的子程序?qū)懭胫袛嗟刂繁?mov ax,0 mov es,ax mov bx,08h*4 mov ax,offset fangbo mov es:word ptrbx,ax mov ax,seg fangbo m

16、ov es:word ptrbx+2,ax cmp al,'2' ;若為鋸齒波,將鋸齒對應(yīng)的子程序?qū)懭胫袛嗟刂繁?mov ax,0 mov es,ax mov bx,08h*4 mov ax,offset juchi mov es:word ptrbx,ax mov ax,seg juchi mov es:word ptrbx+2,ax cmp al,'3' ;若為三角波,將三角對應(yīng)的子程序?qū)懭胫袛嗟刂繁?mov ax,0 mov es,ax mov bx,08h*4 mov ax,offset sanjiao mov es:word ptrbx,ax mov

17、ax,seg sanjiao mov es:word ptrbx+2,ax cmp al,'4' ;若為正弦波,將正弦波對應(yīng)的子程序?qū)懭胫袛嗟刂繁?mov ax,0 mov es,ax mov bx,08h*4 mov ax,offset zhengxian mov es:word ptrbx,ax mov ax,seg zhengxian mov es:word ptrbx+2,ax sti CIR: JMP CIR retmain endp;輸入數(shù)字的子程序input proc near xor dx,dx xor cx,cx mov bx,10 lea si,flag m

18、ov byte ptrsi,0 mov ah,1 int 21h cmp al,0dh je enter sub ah,ah xchg ax,cx mul bx sub cx,30h add cx,ax mov ah,1 int 21h jmp keyenter:cmp flag0,0 je next neg dxnext mov word ptrdi,cx retinput end;三角波發(fā)生程序sanjiaobo proc near push ax push bx push cx push dx mov dx,228h mov al,cunchu out dx,al inc cmp al,

19、0ffh jnz cun mov cun,0hcun : mov cun,alintreturn:pop dx pop cx pop bx pop ax eoi iretsanjiaowo endp ;鋸齒波發(fā)生程序jvchibo : proc near push ax push bx push cx push dx mov dx,228h mov al,cunchu out dx,al mov cx,jishu cmp cx,0ffh jg addec: dec add cx,01h cmp cx,1feh mov cx,0h jmp cun ad: inc cun : mov cun,al mov jishu,cxintreturn:pop dx pop cx pop bx pop ax eoi iretjvchibo endp ;正弦波發(fā)生程序zhengxuanbo : proc near push ax push bx push cx push dx mov dx,228h mov al,cunchu OUT DX,sinbufAL mov cx,jishu cmp cx,0ffh jg addec: dec add cx,01h cmp cx,1feh mov cx,0h jmp cunad: inc

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論