




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上目錄摘要電子信息行業(yè)將是人類社會(huì)的高科技行業(yè)之一,是設(shè)施現(xiàn)代化的基礎(chǔ),也是人類通往科技巔峰的直通車(chē)。電子行業(yè)的發(fā)展很重要,而計(jì)算機(jī)技術(shù)是現(xiàn)代科技發(fā)展的重要組成部分。矩陣式鍵盤(pán)控制系統(tǒng)可以提高效率,是進(jìn)行按鍵操作管理的有效方法,它可以提高系統(tǒng)準(zhǔn)確性,有利于資源的節(jié)約,降低對(duì)操作者本身的要求。并能正確、實(shí)時(shí)、高效地顯示按鍵信息,以提高工作效率和資源利用率。矩陣式鍵盤(pán)是當(dāng)今使用最為廣泛的鍵盤(pán)模式,該系統(tǒng)以N個(gè)端口連接控制N*N個(gè)按鍵,并通過(guò)單片機(jī),顯示在LED數(shù)碼管上。單片機(jī)控制鍵盤(pán)顯示系統(tǒng),可以對(duì)不同的按鍵進(jìn)行實(shí)時(shí)顯示,其核心是單片機(jī)、鍵盤(pán)矩陣電路和數(shù)碼管顯示電路。4*4
2、矩陣式鍵盤(pán)以AT89C51單片機(jī)為核心,主要由矩陣式鍵盤(pán)電路、顯示電路等組成,軟件選用C語(yǔ)言編程。單片機(jī)將檢測(cè)到的按鍵信號(hào)轉(zhuǎn)換成數(shù)字量,顯示于LED顯示器上。該系統(tǒng)靈活性強(qiáng),易于操作,可靠性高,廣泛應(yīng)用于各種場(chǎng)合。第一章 硬件部分第一節(jié) AT89C51AT89C51是一種帶4KFLASH(FPEROMFlash Programmable and Erasable Read Only Memory)的低電壓、高性能CMOS 8位,俗稱。AT89C51為很多提供了一種靈活性高且價(jià)廉的方案。引腳如圖所示 AT89C51圖1 AT89C51管腳圖AT89C51其具有以下特性:與MCS-51 兼容 4K
3、字節(jié)可編程FLASH 壽命:1000寫(xiě)/擦循環(huán) 數(shù)據(jù)保留時(shí)間:10年 全靜態(tài)工作:0Hz-24MHz 三級(jí)鎖定 128×8位內(nèi)部RAM 32可編程I/O線 兩個(gè)16位/計(jì)數(shù)器 5個(gè) 可編程串行通道 低功耗的閑置和掉電模式 片內(nèi)振蕩器和時(shí)鐘電路 特性概述:AT89C51 提供以下標(biāo)準(zhǔn)功能:4k Flash ,128字節(jié)內(nèi)部RAM,32 個(gè)I/O 接口,兩個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)5向量?jī)杉?jí)中斷結(jié)構(gòu),一個(gè)全雙工口,片內(nèi)振蕩器及。同時(shí),AT89C51可降至0Hz的靜態(tài)邏輯操作,并支持兩種可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,口及繼續(xù)工作。掉電方式保存RA
4、M中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個(gè)硬件復(fù)位。 管腳說(shuō)明:VCC:供電電壓。 GND:接地。 P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門(mén)電流。當(dāng)P0口的管腳第一次寫(xiě)1時(shí),被定義為輸入。P0能夠用于外部程序數(shù)據(jù),它可以被定義為數(shù)據(jù)/地址的低八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須接上拉電阻。 P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門(mén)電流。P1口管腳寫(xiě)入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上
5、拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為低八位地址接收。 P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門(mén)電流,當(dāng)P2口被寫(xiě)“1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部或16位地址存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)進(jìn)行讀寫(xiě)時(shí),P2口輸出其的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和。 P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門(mén)電流。當(dāng)P3
6、口寫(xiě)入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。 P3口也可作為AT89C51的一些特殊功能口,如下表所示: P3.0 RXD(串行輸入口) P3.1 TXD(串行輸出口) P3.2 /INT0(外部中斷0) P3.3 /INT1(外部中斷1) P3.4 T0(記時(shí)器0外部輸入) P3.5 T1(記時(shí)器1外部輸入) P3.6 /WR(寫(xiě)選通) P3.7 /RD(讀選通) P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些。 RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)的高電平時(shí)間。 ALE/PROG:當(dāng)訪問(wèn)外部時(shí)
7、,允許的用于鎖存地址的低位字節(jié)。在FLASH期間,此用于輸入脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)時(shí),將跳過(guò)一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該被略微拉高。如果在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。 /PSEN:外部的選通信號(hào)。在由外部程序取指期間,每個(gè)兩次/PSEN有效。但在訪問(wèn)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部
8、程序(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 XTAL2:來(lái)自反向振蕩器的輸出。振蕩器特性: XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。振蕩和陶瓷振蕩均可采用。如采用外部驅(qū)動(dòng)器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部要通過(guò)一個(gè)二分頻,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。 第二節(jié)4*4矩陣式鍵盤(pán)
9、1.2.1 矩陣式鍵盤(pán)介紹矩陣式鍵盤(pán)(或者叫行列式鍵盤(pán))常應(yīng)用在按鍵數(shù)量比較多的系統(tǒng)之中。這種鍵盤(pán)由行線和列線組成,按鍵設(shè)置在行、列結(jié)構(gòu)的交叉點(diǎn)上,行、列線分別接在按鍵開(kāi)關(guān)的兩端。行列式鍵盤(pán)可分為非編碼鍵盤(pán)和編碼鍵盤(pán)兩大類。編碼鍵盤(pán)內(nèi)部設(shè)有鍵盤(pán)編碼器,被按下鍵的鍵號(hào)由鍵盤(pán)編碼器直接給出,同時(shí)具有防抖和解決重鍵的功能。非編碼鍵盤(pán)通常采用軟件的方法,逐行逐列檢查鍵盤(pán)狀態(tài),當(dāng)有鍵按下時(shí),通過(guò)計(jì)算或查表的方法獲取該鍵的鍵值,通常,計(jì)算機(jī)通過(guò)程序控制對(duì)鍵盤(pán)掃描,從而獲取鍵值,根據(jù)計(jì)算機(jī)掃描的方法可以分為定時(shí)掃描法和中斷掃描法兩種。本系統(tǒng)中的4*4矩陣式鍵盤(pán)結(jié)構(gòu)簡(jiǎn)單,按鍵數(shù)較少,采用非編碼式鍵盤(pán),當(dāng)有鍵按
10、下時(shí),由單片機(jī)通過(guò)程序掃描確定鍵值,并將獲得的鍵值通過(guò)LED數(shù)碼管顯示出來(lái),4*4矩陣式鍵盤(pán)結(jié)構(gòu)及鍵值分布如下圖:圖2 4*4矩陣鍵盤(pán)原理結(jié)構(gòu)圖1234567890ABCDEF圖3 鍵盤(pán)鍵值分布1.2.2 鍵盤(pán)掃描原理為了更加貼近實(shí)際應(yīng)用,本系統(tǒng)采用中斷式掃描法,這樣可以節(jié)約單片機(jī)開(kāi)銷,提高單片機(jī)工作效率,使得單片機(jī)在沒(méi)有鍵盤(pán)輸入時(shí)可以處理其他工作,其具體工作過(guò)程為:在沒(méi)有鍵按下時(shí)矩陣鍵盤(pán)行線接高電平,列線接低電平,當(dāng)某個(gè)鍵被按下時(shí),該按鍵所在行線電位被拉低,觸發(fā)單片機(jī)的外部中斷INT0,進(jìn)入中斷子程序,在中斷程序中,單片機(jī)對(duì)矩陣鍵盤(pán)進(jìn)行掃描以確定按下的鍵值,掃描過(guò)程如下:1、 檢測(cè)行線電平,
11、確定是否有按鍵被按下;2、 延時(shí)去抖動(dòng);3、 重新確認(rèn)是否有按鍵被按下,若有,掃描鍵值,若沒(méi)有,返回主程序;4、 掃描鍵值,首先行線接高電平,列線接低電平,對(duì)行線電平進(jìn)行檢測(cè),以確定按下的鍵所在的行;5、 行線接低電平,列線接高點(diǎn)平,對(duì)列線電平進(jìn)行檢測(cè),確定按下的鍵所在的列;6、 將掃描所得的按鍵值送入LED數(shù)碼管顯示。第三節(jié) LED數(shù)碼管LED(發(fā)光二級(jí)管)顯示器件是計(jì)算機(jī)控制控制系統(tǒng)中的廉價(jià)輸出設(shè)備,它由多個(gè)發(fā)光二極管組成,能顯示許多種字符。由于制作材料不同,LED可以發(fā)出紅、黃、籃、紫等各種單色光,一個(gè)發(fā)光二級(jí)管正常發(fā)光時(shí)的電流大約為10mA,本系統(tǒng)中使用的是七段共陰極LED數(shù)碼管。圖4
12、、5所示為七段共陰極LED顯示器件的結(jié)構(gòu)及外形圖。七段LED顯示器件就是將7個(gè)發(fā)光二極管按一定的方式組合在一起,如圖4所示。abcdefgCOMagdfebc圖4 7段LED顯示器件外形圖aaaaaaaCOM 圖5 7段LED顯示器件結(jié)構(gòu)圖下表給出了共陰極7段LED顯示器件所能顯示的部分字符與7段控制顯示代碼的對(duì)應(yīng)關(guān)系表1 . 共陰極7段LED顯示器件所能顯示的部分字符與7段控制顯示代碼的對(duì)應(yīng)關(guān)系顯示字符控制顯示代碼(十六進(jìn)制)顯示字符控制顯示代碼(十六進(jìn)制)106A7725BB7C34FC39466D5E56DE7967DF71707H7687FP7396F-4003F不顯示00在本系統(tǒng)中,
13、4*4鍵盤(pán)共有16個(gè)鍵,對(duì)其編號(hào)09,AF,所以用一個(gè)7段數(shù)碼管靜態(tài)顯示即可滿足即時(shí)顯示按鍵信息的要求。所謂靜態(tài)顯示,就是當(dāng)顯示器件顯示某個(gè)字符時(shí),相應(yīng)的顯示段(發(fā)光二級(jí)管)恒定地導(dǎo)通或截止,直到顯示另一個(gè)字符為止。這種顯示方式顯示一個(gè)字符時(shí),只需要微處理器送一次代碼,因此占用機(jī)時(shí)少,而且顯示穩(wěn)定可靠,其缺點(diǎn)是,使用元器件相對(duì)較多,且線路比較復(fù)雜,相對(duì)而言成本較高,比較適合顯示位數(shù)較少的情況。第四節(jié) 硬件電路連接1.4.1 單片機(jī)始終電路時(shí)鐘信號(hào)用來(lái)提供單片機(jī)片內(nèi)各種微操作的時(shí)間基準(zhǔn),時(shí)鐘信號(hào)通常用兩種電路形式得到:內(nèi)部振蕩和外部振蕩。單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反向放大器,引腳XT
14、ALl和XTAL2分別是此放大電器的輸入端和輸出端,由于采用內(nèi)部方式時(shí),電路簡(jiǎn)單,所得的時(shí)鐘信號(hào)比較穩(wěn)定,實(shí)際使用中常采用這種方式,如圖6所示在其外接晶體振蕩器(簡(jiǎn)稱晶振)或陶瓷諧振器就構(gòu)成了內(nèi)部振蕩方式,片內(nèi)高增益反向放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起可構(gòu)成一個(gè)自激振蕩器并產(chǎn)生振蕩時(shí)鐘脈沖。圖6中外接晶體以及電容C1和C2構(gòu)成并聯(lián)諧振電路,它們起穩(wěn)定振蕩頻率、快速起振的作用,其值為30pF左右,晶振頻率選11.0592MHz 。1.4.2單片機(jī)復(fù)位電路為了初始化單片機(jī)內(nèi)部的某些特殊功能寄存器,必須利用復(fù)位電路,復(fù)位后可使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初始狀態(tài)開(kāi)始正
15、常工作。單片機(jī)的復(fù)位是靠外電路來(lái)實(shí)現(xiàn)的,在正常運(yùn)行情況下,只要RST引腳上出現(xiàn)兩個(gè)機(jī)器周期時(shí)間以上的高電平,即可引起系統(tǒng)復(fù)位,但如果RST引腳上持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。復(fù)位后系統(tǒng)將輸入/輸出(1/0)端口寄存器置為FFH,堆棧指針SP置為07H, SBUF內(nèi)置為不定值,其余的寄存器全部清0,內(nèi)部RAM的狀態(tài)不受復(fù)位的影響,在系統(tǒng)上電時(shí)RAM的內(nèi)容是不定的。復(fù)位操作有兩種情況,即上電復(fù)位和手動(dòng)(開(kāi)關(guān))復(fù)位。本系統(tǒng)采用上電復(fù)位方式。圖6中R2、R3和C3組成上電復(fù)位電路,其值R2、R3取為1K, C3取為10pF。1.4.3 矩陣式鍵盤(pán)電路4*4矩陣式鍵盤(pán)接于單片機(jī)的P2口,P2.
16、0P2.3接行線,P2.4P2.7接列線,初始化和無(wú)按鍵按下時(shí),P2.0P2.3輸出高電平,P2.4P2.7輸出低電平,當(dāng)P2.0P2.3中某個(gè)位為低電平時(shí)說(shuō)明有按鍵按下,觸發(fā)單片機(jī)中斷完成相應(yīng)功能,鍵盤(pán)與單片機(jī)的連接如圖5.1.4.4 LED數(shù)碼管顯示電路LED顯示器接在單片機(jī)的P1口,其中P1.0P1.6接LED的控制端,P1.7接COM端,工作時(shí)P1.7端始終輸出低電平,P1.0P1.6根據(jù)要顯示的字符輸出相應(yīng)的數(shù)據(jù)。LED與單片機(jī)的連接如圖5.。1.4.5 中斷觸發(fā)電路本系統(tǒng)采用中斷處理方式,可以提高單片機(jī)的數(shù)據(jù)處理能力,有利于節(jié)能。由矩陣鍵盤(pán)連接電路可知,無(wú)按鍵按下時(shí),行線始終為高電
17、平,當(dāng)有按鍵按下時(shí),相應(yīng)的行線被拉為低電平,利用這一規(guī)律設(shè)計(jì)按鍵的中斷觸發(fā)電路:將四條行線接到74LS21(4輸入與門(mén))經(jīng)過(guò)與運(yùn)算后接到單片機(jī)的P3.2(INT0)口,設(shè)置INT0為下降沿觸發(fā),當(dāng)行線中任意一條為低電平時(shí),觸發(fā)INT0中斷,單片機(jī)調(diào)用中斷子程序檢測(cè)鍵值并輸出到LED顯示。電路圖如圖6.此外,長(zhǎng)時(shí)間無(wú)按鍵按下時(shí),為了節(jié)能,可以關(guān)閉LED顯示,單片機(jī)關(guān)閉LED顯示通過(guò)外部電路觸發(fā)INT1中斷完成。如圖6所示,其中R1為1K。復(fù)位電路接在P3.3(INT1)口,設(shè)置INT1中斷為低電平觸發(fā)方式,當(dāng)OFF按鍵按下時(shí)P3.3輸入低電平,觸發(fā)INT1中斷,單片機(jī)調(diào)用相應(yīng)中斷程序使P1輸出全
18、為低電平,LED不顯示字符圖6 系統(tǒng)硬件連接圖第二章 軟件部分第一節(jié) 所用軟件簡(jiǎn)介2.1.1 KeilKeil C51是Keil Software公司出品的51系列兼容C語(yǔ)言軟件開(kāi)發(fā)系統(tǒng),與匯編相比,C語(yǔ)言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用。用過(guò)匯編語(yǔ)言后再使用C來(lái)開(kāi)發(fā),體會(huì)更加深刻。Keil C51軟件提供豐富的和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面,并將這些部分組合在一起。其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)令你事半功倍。Keil C51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的
19、優(yōu)勢(shì)。 1 系統(tǒng)概述 Keil C51軟件提供豐富的和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全界面。另外重要的一點(diǎn),只要看一下后生成的匯編代碼,就能體會(huì)到Keil C51生成的效率非常之高,多數(shù)語(yǔ)句生成的匯編代碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。Keil C51軟件開(kāi)發(fā)系統(tǒng)的整體結(jié)構(gòu) C51工具包的整體結(jié)構(gòu),uVision與Ishell分別是C51 for Windows和for Dos的(IDE),可以完成編輯、連接、調(diào)試、仿真等整個(gè)開(kāi)發(fā)流程。開(kāi)發(fā)人員可用IDE本身或其它編輯C或匯編源文件。然后分別由C51及C51編譯生成目標(biāo)文件(.OBJ)。目標(biāo)文件可由LIB51創(chuàng)建生成庫(kù)文
20、件,也可以與庫(kù)文件一起經(jīng)L51連接定位生成絕對(duì)目標(biāo)文件(.ABS)。ABS文件由OH51轉(zhuǎn)換成標(biāo)準(zhǔn)的Hex文件,以供調(diào)試器dScope51或tScope51使用進(jìn)行級(jí)調(diào)試,也可由使用直接對(duì)進(jìn)行調(diào)試,也可以直接寫(xiě)入程序存貯器如EPROM中。 使用獨(dú)立的Keil時(shí),注意事項(xiàng) 標(biāo)配11.0592MHz的晶振,但用戶可以在仿真器上的晶振插孔中換插其他頻率的晶振。 上的復(fù)位按鈕只復(fù)位仿真芯片,不復(fù)位目標(biāo)系統(tǒng)。 仿真芯片的31腳(/EA)已接至高電平,所以仿真時(shí)只能使用片內(nèi)ROM,不能使用片外ROM;但外引插針中的31腳并不與仿真芯片的31腳相連,故該仿真器仍可插入到擴(kuò)展有外部ROM(其CPU的/EA引腳
21、接至低電平)的目標(biāo)系統(tǒng)中使用。2.1.2 ProteusProteus是世界上著名的EDA工具(),從原理圖布圖、代碼調(diào)試到與外圍電路協(xié)同仿真,一鍵切換到PCB設(shè)計(jì),真正實(shí)現(xiàn)了從概念到產(chǎn)品的完整設(shè)計(jì)。是目前世界上唯一將軟件、PCB設(shè)計(jì)軟件和虛擬模型仿真軟件三合一的設(shè)計(jì)平臺(tái),其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機(jī)
22、及外圍器件。它是目前最好的仿真單片機(jī)及外圍器件的工具。雖然目前國(guó)內(nèi)推廣剛起步,但已受到單片機(jī)愛(ài)好者、從事單片機(jī)教學(xué)的教師、致力于單片機(jī)開(kāi)發(fā)應(yīng)用的科技工作者的青睞。廣泛應(yīng)用于各個(gè)領(lǐng)域。Proteus為用戶提供了豐富的資源,主要有:1Proteus可提供的仿真元器件資源:仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件,有30多個(gè)元件庫(kù)。 2Proteus可提供的仿真儀表資源 :示波器、邏輯分析儀、SPI調(diào)試器、I2C調(diào)試器、信號(hào)發(fā)生器、模式發(fā)生器、交直流電壓表、。理論上同一種儀器可以在一個(gè)電路中隨意的調(diào)用。 3除了現(xiàn)實(shí)存在的儀器外,Proteus還提供了一個(gè)圖形顯示功能,可以將線路上變化的信號(hào),以圖形的
23、方式實(shí)時(shí)地顯示出來(lái),其作用與示波器相似,但功能更多。這些虛擬儀器儀表具有理想的參數(shù)指標(biāo),例如極高的輸入阻抗、極低的輸出阻抗。這些都盡可能減少了儀器對(duì)測(cè)量結(jié)果的影響。 4Proteus可提供的調(diào)試手段 Proteus提供了比較豐富的測(cè)試信號(hào)用于電路的測(cè)試。這些測(cè)試信號(hào)包括和數(shù)字信號(hào)。在PROTEUS繪制好原理圖后,調(diào)入已編譯好的文件:*.HEX,可以在PROTEUS的原理圖中看到模擬的實(shí)物運(yùn)行狀態(tài)和過(guò)程。 PROTEUS 是單片機(jī)課堂教學(xué)的先進(jìn)助手。 PROTEUS不僅可將許多功能形象化,也可將許多單片機(jī)實(shí)例運(yùn)行過(guò)程形象化。前者可在相當(dāng)程度上得到實(shí)物演示實(shí)驗(yàn)的效果,后者則是實(shí)物演示實(shí)驗(yàn)難以達(dá)到的
24、效果。 它的元器件、連接線路等卻和傳統(tǒng)的實(shí)驗(yàn)硬件高度對(duì)應(yīng)。這在相當(dāng)程度上替代了傳統(tǒng)的實(shí)驗(yàn)教學(xué)的功能,例:元器件選擇、電路連接、電路檢測(cè)、電路修改、運(yùn)行結(jié)果等。 課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)是學(xué)生走向就業(yè)的重要實(shí)踐環(huán)節(jié)。由于PROTEUS提供了實(shí)驗(yàn)室無(wú)法相比的大量的元器件庫(kù),提供了修改電路設(shè)計(jì)的靈活性、提供了實(shí)驗(yàn)室在數(shù)量、質(zhì)量上難以相比的、儀表,因而也提供了培養(yǎng)學(xué)生實(shí)踐精神、創(chuàng)造精神的平臺(tái) 隨著科技的發(fā)展,“”已成為許多設(shè)計(jì)部門(mén)重要的前期設(shè)計(jì)手段。它具有設(shè)計(jì)靈活,結(jié)果、過(guò)程的統(tǒng)一的特點(diǎn)??墒乖O(shè)計(jì)時(shí)間大為縮短、耗資大為減少,也可降低工程制造的風(fēng)險(xiǎn)。相信在單片機(jī)開(kāi)發(fā)應(yīng)用中PROTEUS也能茯得愈來(lái)愈廣泛的應(yīng)用
25、。 使用Proteus 進(jìn)行單片機(jī)設(shè)計(jì),是和相結(jié)合的綜合運(yùn)用,有利于培養(yǎng)學(xué)生的電路設(shè)計(jì)能力及的操作能力;在和全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽中,我們使用 Proteus 對(duì)學(xué)生進(jìn)行培訓(xùn),在不需要硬件投入的條件下,學(xué)生普遍反映,對(duì)單片機(jī)的學(xué)習(xí)比單純學(xué)習(xí)書(shū)本知識(shí)更容易接受,更容易提高。實(shí)踐證明,在使用 Proteus 進(jìn)行開(kāi)發(fā)成功之后再進(jìn)行實(shí)際制作,能極大提高系統(tǒng)設(shè)計(jì)效率。因此,Proteus 有較高的推廣利用價(jià)值。第二節(jié) 程序流程圖開(kāi)始主程序初始化LED數(shù)碼管接通矩陣鍵盤(pán)行線高電平,列線低電平開(kāi)中斷INT0、INT1是否關(guān)閉LED顯示執(zhí)行INT0中斷服務(wù)程序設(shè)置中斷INT0、INT1觸發(fā)方式執(zhí)行INT1中
26、斷服務(wù)程序是否有按鍵按下是是否否圖7 主程序流程圖INT0中斷服務(wù)程序確認(rèn)是否有按鍵按下延時(shí)去抖動(dòng)重新確認(rèn)是否有按鍵按下判斷被按下鍵所在的行和列將所得鍵值送到LED顯示返回主程序是否是否INT1中斷服務(wù)子程序確認(rèn)OFF鍵是否按下延時(shí)去抖動(dòng)重新確認(rèn)OFF鍵是否按下關(guān)閉LED數(shù)碼管顯示返回主程序否否是是圖8 中斷服務(wù)程序流程圖第三節(jié) 程序#include<reg51.h>void main()P1=0x00; /初始化LED數(shù)碼管TCON=0x01; /設(shè)置INT0、INT1觸發(fā)方式IE=0x85; /使能INT0、INT1中斷while(1)P2=0x0f; /接通矩陣鍵盤(pán) void
27、 counter0(void) interrupt 0 /INT0中斷服務(wù)程序char key,key_h,key_l,delay;if(P2!=0x0f) /確認(rèn)是否有鍵按下for(delay=0;delay<100;delay+); /延時(shí)去抖動(dòng)if(P2!=0x0f) /重新確認(rèn)是否有鍵按下P2=0x0f;key_h=P20x0f; /檢測(cè)按鍵所在行P2=0xf0;key_l=P20xf0; /檢測(cè)按鍵所在列key=key_h+key_l;switch(key) /確定按鍵值并送入LED顯示case 0x11:P1=0x06;break;case 0x21:P1=0x5b;brea
28、k;case 0x41:P1=0x4f;break;case 0x81:P1=0x66;break;case 0x12:P1=0x6d;break;case 0x22:P1=0x7d;break;case 0x42:P1=0x07;break;case 0x82:P1=0x7f;break;case 0x14:P1=0x6f;break;case 0x24:P1=0x3f;break;case 0x44:P1=0x77;break;case 0x84:P1=0x7c;break;case 0x18:P1=0x39;break;case 0x28:P1=0x5e;break;case 0x48:
29、P1=0x79;break;case 0x88:P1=0x71;break;default : P1=0x00;break;void counter1(void) interrupt 1 /INT1中斷服務(wù)程序char i;if(P33=0) /確認(rèn)OFF鍵是否按下for(i=0;i<100;i+); /延時(shí)去抖動(dòng)if(P33=0) /重新確認(rèn)復(fù)位鍵是否按下P1=0x00; /關(guān)閉LED顯示第三章 仿真結(jié)果本章舉幾個(gè)方針結(jié)果的例子圖9 1行1列(1)按下時(shí)仿真結(jié)果圖10錄管2 難,比如很多關(guān)于單片機(jī)的基礎(chǔ)知識(shí)學(xué)的不是很好, 202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020 2行2列(6)按下時(shí)仿真結(jié)果 圖11錄管2 難,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 設(shè)施供貨合同范本
- 年產(chǎn)20萬(wàn)噸奶牛飼料項(xiàng)目可行性研究報(bào)告建議書(shū)
- 中國(guó)工業(yè)除濕機(jī)行業(yè)市場(chǎng)調(diào)研及未來(lái)發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
- 2025年自吸石化滑片泵項(xiàng)目投資可行性研究分析報(bào)告
- 電容項(xiàng)目立項(xiàng)報(bào)告
- 2025年塑料模鋼行業(yè)深度研究分析報(bào)告
- 2024年湘西鳳凰縣民族中醫(yī)院招聘工作人員考試真題
- 2024年鎮(zhèn)寧自治縣林業(yè)局招聘城鎮(zhèn)公益性崗位筆試真題
- 關(guān)于出租車(chē)服務(wù)合同范本
- “十三五”重點(diǎn)項(xiàng)目-萬(wàn)頭奶牛養(yǎng)殖場(chǎng)項(xiàng)目可行性研究報(bào)告
- 保潔部消殺培訓(xùn)
- 口服輪狀疫苗知識(shí)課件
- 中國(guó)腦小血管病診治指南2023版
- 中國(guó)聚乙烯催化劑行業(yè)發(fā)展?fàn)顩r及需求規(guī)模預(yù)測(cè)研究報(bào)告(2024-2030版)
- 新能源汽車(chē)驅(qū)動(dòng)電機(jī)及控制系統(tǒng)檢修課件 學(xué)習(xí)情境4:電的轉(zhuǎn)換
- 車(chē)輛實(shí)際使用權(quán)協(xié)議書(shū)范文模板
- 新版加油站全員安全生產(chǎn)責(zé)任制
- 腦出血課件完整版本
- 涼山州小學(xué)數(shù)學(xué)教師業(yè)務(wù)素質(zhì)考試試題(真題+訓(xùn)練)
- 長(zhǎng)護(hù)險(xiǎn)定點(diǎn)機(jī)構(gòu)自查報(bào)告
- GB/T 6003.2-2024試驗(yàn)篩技術(shù)要求和檢驗(yàn)第2部分:金屬穿孔板試驗(yàn)篩
評(píng)論
0/150
提交評(píng)論