

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 《微機接口技術課程設計》報告</p><p> 設計題目:夜班防睡控制和記錄器</p><p><b> 目錄</b></p><p><b> 目錄2</b></p><p><b> 前 言3</b></p><p>
2、;<b> 一.系統概述4</b></p><p> ?。?)系統設計思想4</p><p> (2)可行性論證7</p><p> 二. 單元電路設計與分析8</p><p> ?。?) 8255引腳功能8</p><p> (2) 8254 可編程計數/定時器9<
3、;/p><p> 三、軟件編程與調試11</p><p><b> 四、結束語11</b></p><p><b> 附 錄13</b></p><p> 附錄1 元器件明細表13</p><p> 附錄2 電路原理圖13</p><p
4、> 附錄3 源程序清單14</p><p><b> 參考文獻20</b></p><p> 夜班防睡控制和記錄器</p><p><b> 前 言</b></p><p> 此實驗要求設計一個夜班防睡控制和記錄器,每10min用較柔和的聲音提醒一次值班者,值班者按某一鍵后復
5、位,計時重新開始;若計到11min時無人按復位鍵,則以較急促的聲音報警,黃燈閃爍以示報警;當到60min時無人按復位鍵,則紅燈閃爍,并以尖銳的聲音持續(xù)報警,并記錄下這個時刻,以便管理者查看。顯示格式:時、分、秒。</p><p> 在課程設計之前,我們首先對設計題目進行了小組內部討論,按照題目要求行了系統需求分析。然后學習了唐都實驗箱的結構和各模塊的相關功能,并搜集了相關講解微機接口技術的資料和書目,然后學習了
6、本課程設計所需的8255并行接口芯片、8254定時器/計數器芯片的知識,之后確定了總體設計方案,再將任務劃分好模塊(計時模塊、判斷模塊、報警模塊、顯示模塊)后具體分配到小組成員,由小組成員分別進行相應模塊的硬件設計和軟件設計。小組成員設計、調試完各模塊后,最后將各模塊設計好的硬件模塊和軟件模塊集中、整合在一起,進行統一的統籌和調試工作,以達到設計要求,最后按照要求進行適當的功能擴展,并撰寫了此課程設計報告。</p><
7、;p><b> 一.系統概述</b></p><p><b> ?。?)系統設計思想</b></p><p> 本實驗是利用微機原理試驗箱、8255芯片、8254芯片、PC機等硬件設備設計夜班防睡控制和記錄器。</p><p> 首先利用了編程程序,編輯了8255芯片控制字, 對其進行初始化,使其工作在方式0即
8、基本輸入輸出狀態(tài),將8255的B端口設置為輸出,其中PB0和PB1接LED燈,PB2接8254芯片的GATE2信號端;C端口做為輸入端口,其中PC0用做復位輸入,PC1用做負脈沖輸入(為1秒計時)。</p><p> 將8254的計數器0設置在工作方式2下,用來產生計數負脈沖。其中CLK0接1KHZ,OUT0接8255的PC1端口,當8255的PC1端口檢測到低電平時調用計時子程序。當每次計時后需要判斷所計時間
9、是否達到設計要求,若達到要求則調相應的報警子程序。</p><p> 在報警子程序中利用8254的計數器2來產生響鈴脈沖,所以計數器2應工作在方式3下,GATE2端接8255的PB2用來實現計數器2以軟件啟動方式啟動,CLK2接100HZ作為定時脈沖。OUT2接揚聲器。</p><p><b> 模塊執(zhí)行順序</b></p><p><
10、;b> 主程序流程圖如下:</b></p><p><b> 判斷模塊:</b></p><p><b> ?。?)可行性論證</b></p><p><b> 硬件可行性</b></p><p> 通過向8254定時器/計數器芯片的計數器0送計數初
11、值,即確定了1秒。</p><p> 通過8255的C端口來控制程序的啟動和復位操作。</p><p><b> 軟件可行性</b></p><p> 對于8254芯片,先將控制字寫入控制端口,然后通過計時器0確定1秒;通過定時器2產生響鈴脈沖。對于8255,先寫控制字,然后通過編程實現計數、判斷等即可。</p><p
12、><b> 操作可行性</b></p><p> 實驗程序在PC機理的Tdpit軟件里運行,控制唐都實驗箱里的硬件設備。</p><p> 二. 單元電路設計與分析</p><p> ?。?) 8255引腳功能</p><p> RESET:復位輸入線,當該輸入端外于高電平時,所有內部寄存器(包括控制寄
13、存器)均被清除,所有I/O口均被置成輸入方式。</p><p> CS:片選信號線,當這個輸入引腳為低電平時,表示芯片被選中,允許8255與CPU進行通訊。</p><p> RD:讀信號線,當這個輸入引腳為低電平時,允許8255通過數據總線向CPU發(fā)送數據或狀態(tài)信息,即CPU從8255讀取信息或數據。</p><p> WR:寫入信號,當這個輸入引腳為低電平
14、時,允許CPU將數據或控制字寫入8255。</p><p> D0~D7:三態(tài)雙向數據總線,8255與CPU數據傳送的通道,當CPU 執(zhí)行輸入輸出指令時,通過它實現8位數據的讀/寫操作,控制字和狀態(tài)信息也通過數據總線傳送。</p><p> PA0~PA7:端口A輸入輸出線,一個8位的數據輸出鎖存器/緩沖器, 一個8位的數據輸入鎖存器。</p><p> PB
15、0~PB7:端口B輸入輸出線,一個8位的I/O鎖存器, 一個8位的輸入輸出緩沖器。</p><p> PC0~PC7:端口C輸入輸出線,一個8位的數據輸出鎖存器/緩沖器, 一個8位的數據輸入緩沖器。端口C可以通過工作方式設定而分成2個4位的端口, 每個4位的端口包含一個4位的鎖存器,分別與端口A和端口B配合使用,可作為控制信號輸出或狀態(tài)信號輸入端口。</p><p> A1、A0:端口
16、地址總線,8255中有端口A、B、C和一個內部控制字寄存器,共4個端口,由A0、A1輸入地址信號來尋址。</p><p> 圖 1. 8255的控制字格式</p><p> (2) 8254 可編程計數/定時器</p><p> 芯片完成對外部脈沖信號的各種處理。8254芯片內部具有三個獨立的16位計數器,它可用程序設置成多種工作方式,按十進制計數或二進制
17、計數,最高計數速率可達10MHz。</p><p> 8254的全部功能是由CPU編程設定的。CPU通過輸出指令給8254裝入控制字,從而設定其功能。8254控制字格式如下:</p><p> 各位的功能見表1~表4:</p><p> 表1 SC1、SC0 - 計數器選擇</p><p> 表2 RL1、RL0-CPU讀/寫操作
18、</p><p> 表3 BCD-計數方式選擇</p><p> 表4 M2、M1、M0 -工作方式選擇</p><p><b> 三、軟件編程與調試</b></p><p><b> 調試問題匯總</b></p><p> 問題1: 無法通過數碼管顯示出時
19、間</p><p> 原因分析: 需要對數碼管進行掃描顯示,導致子程序無法退出</p><p> 解決措施: 改為用PC機屏幕顯示時間</p><p><b> 四、結束語</b></p><p> 通過對這一課程設計的制作,使我們對匯編語言的基本知識的使用更加熟練,同時也增加了我們對匯編語言的一些認識,在作業(yè)完
20、成過程中通過和同學的交流,也增加了合作的技巧。通過查詢資料也學到了一些課本上沒有的東西,擴寬了我們的知識面,增加了學好匯編語言的信心。</p><p> 這不是第一次用匯編語言來設計一個小程序,平時做了很多實驗,寫了很多的小程序。但這次是一個綜合的程序,平時的很多程序都用到了,例如在程序中用到了不少的子程序,這些子程序的設計都是固定的,因此可以直接調用,大多只需要修改幾個參數就可以了,這大大方便了我們的設計,為
21、我們節(jié)省了很多時間。</p><p> 匯編語言是一門較難的計算機內容,開始學習的時候較為困難,但是平時的課堂的學習和這一次的集中的課程設計,使我不但能夠較好的了解并掌握了一些匯編語言的知識和技能,相信在以后的社會生活中也可以得到應用。</p><p> 在最后的提交查收前,我對幾天來在對幾個程序的編排和改進上所遇到的問題又進行了認真的總結,使我對整個程序都有了很深的了解,而且可以熟練
22、的操作和應用到程序中去,也順利的通過了查收。作為一名電子信息科學與技術專業(yè)的大三學生,能做類似的課程設計不管對于鞏固我們所學的理論知識還是提高我們的動手操作和應用能力都是十分有意義的,也是十分必要的。在微機接口技術課程的理論學習過程中,我們只是簡單是學習了關于8255和8254芯片的理論知識,只能簡單的對其進行單獨設計簡單程序,但是本次課程設計是對這兩種芯片一起運用的綜合性設計,要根據設計要求進行整體構思。</p><
23、;p> 在已度過的大學時間里我們大多數接觸的是專業(yè)基礎課。我們在課堂上掌握的僅僅是專業(yè)基礎課的理論面,如何去鍛煉我們的實踐面?如何把我們所學到的專業(yè)基礎理論知識用到實踐中去呢?做類似的課程設計就為我們提供了良好的實踐和鍛煉平臺。在做本次課程設計的過程中,我們感觸最深的當數查閱大量的設計手冊了。為了讓我們的設計更加完善,更加符合題目要求,一次次的翻閱相關微機接口設計的書目。微機接口技術本身就是我們專業(yè)的一門很重要的專業(yè)必修課,而微
24、機接口技術的課程設計也是我們專業(yè)實現對所學課程理論知識進行綜合應用的重要實踐訓練平臺,是我們鍛煉運用能力、動手能力的一個必不可少的過程。“千里之行始于足下”,通過這次課程設計,我們深深體會到這句千古名言的真正含義。我們今天認真的進行課程設計,學會腳踏實地邁開這一步,為的就是明天能穩(wěn)健地在社會大潮中奔跑打下堅實的基礎。</p><p> 在這次課程設計中,我們真正體會到了合作的重要性,遇到很多問題時,當我們看書查
25、資料時,這是去找同學討論一下,收獲很大,可以是很多問題迎刃而解,直到問題最終解決。不可否認,本程序存在不少缺點和不足,但通過這次作業(yè)卻找出了我們在學習上的不足,對以后的工作也有指導作用。我們相信在以后的學習中會克服這些不足,達到熟練掌握匯編語言的目的!</p><p><b> 附 錄</b></p><p> 附錄1 元器件明細表</p><
26、;p> 附錄2 電路原理圖</p><p> 附錄3 源程序清單</p><p> MY8255_A EQU 9860H ;8255端口地址</p><p> MY8255_B EQU 9861H</p><p> MY8255_C EQU 9862H</p><p&
27、gt; MY8255_MODE EQU 9863H</p><p> MY8254_0 EQU 9840H ;8254端口地址</p><p> MY8254_1 EQU 9841H</p><p> MY8254_2 EQU 9842H</p><p> MY8254_MODE EQU 9
28、843H</p><p> DATA SEGMENT</p><p> COUNTS DB 0</p><p> COUNTM DB 0</p><p> COUNTH DB 0</p><p> DTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH
29、,6FH</p><p><b> DATA ENDS</b></p><p> CODE SEGMENT</p><p> ASSUME CS:CODE,DS:DATA</p><p><b> START:</b></p><p> MOV AX,DATA&
30、lt;/p><p> MOV DS,AX </p><p> MOV DX,MY8254_MODE </p><p> MOV AL,35H </p><p> OUT DX,AL ;計數器0 十進制計數 16位 模式2 </p&g
31、t;<p> MOV AL,0B7H</p><p> OUT DX,AL ;計數器2 十進制計數 16位 模式3</p><p> MOV DX,MY8255_MODE</p><p> MOV AL,81H ;初始化8255 A口、B口輸出,方式0;C口低輸入,高輸出,方式0</p
32、><p><b> OUT DX,AL</b></p><p> A1: MOV DX,MY8255_B</p><p> MOV AL,03H </p><p> OUT DX,AL ;初始化8255 B端口 初值0BH PB0、PB1接LED PB3為計數器2的GATE信
33、號</p><p> MOV COUNTS,0</p><p> MOV COUNTM,0</p><p> MOV COUNTH,0</p><p> MOV DX,MY8254_0 ;初始化計數器0 初值1000</p><p> MOV AX,1000H </p>&l
34、t;p> OUT DX,AL ;低8位</p><p><b> MOV AL,AH</b></p><p> OUT DX,AL ;高8位 </p><p> A2: CALL BREAK </p><p>
35、 MOV DX,MY8255_C</p><p> IN AL,DX ;讀端口C的值</p><p> TEST AL,01 ;檢測PC0端口是否為高電平 PC0表示啟動/復位</p><p> JZ A1 ;低電平則復位</p><p> TEST AL,0
36、2H ;檢測PC1端口是否為低電平 PC1表示計</p><p><b> ;數脈沖 即1S</b></p><p> JNZ A2 ;高電平 跳轉A2</p><p> CALL COUNT ;調COUNT 計數子程序</p><p> M
37、OV AL,COUNTH</p><p> CMP AL,1 ;判斷時 是否為1即60min</p><p><b> JB A3</b></p><p> MOV AL,COUNTM ;判斷是否為0分0秒</p><p><b> CMP AL,0&l
38、t;/b></p><p><b> JNZ A2</b></p><p> MOV AL,COUNTS</p><p><b> CMP AL,0</b></p><p><b> JNZ A2</b></p><p> CALL BA
39、OJING3</p><p><b> JMP A2</b></p><p> A3: MOV AL,COUNTM ;判斷是否為11分</p><p><b> CMP AL,11</b></p><p><b> JNZ A4</b><
40、/p><p> MOV AL,COUNTS ;判斷是否為0秒</p><p><b> CMP AL,0</b></p><p><b> JNZ A2</b></p><p> CALL BAOJING2</p><p><b> JMP
41、 A2</b></p><p> A4: MOV AL,COUNTM ;判斷是否為10分</p><p><b> CMP AL,10</b></p><p><b> JNZ A2</b></p><p> MOV AL,COUNTS
42、 ;判斷是否為0秒</p><p><b> CMP AL,0</b></p><p><b> JNZ A2</b></p><p> CALL BAOJING1</p><p><b> JMP A2</b></p><p>
43、 COUNT PROC NEAR</p><p> INC COUNTS</p><p> MOV AL,COUNTS</p><p><b> CMP AL,59</b></p><p><b> JNZ A5</b></p><p> MOV COUNTS,0
44、</p><p> INC COUNTM</p><p> MOV AL,COUNTM</p><p><b> CMP AL,59</b></p><p><b> JNZ A5</b></p><p> MOV COUNTS,0</p><p
45、> MOV COUNTM,0</p><p> INC COUNTH</p><p> MOV AL,COUNTH</p><p><b> CMP AL,23</b></p><p><b> JNZ A5</b></p><p> MOV COUNTS,
46、0</p><p> MOV COUNTM,0</p><p> MOV COUNTH,0</p><p><b> A5: RET</b></p><p> COUNT ENDP</p><p> BAOJING1 PROC NEAR</p><p> M
47、OV DX,MY8255_B</p><p> MOV AL,07H ;置計數器2的GATE為高電平</p><p><b> OUT DX,AL</b></p><p> MOV DX,MY8254_2 ;置計數器2初值 是揚聲器發(fā)聲</p><p> MOV AX,6000H
48、 ;初值6000 </p><p><b> OUT DX,AL</b></p><p><b> MOV AL,AH</b></p><p><b> OUT DX,AL</b></p><p><b> RET</b></
49、p><p> BAOJING1 ENDP </p><p> BAOJING2 PROC NEAR</p><p> MOV DX,MY8255_B</p><p> MOV AL,05H ;置計數器2的GATE為高電平 LED0亮</p><p><b> OUT DX,AL
50、</b></p><p> MOV DX,MY8254_2 ;置計數器2初值 是揚聲器發(fā)聲</p><p> MOV AX,4000H ;初值4000 </p><p><b> OUT DX,AL</b></p><p><b> MOV AL,AH</b&
51、gt;</p><p> OUT DX,AL </p><p><b> RET </b></p><p> BAOJING2 ENDP</p><p> B
52、AOJING3 PROC NEAR</p><p> MOV DX,MY8255_B</p><p> MOV AL,06H ;置計數器2的GATE為高電平 LED1亮</p><p><b> OUT DX,AL</b></p><p> MOV DX,MY8254_2 ;置計數
53、器2初值 是揚聲器發(fā)聲</p><p> MOV AX,2000H ;初值2000 </p><p><b> OUT DX,AL</b></p><p><b> MOV AL,AH</b></p><p> OUT DX,AL
54、 </p><p> CALL SHOW </p><p><b> RET</b></p><p> BAOJING3 ENDP</p><p> SHOW PROC NEA
55、R</p><p> MOV AH,06h</p><p> MOV AL,1 ;AL=0為清屏 ;否則 為上卷的行數</p><p> MOV CH,0 ;左上角的行號</p><p> MOV CL,0 ;左上角的列號</p><p> MOV DH,30 ;右下角的行號</p&
56、gt;<p> MOV DL,30 ;右下角的列號</p><p> INT 10H </p><p> MOV AH,02H</p><p> MOV DH,30 ; 行號</p><p> MOV DL,10 ; 列號</p><p> MOV BH,0 ; 頁號&l
57、t;/p><p> INT 10H ; 光標定位在(30,10)</p><p> MOV AL,COUNTH ;顯示序號</p><p> ADD AL,30H</p><p><b> MOV DL,AL</b></p><p> MOV AH,02H</p>
58、<p><b> INT 21H</b></p><p> MOV DL,':'</p><p> MOV AH,02H</p><p><b> INT 21H</b></p><p> MOV AL,COUNTH ;顯示時</p><p
59、><b> MOV AH,00</b></p><p><b> MOV CL,10</b></p><p><b> DIV CL</b></p><p><b> MOV CX,AX</b></p><p> ADD AL,30H<
60、;/p><p><b> MOV DL,AL</b></p><p> MOV AH,02H</p><p><b> INT 21H</b></p><p> ADD CH,30H</p><p><b> MOV DL,CH</b></p
61、><p> MOV AH,02H</p><p><b> INT 21H</b></p><p> MOV DL,':'</p><p> MOV AH,02H</p><p><b> INT 21H</b></p><p>
62、 MOV AL,COUNTM ;顯示分</p><p><b> MOV AH,00</b></p><p><b> MOV CL,10</b></p><p><b> DIV CL</b></p><p><b> MOV CX,AX</
63、b></p><p> ADD AL,30H</p><p><b> MOV DL,AL</b></p><p> MOV AH,02H</p><p><b> INT 21H</b></p><p> ADD CH,30H</p><
64、p><b> MOV DL,CH</b></p><p> MOV AH,02H</p><p><b> INT 21H</b></p><p> MOV DL,':'</p><p> MOV AH,02H</p><p><b>
65、; INT 21H</b></p><p> MOV AL,COUNTS ;顯示秒</p><p><b> MOV AH,00</b></p><p><b> MOV CL,10</b></p><p><b> DIV CL</b>&l
66、t;/p><p><b> MOV CX,AX</b></p><p> ADD AL,30H</p><p><b> MOV DL,AL</b></p><p> MOV AH,02H</p><p><b> INT 21H</b></
67、p><p> ADD CH,30H</p><p><b> MOV DL,CH</b></p><p> MOV AH,02H</p><p><b> INT 21H</b></p><p> MOV AH,02H</p><p> MOV
68、 DH,31 ; 行號</p><p> MOV DL,10 ; 列號</p><p> MOV BH,0 ; 頁號</p><p> INT 10H ; 光標定位在(31,10)</p><p><b> RET</b></p><p><b> SH
69、OW ENDP</b></p><p> BREAK PROC NEAR </p><p> MOV AH,06H</p><p> MOV DL,0FFH</p><p><b> INT 21H</b></p><p> JE RETURN</p><
70、;p> MOV AX,4C00H</p><p><b> INT 21H</b></p><p> RETURN:RET</p><p> BREAK ENDP </p><p> CODE ENDS </p><p> END START </p>
71、;<p><b> 參考文獻</b></p><p> [1] 戴梅萼,史嘉權.微型計算機技術及應用 (第4版) [M],北京:清華大學出版社,2008年2月</p><p> [2] 趙樹升,趙雪梅.現代微機原理及接口技術[M],北京:清華大學出版社,2008年8月</p><p> [3] 西安唐都科教儀器公司.32位
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設計報告彩燈控制器
- 彩燈控制器課程設計報告
- eda電梯控制器課程設計報告
- 機載數據采集記錄器.pdf
- 《eda技術》課程設計報告----彩燈控制器
- 交通燈控制器課程設計報告
- 九層電梯控制器課程設計報告
- 數電課程設計報告--交通控制器
- 交通燈控制器課程設計報告
- 電子技術課程設計報告--控制器設計報告
- 成績記錄簿課程設計報告
- 課程設計報告-成績記錄簿
- 某飛行器遙測數據記錄器的優(yōu)化設計.pdf
- 基于USB的通用數據記錄器的設計.pdf
- 電機控制課程設計報告
- 微機控制課程設計報告
- 課程設計報告--五人組搶答器控制設計
- 數電課程設計報告--- 音樂彩燈控制器
- eda課程設計報告-- 交通燈控制器
- 基于sopc的彩燈控制器課程設計報告
評論
0/150
提交評論