版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課</b></p><p><b> 程</b></p><p><b> 設(shè)</b></p><p><b> 計(jì)</b></p><p><b> 報(bào)</b></p><p
2、><b> 告</b></p><p> 2015年1月12日</p><p><b> 目錄</b></p><p> 一、設(shè)計(jì)任務(wù)說明4</p><p> 1.1、實(shí)驗(yàn)?zāi)康?</p><p> 1.2、實(shí)驗(yàn)內(nèi)容4</p><p
3、><b> 二、需求分析5</b></p><p> 2.1、計(jì)算機(jī)的重要性5</p><p> 2.2、8279芯片5</p><p><b> 三、設(shè)計(jì)方案5</b></p><p> 3.1、課程設(shè)計(jì)步驟與方法5</p><p> 3.2、課
4、程設(shè)計(jì)說明書與圖紙6</p><p> 3.3、設(shè)計(jì)程序9</p><p><b> 四、測(cè)試分析16</b></p><p><b> 五、總結(jié)16</b></p><p><b> 六、參考文獻(xiàn)16</b></p><p> 課程
5、設(shè)計(jì)報(bào)告正文內(nèi)容</p><p><b> 設(shè)計(jì)任務(wù)說明</b></p><p><b> 1.1、實(shí)驗(yàn)?zāi)康?lt;/b></p><p> 1.掌握8279鍵盤顯示電路的基本功能及編程方法</p><p> 2.掌握一般鍵盤盒顯示電路的工作原理</p><p> 3.進(jìn)
6、一步掌握定時(shí)器的使用和中斷處理程序的編程方法</p><p><b> 1.2、實(shí)驗(yàn)內(nèi)容</b></p><p> 利用實(shí)驗(yàn)臺(tái)上提供的定時(shí)器8253和擴(kuò)展板上提供的8279以及鍵盤和數(shù)碼顯示電路,設(shè)計(jì)一個(gè)秒表,由8253中斷定時(shí),小鍵盤控制秒表的啟停及初始值的預(yù)置。</p><p> 秒表的顯示格式**.**.**
7、由左到右分別為分、秒、百分秒</p><p><b> 要求具體如下:</b></p><p> 1. C鍵:清楚,顯示00.00.002. G鍵:?jiǎn)?dòng),秒表計(jì)時(shí)</p><p> 3. D鍵:停止,秒表停止計(jì)時(shí)</p><p> 4. P鍵:設(shè)置分、秒、百分秒值。輸入時(shí)
8、依次為分、秒、百分秒,同時(shí)應(yīng)有判斷輸入錯(cuò)誤的能力,若輸入有錯(cuò),則顯示:E - - - - -,此時(shí)敲P鍵可重新輸入預(yù)置值。</p><p> 5. E鍵:程序退出,返回DOS</p><p><b> 二、需求分析</b></p><p> 2.1、計(jì)算機(jī)的重要性 </p
9、><p> 計(jì)算機(jī)是當(dāng)代眾多新興技術(shù)中發(fā)展最快、應(yīng)用最廣的一項(xiàng)技術(shù),也是滲透力最強(qiáng),對(duì)社會(huì)發(fā)展影響最為深遠(yuǎn)的高新技術(shù)。今天它已經(jīng)逐漸深入到社會(huì)的每一個(gè)細(xì)胞,改變著人們的生產(chǎn)方式,社會(huì)活動(dòng)方式甚至家庭生活方式。計(jì)算機(jī)發(fā)展如此迅速,影響如此深遠(yuǎn)。有其深刻的社會(huì)背景。</p><p> 2.2、8279芯片</p><p> 8279是一種通用的可編程的鍵盤/顯示器接口
10、器件,可對(duì)64個(gè)開關(guān)組成的鍵盤矩陣進(jìn)行自動(dòng)掃描,接收鍵盤上的輸入信息,并在有鍵輸入時(shí)向單片機(jī)請(qǐng)求中斷,還能對(duì)8位或16位LED自動(dòng)掃描,使顯示緩沖器的內(nèi)容在LED上顯示出來。利用8279對(duì)鍵盤/顯示器的自動(dòng)掃描,可以減輕CPU負(fù)擔(dān),具有顯示穩(wěn)定、程序簡(jiǎn)單、不會(huì)出現(xiàn)誤動(dòng)作等特點(diǎn)。是一種應(yīng)用非常廣泛的芯片,學(xué)習(xí)8279芯片的簡(jiǎn)單應(yīng)用時(shí)十分有必要的。</p><p><b> 三、設(shè)計(jì)方案</b>
11、;</p><p> 3.1、課程設(shè)計(jì)步驟與方法</p><p> 1、本設(shè)計(jì)是做在一塊擴(kuò)展電路板上,用一根20芯扁平電纜與實(shí)驗(yàn)臺(tái)上擴(kuò)展插頭J7相連。</p><p> 2、編程1:使得在小鍵盤上每按一個(gè)健,6位數(shù)碼管上顯示出相應(yīng)字符,它們的對(duì)應(yīng)關(guān)系如下:</p><p> 小鍵盤 顯示 小鍵盤
12、 顯示</p><p> 0 — 0 C —C</p><p> 1 — 1 D — d</p><p> 2 — 2 E —E</p><p>
13、3 — 3 F — F</p><p> 4 — 4 G —q</p><p> 5 — 5 M —</p><p> 6 — 6 P —p&l
14、t;/p><p> 7 — 7 W — </p><p> 8 — 8 X — </p><p> 9 — 9 Y — </p><p> A —
15、 R — 返回</p><p> B — b</p><p> 3、編程2:中斷編程</p><p> 利用實(shí)驗(yàn)臺(tái)上提供的定時(shí)器8253和擴(kuò)展板上提供的8279以及鍵盤和數(shù)碼顯示電路,</p><p> 設(shè)計(jì)一個(gè)電子鐘。由8253中斷定時(shí),小鍵盤控制電子鐘的啟停及初始值的預(yù)置。&
16、lt;/p><p> 電子鐘顯示格式如下:</p><p> XX.XX.XX. 由左向右分別為時(shí)、分、秒</p><p><b> 要求具有如下功能:</b></p><p> ?、?、C鍵:清除,顯示全零。</p><p> ?、凇鍵:啟動(dòng),電子鐘計(jì)時(shí)。</p><p&g
17、t; ?、?、D鍵:停止,電子鐘停止計(jì)時(shí)。</p><p> ?、?、P鍵:設(shè)置時(shí)、分、秒值。輸入時(shí)依次為時(shí)、分、秒,同時(shí)應(yīng)有判斷輸入錯(cuò)誤的</p><p> 能力,若輸入有錯(cuò),則顯示:E-----。此時(shí)敲P鍵可重新輸入預(yù)置值。</p><p> ?、荨鍵:程序退出。</p><p> 3.2、課程設(shè)計(jì)說明書與圖紙</p>&
18、lt;p><b> ?。ㄒ唬┰O(shè)計(jì)說明</b></p><p> 1.本設(shè)計(jì)編程1 接線方法:</p><p> 用一根20芯扁平電纜將實(shí)驗(yàn)擴(kuò)展板與實(shí)驗(yàn)臺(tái)上擴(kuò)展插頭J7相連。</p><p> 2.本設(shè)計(jì)編程2 接線方法:</p><p> ?。?)用一根20芯扁平電纜將實(shí)驗(yàn)擴(kuò)展板與實(shí)驗(yàn)臺(tái)上擴(kuò)展插頭J7相連。&
19、lt;/p><p> ?。?)實(shí)驗(yàn)臺(tái)上8253 CLK0 接1MHZ,GATE0 和GATE1接+5V,OUT0 接CLK1,OUT1 接IRQ,CS接280H~287H。</p><p> (二)設(shè)計(jì)電路如下圖所示:</p><p> ?。ㄈ﹨⒖剂鞒虉D如下所示:</p><p> 鍵盤顯示子程序流程圖:KEY2</p>&l
20、t;p> 3.3、設(shè)計(jì)程序(部分代碼)</p><p><b> 源程序:</b></p><p> ASSUME CS:CODE,DS:DATA,SS:STACK</p><p> START: CLI</p
21、><p> MOV AX,DATA</p><p> MOV DS,AX</p><p> MOV BUF,0</p><p> MOV
22、60; SIGH,01</p><p> MOV SEC1,0</p><p> MOV MIN1,0</p><p> MOV MIN2,0</p>
23、<p> MOV HOUR1,0</p><p> MOV HOUR2,0</p><p> MOV ERR1,0</p><p> MOV
24、 DX,TIMEC ;8253初始化</p><p> MOV AL,36H</p><p> OUT
25、160; DX,AL</p><p> MOV DX,TIME0</p><p> MOV AX,100</p><p> OUT DX,AL</p><p&
26、gt; MOV AL,AH</p><p> OUT DX,AL</p><p> MOV DX,TIMEC</p><p> MOV
27、160;AL,74H</p><p> OUT DX,AL</p><p> MOV AX,10</p><p> MOV DX,TIME1 ;定時(shí)器每0.1S中斷
28、1次</p><p> OUT DX,AL</p><p> MOV AL,AH</p><p> OUT DX,AL</p><p> MOV
29、60; AX,STACK</p><p> MOV SS,AX</p><p> MOV SP,TOP</p><p> MOV AX,DATA</
30、p><p> MOV DS,AX</p><p> MOV DX,OFFSET MES</p><p> MOV AH,09</p><p> INT
31、60; 21H</p><p> MOV AX,CS</p><p> MOV DS,AX</p><p> MOV DX,OFFSET
32、60;INT_PROC</p><p> MOV AX,250FH</p><p> INT 21H ;置IRQT中斷向量</p><p> MOV
33、 DX,INTA01</p><p> IN AL,DX</p><p> AND AL,7FH</p><p> OUT DX,AL</p>
34、<p> MOV DX,PORT1</p><p> MOV AL,0D3H</p><p> OUT DX,AL ;8279清零</p>
35、<p> MOV AL,2AH OUT DX,AL ;置8279時(shí)鐘命令</p><p> MOV
36、160; AL,40H</p><p> OUT DX,AL ;讀FIFO RAM命令</p><p> MOV AL,00H</p><p> OUT
37、 DX,AL ;置鍵盤顯示模式</p><p> MOV AL,80H</p><p> OUT DX,AL ;寫RA
38、M命令</p><p><b> STI</b></p><p> KEY1: CALL KET2 ;調(diào)鍵盤顯示子程序</p><p> CMP
39、 HOUR2,0AH</p><p> JZ NEXT2</p><p> NEXT1: CMP AL,0CH
40、; ;是否“C”命令</p><p> JNZ LP0</p><p> NEXT2: MOV SIGH,00H</p><p> MOV
41、0; HOUR2,00H</p><p> MOV HOUR1,00H</p><p> MOV MIN2,00H</p><p> MOV MIN1,0
42、0H</p><p> MOV SEC2,00H</p><p> MOV SEC1,00H</p><p> LP0: CMP
43、 AL,0EH ;是否“E”命令</p><p> JNZ LP1</p><p> MOV SIGH,00H</p><p><b> CLI</b>
44、;</p><p> MOV DX,INTA01</p><p> IN AL,DX</p><p> OR AL,80H</p><p>
45、 OUT DX,AL</p><p><b> STI</b></p><p> MOV AX,4C00H ;是“E”命令返回DOS</p><p> INT &
46、#160; 21H</p><p> LP1: CMP AL,10H ;是否“G”命令</p><p> JNZ LP2</
47、p><p> MOV SIGH,01H</p><p> JMP KEY1</p><p> LP2: CMP
48、;AL,0DH ;是否“D”命令</p><p> JNZ SETI</p><p> MOV SIGH,00H</p><p> KEY3:
49、60; JMP KEY1</p><p> SETI: CMP AL,12H ;是否“P”命令</p><p> JNZ
50、 KET1</p><p> MOV SIGH,00H ;“00”為預(yù)置時(shí)標(biāo)志</p><p> MOV HMS,00H</p><p> CALL &
51、#160; HIGH0</p><p> CMP ERR1,01H</p><p> JZ KEY3</p><p> CALL LOW0</p><p>
52、; CMP ERR1,01H</p><p> JZ KEY3</p><p> MOV HMS,11H ;“11”為預(yù)置分標(biāo)志</p><p>
53、 CALL HIGH0</p><p> CMP ERR1,01H</p><p> JZ KEY3</p><p> MOV H
54、MS,22H ;“22”為預(yù)置秒標(biāo)志</p><p> CALL HIGH0</p><p> CMP ERR1,01H</p><p> JZ KEY3</p>
55、;<p> CALL LOW0</p><p> JMP KEY1</p><p> MAIN ENDP</p><p> INT_PROC:
56、60;STI</p><p> PUSH AX</p><p> PUSH BX</p><p> PUSH CX</p><p> PUSH DX&l
57、t;/p><p> PUSH SI</p><p> PUSH DI</p><p> PUAH DS</p><p> CMP SIGH,00
58、 ;是否允許記數(shù)</p><p> JZ ENDT1</p><p>
59、 INC BUF ;記數(shù)單元加1</p><p> CM
60、P BUF,10</p><p> JL ENDT</p><p> MOV BUF,0</p><p> INC S
61、EC1</p><p> CMP SEC1,10</p><p> JL ENDT</p><p> MOV SEC1,0</p><p> INC&
62、#160; SEC2</p><p> CMP SEC2,6</p><p> JL ENDT</p><p> MOV SEC2
63、,0</p><p> INC MIN1</p><p> CMP MIN1,10</p><p> JL ENDT</p><p> MOV
64、0; MIN1,0</p><p> INC MIN2</p><p> CMP MIN2,6</p><p> JL ENDT&
65、lt;/p><p> MOV MIN2,0</p><p> INC HOUR1</p><p> CMP HPUR2,2</p><p> JL
66、0; HH</p><p> CMP HOUR1,4</p><p> JL ENDT</p><p> MOV HOUR1,0&
67、lt;/p><p> MOV HOUR2,0</p><p> ENDT1: JMP ENDT</p><p> HH:
68、 CMP HOUR1,10</p><p> JL ENDT</p><p> MOV HOUR1,0</p><p>
69、 INC HOUR2</p><p> ENDT: MOV DX,INTA00</p><p> MOV
70、AL,20H</p><p> OUT DX,AL</p><p> POP DS</p><p> POP DI</p><p&g
71、t; POP SI</p><p> POP DX</p><p> POP CX</p><p> POP
72、60; BX</p><p> POP AX</p><p><b> IRET</b></p><p> KEY2 PROC
73、160; NEAR</p><p> MOV DX,PORT1</p><p> MOV AL,0D1H</p><p> OUT DX,AL
74、 ;清顯示</p><p> WAEP: CALL DISP ;調(diào)顯示子程序</p><p> MOV
75、0; DX,PORT1</p><p> IN AL,DX</p><p> AND AL,07H</p><p> JZ
76、60; WAEP</p><p> KETN: MOV DX,PORT0 ;讀狀態(tài)</p><p> IN &
77、#160; AL,DX</p><p> MOV BL,AL</p><p> AND AL,07H</p><p> AND &
78、#160;BL,38H</p><p> MOV CL,03</p><p> SHR BL,CL</p><p> CMP BL,00H &
79、#160; ;是否第一行鍵</p><p> JNZ LINE1</p><p> ADD AL,08H</p><p> JMP
80、160;QUIT1</p><p> LINE1: CMP BL,01H</p><p> JNZ LINE2 ;是否第二行鍵</
81、p><p> JMP QUIT1</p><p> LINE2: ADD AL,10H</p><p> QUIT1: &
82、#160;RET</p><p> KEY2 ENDP</p><p> DISP PROC NEAR</p><p> PUSH
83、; CX</p><p> MOV AX,DATA</p><p> MOV DS,AX</p><p> MOV &
84、#160;DX,PORT1</p><p> MOV AL,90H</p><p> OUT DX,AL</p><p> MOV SI,OFFSET&
85、#160;SEC1</p><p> MOV CX,0006</p><p> MOV BX,OFFSET LED</p><p> DISP1: CLD
86、</p><p><b> LODSB</b></p><p><b> XLAT</b></p><p> MOV DX,PORT0</p><p> OUT &
87、#160;DX,AL</p><p> LOOP DISP1</p><p> POP CX</p><p><b> RET</b></p><p> DISP
88、 ENDP</p><p> ERR PROC NEAR</p><p> MOV HOUR2,0AH<
89、;/p><p> MOV HOUR1,0BH</p><p> MOV MIN2,0BH ;顯示“E----”</p><p> MOV
90、0; MIN1,0BH</p><p> MOV SEC2,0BH</p><p> MOV SEC1,0BH</p><p> MOV
91、160; ERR1,01H ;出錯(cuò)標(biāo)志</p><p><b> RET</b></p><p> ERR ENDP</p><p> HIGH0
92、0; PROC NEAR</p><p> CALL KEY2</p><p> MOV ERR1,00</p><p> CMP
93、 HMS,00H ;HMS是預(yù)置時(shí)、分、秒標(biāo)志</p><p> JNZ MIN0</p><p> CMP AL,02H ;00預(yù)置時(shí)&
94、lt;/p><p> JG ERROR ;11預(yù)置分</p><p> MOV HOUR2,AL ;22預(yù)置秒<
95、/p><p> JMP HOUT1</p><p> MIN0: CMP HMS,11H</p><p> JNZ
96、60; SEC0</p><p> CMP AL,05H</p><p> JG ERROR</p><p> MOV
97、;MIN2,AL</p><p> JMP HOUT1</p><p> SEC0: CMP AL,05H</p><p> JG
98、; ERROR</p><p> MOV SEC2,AL</p><p> HOUT1: RET</p><p> ERROR:
99、 CALL ERR</p><p><b> RET</b></p><p> HIGH0 ENDP</p><p> LOW0 &
100、#160;PROC NEAR</p><p> CALL KEY2 ;預(yù)置時(shí)、分、秒低位</p><p> MOV ERR1,00</p
101、><p> CMP HMS,00H</p><p> JNZ MIN3</p><p> MOV DL,HOUR2</p><p>
102、 CMP DL,01</p><p> JG HOUR3</p><p> CMP AL,09H</p><p> JG
103、60; ERROR</p><p> MOV HOUR1,AL</p><p> JMP LQUT1</p><p> HOUR3:
104、0; CMP AL,03H</p><p> JG ERROR</p><p> MOV HOUR1,AL</p><p&g
105、t; JMP LQUT1</p><p> MIN3: CMP HMS,11H</p><p> JNZ
106、SEC3</p><p> CMP AL,09H</p><p> JG ERROR</p><p> MOV MIN1,AL</p&
107、gt;<p> JMP LQUT1</p><p> SEC3: CMP AL,09H</p><p> JG
108、160; ERROR</p><p> MOV SEC1,AL</p><p> LQUT1: RET</p><p> LOW0
109、;ENDP</p><p> CODE ENDS</p><p> END START</p><p><b> 四、測(cè)試分析</b></p><
110、;p> 按要求在實(shí)驗(yàn)臺(tái)上連好線,打開電源,然后在PC機(jī)上編譯、連接、運(yùn)行程序,再測(cè)試功能:</p><p><b> 按P鍵設(shè)置時(shí)分秒</b></p><p><b> 按C清零</b></p><p><b> 按G啟動(dòng)計(jì)時(shí)</b></p><p><b&
111、gt; 按D停止計(jì)時(shí)</b></p><p><b> 按E返回DOS</b></p><p> 輸入有錯(cuò)顯示E-----,此時(shí)按P可重新輸入。</p><p><b> 五、總結(jié)</b></p><p> 本次設(shè)計(jì)是兩人一組,實(shí)驗(yàn)設(shè)計(jì)中,能夠感受到若是光靠自己的能力,是不能夠
112、完成這次設(shè)計(jì)的。自己分析原因:其一,沒有對(duì)單片機(jī)了解不夠詳細(xì),知識(shí)面欠缺。其二,自己做的許多過程有差誤,不說自己到頭來能否發(fā)現(xiàn),即使發(fā)現(xiàn),時(shí)間耽誤太多了,自己過于粗心馬虎。正是因?yàn)槲覀兪菆F(tuán)體合作,有異議提出來,將錯(cuò)誤及時(shí)解決,避免了很多設(shè)計(jì)的復(fù)雜性。當(dāng)然,這次設(shè)計(jì),其他的同學(xué)也提供了不少援助,當(dāng)然,老師為我們課程設(shè)計(jì)的成功提供了很重要的幫助。再次感謝我的老師,感謝我的合作伙伴,當(dāng)然,這次的實(shí)驗(yàn)設(shè)計(jì)也看到自己的不足,以后自己會(huì)更加努力的學(xué)
113、習(xí),相信自己以后會(huì)越來越棒。</p><p><b> 六、參考文獻(xiàn)</b></p><p> 《微型計(jì)算機(jī)原理與接口技術(shù)》 主編:吳秀清 中國(guó)科技大學(xué)出版社</p><p> 微機(jī)原理與接口技術(shù) 主編:梁建武 中國(guó)水
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)——液晶顯示器與鍵盤系統(tǒng)
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì).
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)--實(shí)時(shí)鐘顯示與定時(shí)控制設(shè)計(jì)
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)報(bào)告
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì) --存儲(chǔ)器
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)---交通燈顯示系統(tǒng)
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)--交通燈顯示系統(tǒng)
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)---智能搶答器
- 微機(jī)接口技術(shù)課程設(shè)計(jì)
- 微機(jī)接口技術(shù)課程設(shè)計(jì)
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)--流水燈
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)-交通燈
- 紅外通信-微機(jī)原理與接口技術(shù)課程設(shè)計(jì)報(bào)告
- 微機(jī)原理與接口技術(shù)課程設(shè)計(jì)報(bào)告書
- 《微機(jī)原理與接口技術(shù)》課程設(shè)計(jì)
- 微機(jī)原理與接口技術(shù)-8086cpu小鍵盤課程設(shè)計(jì)
- 微機(jī)接口技術(shù)課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論