版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 題 目 鍵盤(pán)接口課程設(shè)計(jì) </p><p> 課 程 名 稱(chēng) 單片機(jī)原理及接口技術(shù) </p><p> 院 部 名 稱(chēng) 龍?bào)磳W(xué)院 </p><p> 專(zhuān) 業(yè)
2、 電氣工程及其自動(dòng)化 </p><p> 班 級(jí) M08電氣工程及其自動(dòng)化 </p><p> 學(xué) 生 姓 名 </p><p> 學(xué) 號(hào) </p><p> 課程設(shè)計(jì)地點(diǎn) </p&
3、gt;<p> 課程設(shè)計(jì)學(xué)時(shí) 一周 </p><p> 指 導(dǎo) 教 師 </p><p> 單片機(jī)原理及接口技術(shù)課程設(shè)計(jì)</p><p><b> 鍵盤(pán)接口課程設(shè)計(jì)</b></p><p><b> 課程
4、設(shè)計(jì)目的:</b></p><p> 熟悉單片機(jī)仿真軟件Proteus,單片機(jī)開(kāi)發(fā)環(huán)境Keil的應(yīng)用;</p><p> 增進(jìn)對(duì)單片機(jī)的感性認(rèn)識(shí),加深對(duì)單片機(jī)理論方面的理解;</p><p> 使學(xué)生了解和掌握單片機(jī)應(yīng)用系統(tǒng)的軟硬件設(shè)計(jì)過(guò)程、方法及實(shí)現(xiàn),為以后設(shè)計(jì)和實(shí)現(xiàn)單片機(jī)應(yīng)用系統(tǒng)打下良好基礎(chǔ)。</p><p><b
5、> 課程設(shè)計(jì)內(nèi)容:</b></p><p> 本課程設(shè)計(jì)為獨(dú)立式非編碼鍵盤(pán)接口鍵盤(pán)的輸入輸出系統(tǒng)。89c51作為核心,課程設(shè)計(jì)分為兩大部分:鍵盤(pán)的輸入和LED顯示。</p><p><b> 硬件設(shè)計(jì):</b></p><p> 1. 89C51微處理器</p><p> 89C51是一種帶4
6、K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS8位微處理器,俗稱(chēng)單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的89C51是一種高效微控制器,89
7、C2051是它的一種精簡(jiǎn)版本。89C單片機(jī)為很多嵌入式系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。 </p><p><b> 2. 鍵盤(pán)接口電路</b></p><p> 獨(dú)立式鍵盤(pán)是指各按鍵互相獨(dú)立的接通一條輸入數(shù)據(jù)線(xiàn),該電路為查詢(xún)方式電路。當(dāng)任何一個(gè)鍵按下時(shí),與之相連的輸入數(shù)據(jù)線(xiàn)即被清0,而平時(shí)改線(xiàn)為1.要判別是否有鍵按下,需用單片機(jī)的位處理指令。</p>
8、;<p> 3. 譯碼器 74LS164 原理</p><p> 器件功能:8位傳入,并出移位寄存器</p><p> 74HC164、74HCT164 是高速硅門(mén) CMOS 器件,與低功耗肖特基型 TTL (LSTTL) 器件的引腳兼容。74HC164、74HCT164 是 8 位邊沿觸發(fā)式移位寄存器,串行輸入數(shù)據(jù),然后并行輸出。數(shù)據(jù)通過(guò)兩個(gè)輸入端(DSA 或 DSB
9、)之一串行輸入;任一輸入端可以用作高電平使能端,控制另一輸入端的數(shù)據(jù)輸入。兩個(gè)輸入端或者連接在一起,或者把不用的輸入端接高電平,一定不要懸空。 </p><p> 時(shí)鐘 (CP) 每次由低變高時(shí),數(shù)據(jù)右移一位,輸入到 Q0, Q0 是兩個(gè)數(shù)據(jù)輸入端(DSA和 DSB)的邏輯與,它將上升時(shí)鐘沿之前保持一個(gè)建立時(shí)間的長(zhǎng)度。 </p><p> 主復(fù)位 (MR) 輸入端上的一個(gè)低電平將使其它
10、所有輸入端都無(wú)效,同時(shí)非同步地清除寄存器,強(qiáng)制所有的輸出為低電平。</p><p><b> IEC邏輯符號(hào)</b></p><p> H = HIGH(高)電平 </p><p> h = 先于低-至-高時(shí)鐘躍變一個(gè)建立時(shí)間 (set-up time) 的 HIGH(高)電平 </p><p> L = LOW
11、(低)電平 </p><p> l = 先于低-至-高時(shí)鐘躍變一個(gè)建立時(shí)間 (set-up time) 的 LOW(低)電平 </p><p> q = 小寫(xiě)字母代表先于低-至-高時(shí)鐘躍變一個(gè)建立時(shí)間的參考輸入 (referenced input) 的狀態(tài) </p><p> ↑ = 低-至-高時(shí)鐘躍變 </p><p> 4. 7
12、段LED數(shù)碼顯示</p><p> 7段LED構(gòu)成字型“8”。本設(shè)計(jì)為共陽(yáng)極顯示器。加限流電阻,以防止LED燒壞。</p><p> 數(shù)碼管是數(shù)碼顯示器的俗稱(chēng)。常用的數(shù)碼顯示器有半導(dǎo)體數(shù)碼管,熒光數(shù)碼管,輝光數(shù)碼管和液晶顯示器等。 本設(shè)計(jì)所選用的是半導(dǎo)體數(shù)碼管,是用發(fā)光二極管(簡(jiǎn)稱(chēng)LED)組成的字形來(lái)顯示數(shù)字,七個(gè)條形發(fā)光二極管排列成七段組合字形,便構(gòu)成了半導(dǎo)體數(shù)碼管。半導(dǎo)體
13、數(shù)碼管有共陽(yáng)極和共陰極兩種類(lèi)型。共陽(yáng)極數(shù)碼管的七個(gè)發(fā)光二極管的陽(yáng)極接在一起,而七個(gè)陰極則是獨(dú)立的。共陰極數(shù)碼管與共陽(yáng)極數(shù)碼管相反,七個(gè)發(fā)光二極管的陰極接在一起,而陽(yáng)極是獨(dú)立的。 當(dāng)共陽(yáng)極數(shù)碼管的某一陰極接低電平時(shí),相應(yīng)的二極管發(fā)光,可根據(jù)字形使某幾段二極管發(fā)光,所以共陽(yáng)極數(shù)碼管需要輸出低電平有效的譯碼器去驅(qū)動(dòng)。共陰極數(shù)碼管則需輸出高電平有效的譯碼器去驅(qū)動(dòng)。</p><p><b> 軟件設(shè)計(jì)
14、、</b></p><p><b> 1. 設(shè)計(jì)思想</b></p><p> p1.0~p1.7為89C51單片機(jī)的輸入端,P3.0~P3.1為單片機(jī)的輸出端。首先設(shè)置時(shí)鐘地址、顯示緩存地址,并對(duì)數(shù)碼管顯示初始化。初始化狀態(tài),顯示器顯示數(shù)字為0。在判斷是否有鍵按下前先對(duì)P1口寫(xiě)1,判斷是否有按鍵按下;如果有按鍵按下,需消除按鍵抖動(dòng),然后查表確定按鍵值
15、;若沒(méi)有按鍵按下,循環(huán)判斷是否有鍵按下的程序段。當(dāng)有按鍵按下,且按鍵抬起后,鍵值存入緩存,據(jù)鍵值查表取段碼,設(shè)置移位次數(shù),段碼移位輸出,輸出移位脈沖,輸出數(shù)字。</p><p><b> 2. 流程圖</b></p><p><b> 3. 程序</b></p><p> DINEQUP3.0
16、 ; 74ls164數(shù)據(jù)輸入地址</p><p> CLKEQUP3.1 ;時(shí)鐘地址</p><p> DBUFEQU30H ;顯示緩存地址</p><p> TEMP EQU 40H</p><p><b> ORG00H</b>&
17、lt;/p><p> MOV30H,#16;數(shù)碼管顯示初始化</p><p> MAIN:ACALLDISP;顯示</p><p> ACALLKEY;計(jì)算鍵值</p><p><b> AJMPMAIN</b></p><p> KEY: ;計(jì)
18、算鍵碼子程序</p><p> MOV P1,#0FFH ;讀數(shù)前先寫(xiě)1 </p><p> MOVA,P1 </p><p> CJNEA,#0FFH,K00 ;判斷是否有鍵按下 </p><p> AJMPKEY </p&
19、gt;<p> K00:ACALLDELAY </p><p><b> MOVA,P1</b></p><p> CJNEA,#0FFH,K01 ;消除按鍵抖動(dòng) </p><p><b> AJMPKEY</b></p><p
20、> K01:MOVR3,#8 </p><p> MOV R2,#0 </p><p> MOV B,A </p><p> MOVDPTR,#K0TAB;查表比較,計(jì)算鍵值</p><p> K02: MOV
21、A,R2</p><p> MOVC A,@A+DPTR </p><p> CJNE A,B,K04 </p><p> K03: MOVA,P1 </p><p> CJNE A,#0FFH,K03 ;等待按鍵抬起
22、 </p><p> ACALL DELAY </p><p> MOV A,R2 </p><p><b> RET</b></p><p> K04:INC R2 </p><
23、;p> DJNZR3,K02</p><p> MOV A,#0FFH </p><p><b> AJMP KEY</b></p><p> K0TAB:DB 0FEH,0FDH,0FBH,0F7H </p><p> DB 0EFH,0DFH,0BFH,07FH&l
24、t;/p><p> DISP: ;數(shù)碼顯示子程序</p><p> MOV DBUF,A;鍵值存入緩存</p><p> MOV R0,#DBUF</p><p> MOV R1,#TEMP</p><p> DP10:MOV DPTR,#SEGTAB</p
25、><p> MOV A,@R0</p><p> MOVC A,@A+DPTR;根據(jù)鍵值查表取段碼</p><p> MOV @R1,A;暫存段碼</p><p> MOV R0,#TEMP</p><p> DP12:MOV R2,#8;設(shè)置移位次數(shù)</p&
26、gt;<p> MOV A,@R0</p><p> DP13: RLC A;段碼移位輸出</p><p> MOV DIN,C</p><p> CLR CLK;輸出移位脈沖</p><p> SETB CLK</p><p> DJNZ
27、 R2,DP13</p><p><b> RET</b></p><p> SEGTAB: DB 3FH,06H,5BH,4FH,66H </p><p> DB 6DH,7DH,07H,7FH,6FH</p><p> DELAY: MOV R4,#02H
28、 </p><p> AA1: MOV R5,#0F8H</p><p> AA: DJNZ R5,AA</p><p> DJNZR4,AA1</p><p><b> RET</b></p><p><b> END </b
29、></p><p><b> 設(shè)計(jì)總結(jié):</b></p><p> 在此次的鍵盤(pán)設(shè)計(jì),掌握了89C51單片機(jī)及了各芯片的工作原理和其具體的使用方法. 在設(shè)計(jì)電路中,往往是先仿真后連接實(shí)物圖,但有時(shí)候仿真和電路連接并不是完全一致的。在設(shè)計(jì)電路的連接圖中出錯(cuò)的主要原因都是接線(xiàn)和芯片的接觸不良以及接線(xiàn)的錯(cuò)誤所引起的.接線(xiàn)的時(shí)候一定要細(xì)心,不要接錯(cuò)</p
30、><p> 對(duì)自己的設(shè)計(jì)圖要仔細(xì)考慮,是否可行,尤其是進(jìn)位輸出,著重看看進(jìn)位的CP脈沖是否正確。</p><p> 本次課設(shè)最大的障礙是方案確定在圖書(shū)館所查的電路圖有一處錯(cuò)誤,即在校正電路中連錯(cuò)了一個(gè)借口。最后經(jīng)過(guò)多次的檢查,終于找出了錯(cuò)誤之處,并進(jìn)行改正。</p><p> 在EWB軟件中得到繪制出原理圖。每一部分電路完成后就對(duì)其進(jìn)行功能檢測(cè),以便及時(shí)發(fā)現(xiàn)問(wèn)題進(jìn)
31、行改正。擴(kuò)展電路是在主體電路的基礎(chǔ)上加上一部分功能實(shí)現(xiàn)電路,以實(shí)現(xiàn)定時(shí)、整點(diǎn)報(bào)時(shí)等功能。并附帶原理闡述。</p><p> 通過(guò)這次課程設(shè)計(jì)學(xué)習(xí),讓我對(duì)各種電路都有了大概的了解,也學(xué)會(huì)了常用繪圖軟件及仿真軟件的應(yīng)用。</p><p> 所以說(shuō),坐而言不如立而行,對(duì)于這些電路還是應(yīng)該自己動(dòng)手實(shí)際操作才會(huì)有深刻理解,才會(huì)有收獲。</p><p><b>
32、 參考文獻(xiàn):</b></p><p> [1] 康華光.《數(shù)字電子技術(shù)基礎(chǔ)》. 北京:高等教育出版社,2000.3</p><p> [2] 李朝清.《單片機(jī)原理及接口技術(shù)》(第3版).北京:北京航空航天大學(xué)出版社,2006.12</p><p> [3] 姚福安. 《電子電路設(shè)計(jì)與實(shí)踐》(第一版 ).山東科學(xué)技術(shù)出版社,2002.4</p&
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)鍵盤(pán)輸入課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--矩陣鍵盤(pán) led顯示
- 單片機(jī)課程設(shè)計(jì)報(bào)告-仿手機(jī)鍵盤(pán)
- 單片機(jī)課程設(shè)計(jì)--單片機(jī)44矩陣式鍵盤(pán)
- 單片機(jī)課程設(shè)計(jì)-單片機(jī)課程設(shè)計(jì)---電子時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--轉(zhuǎn)速測(cè)量課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)
- 單片機(jī)手機(jī)鍵盤(pán)-單片機(jī)原理及應(yīng)用課程設(shè)計(jì)
- 1602lcd仿手機(jī)鍵盤(pán)單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)-led燈點(diǎn)陣課程設(shè)計(jì)
- 《單片機(jī)原理與接口技術(shù)》課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)正文
- 單片機(jī)秒表課程設(shè)計(jì)
- pic單片機(jī)課程設(shè)計(jì)
- 51單片機(jī)課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論