占空比可調(diào)的脈沖發(fā)生器_第1頁
占空比可調(diào)的脈沖發(fā)生器_第2頁
占空比可調(diào)的脈沖發(fā)生器_第3頁
占空比可調(diào)的脈沖發(fā)生器_第4頁
占空比可調(diào)的脈沖發(fā)生器_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 沈陽航空航天大學(xué)課課 程程 設(shè)設(shè) 計(jì)計(jì) 報(bào)報(bào) 告告課程設(shè)計(jì)名稱:微機(jī)系統(tǒng)綜合課程設(shè)計(jì)微機(jī)系統(tǒng)綜合課程設(shè)計(jì)課程設(shè)計(jì)題目:占空比可調(diào)的脈沖發(fā)生器占空比可調(diào)的脈沖發(fā)生器院(系):計(jì)算機(jī)學(xué)院專 業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班 級(jí):學(xué) 號(hào):姓 名:指導(dǎo)教師:張維君完成日期:2012年7月15日沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 -I-目目 錄錄第第 1 章章 總體設(shè)計(jì)方案總體設(shè)計(jì)方案.11.1 課程設(shè)計(jì)的內(nèi)容和要求.11.2 課程設(shè)計(jì)原理.11.3 方案設(shè)計(jì).11.4 方案論證.21.5 設(shè)計(jì)環(huán)境.2第第 2 章章 詳細(xì)設(shè)計(jì)方案詳細(xì)設(shè)計(jì)方案.32.1 模塊設(shè)計(jì).32.2 程序流程圖.42.3 硬件連線圖.6第第 3

2、 章章 調(diào)試及結(jié)果分析調(diào)試及結(jié)果分析.73.1 調(diào)試步驟及方法.73.2 實(shí)驗(yàn)結(jié)果.73.3 結(jié)果分析.8參考文獻(xiàn)參考文獻(xiàn).9附附 錄(源程序)錄(源程序).10沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第 1 章 總體設(shè)計(jì)方案 1第 1 章 總體設(shè)計(jì)方案1.1 課程設(shè)計(jì)的內(nèi)容和要求課程設(shè)計(jì)的內(nèi)容和要求一、課程設(shè)計(jì)內(nèi)容:具體內(nèi)容如下:1. 用 8255 和 8253 產(chǎn)生脈寬可調(diào)的脈沖信號(hào);2. 用實(shí)驗(yàn)箱上鍵盤中的兩個(gè)按鍵調(diào)節(jié)脈沖;3. 按脈寬增加鍵脈寬逐漸增大,按脈寬減小鍵脈寬逐漸減?。欢?、課程設(shè)計(jì)要求:1. 認(rèn)真查閱相關(guān)資料;2. 獨(dú)立設(shè)計(jì)、調(diào)試并通過指導(dǎo)教師現(xiàn)場驗(yàn)收;3. 撰寫課程設(shè)計(jì)報(bào)告。1.2

3、課程設(shè)計(jì)原理課程設(shè)計(jì)原理根據(jù)課設(shè)要求,要實(shí)現(xiàn)通過鍵盤按鍵調(diào)節(jié)脈寬的脈沖信號(hào)發(fā)生器。本次設(shè)計(jì)中主要使用了 8259 可編程中斷控制器,8255 可編程并行接口芯片,8279 鍵盤/顯示芯片,8253 定時(shí)/計(jì)數(shù)器以及部分連線來實(shí)現(xiàn)以上功能。利用 8253 芯片產(chǎn)生一定頻率的脈沖信號(hào),并用 8255 芯片以程序查詢方式,檢測該信號(hào)上高、低電平的持續(xù)時(shí)間,還要利用 8259 芯片的中斷信號(hào)掃描信號(hào),通過改變高電平的持續(xù)時(shí)間來調(diào)節(jié)占空比。最后,應(yīng)用 8279 芯片將結(jié)果顯示到數(shù)碼管上。1.3 方案設(shè)計(jì)方案設(shè)計(jì)根據(jù)本次課程設(shè)計(jì)要求,用 8253 芯片計(jì)數(shù)器 0 產(chǎn)生低頻率的方波信號(hào),然后疊加一個(gè)矩形波,

4、使之成為一個(gè)改變分頻就可以改變占空比的矩形波。再將該矩形波作為計(jì)數(shù)器 1 產(chǎn)生的輸入信號(hào),使計(jì)數(shù)器 1 產(chǎn)生脈寬可調(diào)的脈沖信號(hào),并把該脈沖信號(hào)接到 8255 的一個(gè)引腳(PB0) ,運(yùn)用程序查詢方式循環(huán)檢測這個(gè)引腳高、低電平持續(xù)時(shí)間。利用芯片 8259 的中斷功能循環(huán)掃描芯片 8253 計(jì)數(shù)器 1 的分頻數(shù),通過分頻數(shù)計(jì)算占空比的值。在 BX 中存放分頻數(shù) NUM,沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第 1 章 總體設(shè)計(jì)方案 2在 CX 中存放(NUM-1) 。然后,將 BX 中的數(shù)擴(kuò)大 100 倍,再除以 CX 中的值,以此來計(jì)算出被擴(kuò)大 100 倍后的占空比;接下來就是顯示正確的占空比,將前面得

5、到的準(zhǔn)占空比除以 10,再將 AH 中的結(jié)果存到 CH 中,將 AL 中的結(jié)果存到 CL 中,最后,由 8279 芯片將最終結(jié)果顯示到數(shù)碼管上。1.4 方案論證方案論證通過仔細(xì)閱讀課程設(shè)計(jì)任務(wù)書,對本次課程設(shè)計(jì)所要完成的題目和要求要充分理解,從以下兩方面進(jìn)行方案論證。 對預(yù)設(shè)使用的芯片進(jìn)行論證8253 可編程定時(shí)/計(jì)數(shù)器的功能:一是作為計(jì)數(shù)器,即在設(shè)置好計(jì)數(shù)初值后,便開始對外部脈沖作減 1 操作,當(dāng)減為 0 時(shí),輸出一個(gè)信號(hào);二是作為定時(shí)器,在設(shè)置好定時(shí)參數(shù)后,便開始對外部信號(hào)作減 1 操作,并按定時(shí)常數(shù)不斷地輸出為時(shí)鐘周期整數(shù)倍的定時(shí)間隔。8255A 是可編程并行輸入輸出接口芯片,具有三個(gè)

6、8 位并行端口,40 個(gè)引腳,雙列直插式封裝。有三種輸入輸出方式,用于輸出給定信號(hào)。8259A 是可編程中斷控制器芯片,用于管理和控制 80 x86 的外部中斷請求,坑人可實(shí)現(xiàn)中斷優(yōu)先級(jí)判定,提供中斷信號(hào),屏蔽中斷輸入等功能。8279 是可編程鍵盤/顯示接口芯片。它的功能主要包括鍵盤輸入和顯示控制部分,其中鍵盤部分提供掃描功能。顯示部分則是提供掃描方式的顯示接口,可與 8 位或 16 位 LED 數(shù)碼管連接構(gòu)成。 對預(yù)設(shè)計(jì)的程序進(jìn)行論證用小燈測試 8253 芯片產(chǎn)生的脈沖信號(hào)的頻率,已達(dá)到設(shè)計(jì)中所要求的低頻率信號(hào)。逐步測試數(shù)據(jù)采集模塊,計(jì)算占空比模塊,顯示模塊。經(jīng)過認(rèn)真仔細(xì)論證,證明所提出的方

7、案切實(shí)可行。1.5 設(shè)計(jì)環(huán)境設(shè)計(jì)環(huán)境軟件環(huán)境:LCT88EA 應(yīng)有軟件、Win2000、PC 機(jī)硬件環(huán)境:AEDK 實(shí)驗(yàn)箱沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第 2 章 詳細(xì)設(shè)計(jì)方案 3第 2 章 詳細(xì)設(shè)計(jì)方案2.1 模塊設(shè)計(jì)模塊設(shè)計(jì)1. 主模塊:在主程序中,主要實(shí)現(xiàn)各個(gè)芯片的初始化,將 8253 芯片的計(jì)數(shù)器 0 設(shè)置為工作方式 3,低 8 位讀寫,二進(jìn)制計(jì)數(shù)方式,使其輸出方波在與一個(gè)矩形波疊加產(chǎn)生新的矩形波。 ,再將該矩形波作為計(jì)時(shí)器 1 的輸入信號(hào),并將計(jì)數(shù)器 1 設(shè)置為工作方式 2,低 8 位讀寫,十進(jìn)制計(jì)數(shù)方式,使計(jì)數(shù)器 1 產(chǎn)生低頻率符合要求的脈沖信號(hào);2. 數(shù)據(jù)結(jié)構(gòu)部分:用 BX 寄存

8、器存儲(chǔ)當(dāng)前的分頻數(shù),用 CX 寄存器存儲(chǔ)當(dāng)前分頻數(shù)減一數(shù)。在內(nèi)存中開辟了一個(gè)字節(jié)空間 DISBUF,用來存放每種模式所要顯示的結(jié)果在 TAB表中的編碼,在中斷服務(wù)程序中通過按照這個(gè)空間中的 8 個(gè)編碼查表顯示數(shù)碼管上所要顯示的結(jié)果。3. 數(shù)據(jù)采集模塊:采用程序查詢方式,循環(huán)檢測 8253 芯片計(jì)數(shù)器 1 的分頻狀態(tài)。記錄當(dāng)前分頻數(shù) NUM,并保存到 BX 寄存器。4. 計(jì)算占空比模塊:將 BX 中的數(shù)減一得到的數(shù)存入 CX 中,然后,將 BX 中的數(shù)乘以 100,再除以 CX 中的值,以此來計(jì)算出被擴(kuò)大 100 倍后的占空比;接下來就是顯示正確的占空比,將前面的到的準(zhǔn)占空比除以 10,再將 A

9、H 中的結(jié)果存到 CH 中,將 AL 中的結(jié)果存到 CL 中。5. 顯示模塊:根據(jù) CH、CL 中的值,由 8279 芯片查表后將對應(yīng)的數(shù)據(jù)顯示到數(shù)碼管上,以得到最后的正確結(jié)果。沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第 2 章 詳細(xì)設(shè)計(jì)方案 42.2 程序流程圖程序流程圖本次設(shè)計(jì)的主流程圖如圖 2.2.1 所示;采集數(shù)據(jù)模塊流程圖如圖 2.2.2 所示;計(jì)算占空比模塊流程圖如圖 2.2.3 所示;顯示占空比模塊流程圖如圖 2.2.4 所示。 圖 2.2.1 占空比測量的主流程圖沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第 2 章 詳細(xì)設(shè)計(jì)方案 5 沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第 1 章 總體設(shè)計(jì)方案 6圖 2.

10、2.2 數(shù)據(jù)采集模塊流程圖 圖 2.2.3 計(jì)算占空比模塊流程圖圖 2.2.4 顯示模塊流程圖沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第 2 章 詳細(xì)設(shè)計(jì)方案 62.3 硬件連線圖硬件連線圖本次設(shè)計(jì)用到四個(gè)芯片,分別是 8259 可編程中斷控制器,8255 可編程并行接口芯片,8279 鍵盤/顯示芯片,8253 定時(shí)/計(jì)數(shù)器。其中 8255 芯片的A、B、C 端口及控制端口的地址為分別為 200H,201H,202H,203H;鍵盤/顯示芯片 8279 的數(shù)據(jù)端口地址為 210H,控制端口地址為 212H;定時(shí)/計(jì)數(shù)器芯片8253 的端口地址為 228-22BH。芯片 8259 的端口地址為 220H

11、具體連接情況如圖2.2 所示。圖 2.2 硬件連線圖 沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第 3 章 調(diào)試及結(jié)果分析 7第 3 章 調(diào)試及結(jié)果分析3.1 調(diào)試步驟及方法調(diào)試步驟及方法在開始的時(shí)候,每次都沒有結(jié)果顯示。于是通過單步調(diào)試,通過查看各個(gè)寄存器中的值,來驗(yàn)證各模塊是否正常跳轉(zhuǎn)以及模塊的正確性。結(jié)果,在數(shù)據(jù)中斷中沒有中斷產(chǎn)生。經(jīng)過調(diào)試,可以正常顯示預(yù)定的占空比的值,但是無法對占空比進(jìn)行調(diào)節(jié)。經(jīng)過思考發(fā)現(xiàn),問題出在數(shù)據(jù)顯示模塊,每次顯示完第一次預(yù)定的值以后沒有對數(shù)碼管進(jìn)行清空,所以顯示出現(xiàn)問題。之后,修改程序,在每次顯示之前對數(shù)碼管進(jìn)行清空操作。問題得到解決。進(jìn)一步修改,在計(jì)算模塊中,將 BX

12、寄存器中的值乘以 100 后得到的結(jié)果存到 AX 寄存器中,用DX:AX 做被除數(shù),防止因 BX 中數(shù)值過大而使 AL 寄存器產(chǎn)生溢出而得到的不正確的結(jié)果。修改后,再次測試,則可以得到穩(wěn)定而且正確的結(jié)果,誤差很小。3.2 實(shí)驗(yàn)結(jié)果實(shí)驗(yàn)結(jié)果本設(shè)計(jì)已經(jīng)基本滿足任務(wù)書的要求?,F(xiàn)將結(jié)果簡單介紹如下:1. 當(dāng)將計(jì)數(shù)器 1 的初值賦為 5,即產(chǎn)生五分頻的脈沖信號(hào)時(shí),數(shù)碼管顯示結(jié)果為 0.80;2. 當(dāng)按下實(shí)驗(yàn)箱上的”+”時(shí),顯示的占空比值增加,向 1 逼近。3. 當(dāng)按下實(shí)驗(yàn)箱上的”-”時(shí),顯示的占空比值減小。向 0.5 逼近。沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第 3 章 調(diào)試及結(jié)果分析 83.3 結(jié)果分析結(jié)果

13、分析由實(shí)驗(yàn)結(jié)果可知,由 8253 產(chǎn)生的方波最小的占空比的值為 0.5。方波和矩形波疊加之后應(yīng)該可以產(chǎn)生占空比小于 0.5 的值,但是此程序沒有實(shí)現(xiàn)這個(gè)功能,有待提高。沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 參考文獻(xiàn) 9參考文獻(xiàn)1 龔尚福.微機(jī)原理與接口技術(shù)M.西安:西安電子科技大學(xué)出版社,20032 王忠民.微型計(jì)算機(jī)原理M. 西安:西安電子科技大學(xué)出版社,20033 沈美明,溫冬嬋. IBM-PC 匯編語言程序設(shè)計(jì)M.北京:清華大學(xué)出版,2001沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 附錄 10附 錄(源程序)TIM_CTLEQU 22bHTIMER0EQU 228HTIMER1EQU 229HTIMER2E

14、QU 22AHPC8255 EQU 203HPC8255CEQU 202HPC8255B EQU 201HZ8279EQU 212HD8279 EQU 210HLEDMODEQU 00H ;左邊輸入,八位顯示外部譯碼八位顯示CODE SEGMENTASSUMECS:CODESTART: JMP S NUM DB 5S: cli MOV DX,Z8279 ;置空 FIFO 寄存器 MOV AL,0c2H OUT DX,AL CALL INIT8253 CALL INIT8259 MOV DX,TIM_CTL MOV AL,00010110B ;計(jì)數(shù)器 0,低 8 位讀寫,工作方式 3,二進(jìn)制 O

15、UT DX,AL MOV AL,00000101B MOV DX,TIMER0 OUT DX,AL沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 附錄 11 MOV DX,TIM_CTL MOV AL,01010101B ;計(jì)數(shù)器 1,低 8 位讀寫,工作方式 2,十進(jìn)制 OUT DX,AL MOV AL,NUM MOV DX,TIMER1 OUT DX,AL MOV DX,PC8255 MOV AL,10000010B ;A 方式 0,輸出 B 方式 0,輸入 C 輸出 OUTDX,AL MOV DX,PC8255B MOV BX,0 MOV CX,0 CALL DISPLAY mov dx,223h out

16、 dx,al mov al,30h out dx,al STI JMP $A1: NOP JMP A1INIT8259: MOV AL,13H MOV DX,220H OUT DX,AL MOV DX,221H MOV AL,30H OUT DX,AL沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 附錄 12 MOV AL,03 OUT DX,AL MOV AL,0FEH ;ocw1 OUT DX,AL IN AL,DX MOVAX,0 MOVDS,AX MOVSI,30H*4 MOVAX,OFFSET INTR1 MOVSI,AX MOVAX,CS MOVSI+2,AX retINIT8253: push A

17、X MOV DX,TIM_CTL MOV AL,00010110B ;計(jì)數(shù)器 0,低 8 位讀寫,工作方式 2,二進(jìn)制 OUTDX,AL MOV AL,00000101B MOV DX,TIMER0 OUTDX,AL MOV AL,10110101B MOV DX,TIM_CTL OUT DX,AL MOV AX,6144 MOV DX,TIMER2 OUT DX,AL MOV AL,AH OUT DX,AL POP AX沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 附錄 13 RET intr1: call readkey CMP AL,12H ;是減小 JE down CMP AL,13H JE upir

18、etDOWN: JMP AUP: INC NUM INC NUM JMP A RETA: MOV DX,Z8279 ;置空 FIFO 寄存器 MOV AL,0c2H OUT DX,AL CALL DISPLAYIRETreadkey: MOV DX,Z8279 ;置空 FIFO 寄存器 MOV AL,0C2H OUT DX,AL WAIIT: NOP MOV AX,0 IN AL,DX沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 附錄 14 MOV BL,AL AND AL,80H CMP AL,80H JE WAIIT ;FIFO 正在清除期間則跳轉(zhuǎn)等待 MOV AL,BL AND AL,0FH CMP A

19、L,00H JE WAIIT ;無鍵按下則等待 MOV DX,Z8279 MOV AL,82H ;置 讀 FIFO RAM 命令字 OUT DX,AL MOV DX,D8279 ;讀入 FIFO RAM 內(nèi)容 IN AL,DX ret DISPLAY: MOV CX,00H MOV BX,00H MOV DX,0 MOV CL,NUM DEC NUM MOV BL,NUMMOVAX,100 MUL BX DIVCX MOV CL,10 DIVCL MOV CH,AH ;個(gè)位 MOV CL,AL ;十位 PUSH CSPOP DS沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告 附錄 15 MOV DX,Z8279 ;置空 FIFO 寄存器 MOV AL,0C2H OUT DX,AL MOV DX,Z8279MOV AL,LEDMODOUT DX,ALMOV AL,90HOUT DX,AL MOVAL,CHLEABX,LEDXLAT MOV DX,D8279 OUTDX,AL ;顯示個(gè)位 MOV AL,CL

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論