單片機(jī)個(gè)必做實(shí)驗(yàn)_第1頁
單片機(jī)個(gè)必做實(shí)驗(yàn)_第2頁
單片機(jī)個(gè)必做實(shí)驗(yàn)_第3頁
單片機(jī)個(gè)必做實(shí)驗(yàn)_第4頁
單片機(jī)個(gè)必做實(shí)驗(yàn)_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第一部分 軟件實(shí)驗(yàn)實(shí)驗(yàn)一 二進(jìn)制到BCD碼轉(zhuǎn)換一、實(shí)驗(yàn)?zāi)康?、掌握簡單的數(shù)值轉(zhuǎn)換算法2、基本了解數(shù)值的各種表達(dá)方法二、實(shí)驗(yàn)說明單片機(jī)中的數(shù)值有各種表達(dá)方式,這是單片機(jī)的基礎(chǔ) .掌握各種數(shù)制之間的轉(zhuǎn)換是一種基本功.我們將給定的一個(gè)二進(jìn)制數(shù),轉(zhuǎn)換成二十進(jìn)制 <BCD)碼.將累加器 A的值拆為三個(gè) BCD碼,并存入 RESULT開始的三個(gè)單元,例程 A 賦值#123.EKO7sEcVR7b5E2RGbCAP三、實(shí)驗(yàn)內(nèi)容及步驟1、啟動(dòng)計(jì)算機(jī),打開偉福仿真軟件,進(jìn)入仿真環(huán)境 .首先進(jìn)行仿真器的設(shè)置,選擇使用偉福軟件模擬器 .2、打開 TH2.ASM源程序進(jìn)行編譯,編譯無誤后,全速運(yùn)行程序,打開數(shù)據(jù)窗口(DATA>,點(diǎn)擊暫停按鈕,觀察地址 30H、31H、32H的數(shù)據(jù)變化, 30H更新為 01,31H更新為02,32H更新為 03.用鍵盤輸入改變地址 30H、31H、32H的值,點(diǎn)擊復(fù)位按鈕后,可再次運(yùn)行程序,觀察其實(shí)驗(yàn)效果 .修改源程序中給累加器 A的賦值,重復(fù)實(shí)驗(yàn),觀察實(shí)驗(yàn)效果.EKO7sEcVR7p1EanqFDPw3、打開 CPU窗口,選擇單步或跟蹤執(zhí)行方式運(yùn)行程序,觀察 CPU窗口各寄存器的變化,可以看到程序執(zhí)行的過程,加深對(duì)實(shí)驗(yàn)的了解 .EKO7sEcVR7DXDiTa9E3d四、流程圖及源程序源程序RESULTEQU 30HORG 0000HLJMPSTARTBINTOBCD:MOV B ,#1001/20DIVABMOVRESULT,A;除以100得百位數(shù)MOVA,BMOVB,#10DIVABMOVRESULT+1,A;余數(shù)除以10得十位數(shù)MOVRESULT+2,B;余數(shù)為個(gè)位數(shù)RETSTART:MOVSP,#40HMOVA,#123CALLBINTOBCDLJMP$END流程圖EKO7sEcVR7RTCrpUDGiT給出要轉(zhuǎn)換的二進(jìn)制數(shù)實(shí)驗(yàn)四 程序跳轉(zhuǎn)表一、實(shí)驗(yàn)?zāi)康?將數(shù)除以 100,得百位數(shù)1、了解程序的多分支結(jié)構(gòu)保存百位數(shù)2、掌握多分支結(jié)構(gòu)程序的編程方法二、實(shí)驗(yàn)說明 將余數(shù)再除以 10,得十位多分支結(jié)構(gòu)是程序中常見的結(jié)構(gòu),在多分支結(jié)構(gòu)的程序中,能夠按調(diào)用號(hào)執(zhí)行相應(yīng)保存十位數(shù)的功能,完成指定操作 .若給出調(diào)用號(hào)來調(diào)用子程序,一般用查表方法,查到子程序的余數(shù)為個(gè)位數(shù),將其保存地址,轉(zhuǎn)到相應(yīng)子程序 .EKO7sEcVR75PCzVD7HxA三、實(shí)驗(yàn)內(nèi)容及步驟 結(jié)束1、啟動(dòng)計(jì)算機(jī),打開偉福仿真軟件,進(jìn)入仿真環(huán)境 .首先進(jìn)行仿真器的設(shè)置,選擇使用偉福軟件模擬器 .2/202、打開 TH4.ASM源程序進(jìn)行編譯,編譯無誤后,全速運(yùn)行程序,打開數(shù)據(jù)窗口(DATA>,點(diǎn)擊暫停按鈕,觀察地址30H、31H、32H、33H的數(shù)據(jù)變化,30H更新為0,31H更新為1,32H更新為2,33H更新為3.用鍵盤輸入改變地址30H、31H、32H、33H的值,點(diǎn)擊復(fù)位按鈕后,可再次運(yùn)行程序,觀察其實(shí)驗(yàn)效果 .修改源程序中給 30H~33H的賦值,重復(fù)實(shí)驗(yàn),觀察實(shí)驗(yàn)效果 .EKO7sEcVR7jLBHrnAILg3、打開 CPU窗口,選擇單步或跟蹤執(zhí)行方式運(yùn)行程序,觀察 CPU窗口各寄存器的變化,可以看到程序執(zhí)行的過程,加深對(duì)實(shí)驗(yàn)的了解 .EKO7sEcVR7xHAQX74J0X四、流程圖及源程序設(shè)置調(diào)用號(hào)1、流程圖2.源程序根據(jù)調(diào)用號(hào)查表ORG0LJMPSTART跳轉(zhuǎn)到相應(yīng)程序段FUNC0:MOV30H,#0RET調(diào)用返回FUNC1:MOV31H,#1RETFUNC2:MOV32H,#2RETFUNC3:MOV33H,#3RETFUNCENTER:ADDA,ACC;AJMP為二字節(jié)指令,調(diào)用號(hào)×2MOVDPTR ,#FUNCTABJMP@A+DPTRFUNCTAB:AJMPFUNC0AJMPFUNC13/20AJMPFUNC2AJMPFUNC3START:MOV A ,#0CALLFUNCENTERMOV A ,#1CALLFUNCENTERMOV A ,#2CALLFUNCENTERMOV A ,#3CALLFUNCENTERLJMP$END第二部分 硬件基礎(chǔ)實(shí)驗(yàn)實(shí)驗(yàn)七 P1口輸入、輸出實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?、學(xué)習(xí)P1口的使用方法2、學(xué)習(xí)延時(shí)子程序的編寫和使用二、實(shí)驗(yàn)說明P1口是準(zhǔn)雙向口 ,它作為輸出口時(shí)與一般的雙向口使用方法相同 .由準(zhǔn)雙向口結(jié)構(gòu)可知當(dāng)P1口用為輸入口時(shí),必須先對(duì)它置“ 1”.若不先對(duì)它置“ 1”,讀入的數(shù)據(jù)是不正確的.EKO7sEcVR7LDAYtRyKfE三、實(shí)驗(yàn)內(nèi)容及步驟實(shí)驗(yàn)(一>:用P1口做輸出口,接八位邏輯電平顯示,程序功能使發(fā)光二極管從右到左輪流循環(huán)點(diǎn)亮.1、使用單片機(jī)最小應(yīng)用系統(tǒng)1模塊.關(guān)閉該模塊電源,用扁平數(shù)據(jù)線連接單片機(jī)4/20P1口與八位邏輯電平顯示模塊 .EKO7sEcVR7Zzz6ZB2Ltk2、安裝好仿真器,用串行數(shù)據(jù)通信線連接計(jì)算機(jī)與仿真器,把仿真頭插到模塊的單片機(jī)插座中,打開模塊電源,打開仿真器電源 .EKO7sEcVR7dvzfvkwMI13、啟動(dòng)計(jì)算機(jī),打開偉福仿真軟件,進(jìn)入仿真環(huán)境 .首先進(jìn)行仿真器的設(shè)置,選擇仿真器型號(hào)、仿真頭型號(hào)、 CPU類型.選擇通信端口,點(diǎn)擊測試串行口,通信成功既可退出設(shè)置,進(jìn)行仿真 .EKO7sEcVR7rqyn14ZNXI4、打開 TH7A.ASM源程序,進(jìn)行編譯 .編譯無誤后,點(diǎn)擊全速執(zhí)行按鈕運(yùn)行程序,觀察發(fā)光二極管顯示情況 .發(fā)光二極管單只從右到左輪流循環(huán)點(diǎn)亮 .EKO7sEcVR7EmxvxOtOco5、把源程序編譯成 OBJ文件,再燒錄到 89C51芯片中.實(shí)驗(yàn)(二>:用P1.0、P1.1 作輸入接兩個(gè)撥斷開關(guān), P1.2、P1.3 作輸出接兩個(gè)發(fā)光二極管 .程序讀取開關(guān)狀態(tài),并在發(fā)光二極管上顯示出來 .EKO7sEcVR7SixE2yXPq51、用導(dǎo)線連接 P1.0、P1.1到兩個(gè)撥斷開關(guān), P1.2、P1.3到兩個(gè)發(fā)光二極管 .2、打開TH7B.ASM源程序,編譯無誤后,全速運(yùn)行程序,撥動(dòng)撥斷開關(guān),觀察發(fā)光二極管的亮滅情況 .向上撥為點(diǎn)亮,向下?lián)転橄?.EKO7sEcVR76ewMyirQFL3、把源程序編譯成 OBJ文件,再燒錄到 89C51芯片中.四、流程圖及源程序1.流程圖開始EKO7SEC 開始設(shè)置初始值 VR7KAVU42VRUS

P1.0,P1.1置一設(shè)移位次數(shù)(A>P1口循環(huán)點(diǎn)燈程序框圖(B>P1口輸入輸出程序框圖讀入P1.0口數(shù)據(jù)輸出將讀入的值輸出到P1.2左一位2.源程序:讀入P1.1口值延時(shí)<一)實(shí)是否5/20將讀入的值輸出到P1.3移位次數(shù)完成?驗(yàn)一ORG 0LOOP: MOV A,#0FEHMOV R2,#8OUTPUT:MOV P1,ARL AACALLDELAYDJNZ R2,OUTPUTLJMP LOOPDELAY:MOV R6,#0MOV R7,#0DELAYLOOP: ;延時(shí)程序DJNZ R6,DELAYLOOPDJNZ R7,DELAYLOOPRETEND<二)實(shí)驗(yàn)二KEYLEFT BIT P1.0 ;定義KEYRIGHTBIT P1.1LEDLEFT BIT P1.2LEDRIGHTBIT P1.3ORG 0SETB KEYLEFT ;欲讀先置一SETB KEYRIGHTLOOP: MOV C,KEYLEFTMOV LEDLEFT,CMOV C,KEYRIGHT6/20MOV LEDRIGHT,CLJMP LOOPEND五、思考題<1)對(duì)于本實(shí)驗(yàn)延時(shí)子程序Delay: MOV R6 ,0MOV R7,0DelayLoop:DJNZ R6,DelayLoopDJNZ R7 ,DelayLoopRET本模塊使用 12MHz晶振,粗略計(jì)算此程序的執(zhí)行時(shí)間為多少?六、電路圖VCC270*831392Q0D0P10P0054238Q1D1P11P0167337Q2D2P12P0298436Q3D3P13P031213535Q4D4P14P041514634Q5D5P15P051617733Q6D6P16P061918832Q7D7P17P07OE113INT1P2021111222LEINT0P2123P2274LS373VCC1524T1P231425T0P2426P25VCC3127EA/VPP2633pF2812MHzP2719X118X210033pF9RESETRXD101117TXD30RDALE/P1629WRPSEN10uFAT89C51RESET1K7/20實(shí)驗(yàn)十 8255輸入、輸出實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?、了解8255芯片結(jié)構(gòu)及接口方式2、掌握8255輸入、輸出的編程方法二、實(shí)驗(yàn)說明了解用到的芯片引腳及功能:8255是可編程的并行輸入 輸出接口芯片,通用性強(qiáng)且使用靈活 .8255 按功能可分為三個(gè)部分,即:總線接口電路,口電路和控制邏輯電路 EKO7sEcVR7y6v3ALoS891、口電路: 共有三個(gè)八位口,其中 A口和 口是單純的數(shù)據(jù)口,供數(shù)據(jù) I/O口使用.8255的引腳圖 74LS373的引腳圖2、總線接口電路:它用于實(shí)現(xiàn) 8255和單片機(jī)芯片的信號(hào)連接 .(1>CS——片選信號(hào) .(2>RD——讀信號(hào).(3>WR——寫信號(hào).(4>A0、A1——端口選擇信號(hào) .8255 共有四個(gè)可尋址的端口,用二位編碼可以實(shí)現(xiàn) .3、控制邏輯電路:它是控制寄存器,用于存放各口的工作方式控制字 .本實(shí)驗(yàn)是利用 8255可編程并行口芯片,實(shí)現(xiàn)數(shù)據(jù)的輸入、輸出 .可編程通用接口芯片8255A有三個(gè)八位的并行的 I/O 口,它有三種工作方式 .本實(shí)驗(yàn)采用的方式為 0:PA口輸出,PB口輸入.工作方式 0是一種基本的輸入輸出方式 .在這種方式下,三個(gè)端口都可以由程序設(shè)置為輸入或輸出,其基本功能可概括如下: EKO7sEcVR7M2ub6vSTnP1、可具有兩個(gè)八位端口 <A、B)和兩個(gè) 4位端口<C口的上半部分和下半部) .2、數(shù)據(jù)輸出時(shí)可以鎖存,輸入時(shí)不需鎖存 .本實(shí)驗(yàn)中,8255的端口地址由單片機(jī)的 P2.0、P2.1和P2.7決定.控制口的地址為 7FFFH;A口的地址為 7CFFH;B 口的地址為 7DFFH;C口的地址為7CFFH.EKO7sEcVR70YujCfmUCw8/20三、內(nèi)容及步驟本實(shí)驗(yàn)分兩種情況來進(jìn)行: (一>PA口作為輸出口 .( 二>PA口作為輸出口, PB口作為輸入口.(一>PA口作為輸出口,接 8位發(fā)光二極管,程序功能使發(fā)光二極管單只從右到左輪流循環(huán)點(diǎn)亮.1、單片機(jī)最小應(yīng)用系統(tǒng) 1的P0口接8255的D0~D7口,8255的PA0~PA7接八位邏輯電平顯示,單片機(jī)最小應(yīng)用系統(tǒng) 1的P2.0、P2.1、P2.7、RD、WR分別接 8255的A0、A1、CS、RD、WR,RESET接上復(fù)位電路 .EKO7sEcVR7eUts8ZQVRd2、安裝好仿真器,用串行數(shù)據(jù)通信線連接計(jì)算機(jī)與仿真器,把仿真頭插到模塊的單片機(jī)插座中,打開模塊電源,打開仿真器電源 .EKO7sEcVR7sQsAEJkW5T3、啟動(dòng)計(jì)算機(jī),打開偉福仿真軟件,進(jìn)入仿真環(huán)境 .選擇仿真器型號(hào)、仿真頭型號(hào)、CPU類型;選擇通信端口,測試串行口 .EKO7sEcVR7GMsIasNXkA4、打開TH10A.ASM源程序,編譯無誤后,全速運(yùn)行程序.發(fā)光二極管單只從右到左輪流循環(huán)點(diǎn)亮.5、可把源程序編譯成 OBJ文件,燒錄到 89C51芯片中.(二>PA口作為輸出口,PB口作為輸入口,PA口讀入鍵信號(hào)送八位邏輯電平顯示模塊顯示.1、8255的PA0~PA7接八位邏輯電平顯示, PB0~PB7口接查詢式鍵盤模塊,單片機(jī)最小應(yīng)用系統(tǒng) 1的P2.0、P2.1、P2.7、RD、WR分別接8255的A0、A1、CS、RD、WR,RESET接上復(fù)位電路 .EKO7sEcVR7TIrRGchYzg2、打開TH10B.ASM源程序,編譯無誤后,全速運(yùn)行程序.按查詢式鍵盤各鍵,觀察發(fā)光開始二極管的亮滅情況,發(fā)光二極管與按鍵相對(duì)應(yīng),按下為點(diǎn)亮,松開為熄滅.EKO7sEcVR77EqZcWLZNX置8255工作方式3、可把源程序編譯成OBJ文件,燒錄到89C51芯片中.四、置8255PA口流程圖及源程序EKO7sEcVR7lzq7IGf02E數(shù)據(jù)左移9/20開始延時(shí) 置8255工源程序如下:<一)PA口輸出:ORG 0HPORTA EQU 7CFFH ;A口PORTB EQU 7DFFH ;B口PORTC EQU 7EFFH ;C口CADDR EQU 7FFFH ;控制字地址MOV A,#80H ;方式0MOV DPTR,#CADDRMOVX @DPTR,ALOOP:MOV A,#0FEHMOV R2,#8OUTPUT:MOV DPTR,#PORTAMOVX @DPTR,ACALL DELAYRL ADJNZ R2,OUTPUTLJMP LOOPDELAY:MOV R6,#0MOV R7,#0DELAYLOOP:DJNZ R6,DELAYLOOPDJNZ R7,DELAYLOOPRETEND<二)PA口輸出,PB口輸入ORG 010/20PORTAEQU7CFFH;A口PORTBEQU7DFFH;B口PORTCEQU7EFFH;C口CADDREQU7FFFH;控制字地址SJMPSTARTSTART:ORG 30HMOVA,#82H;方式0,PA,PC輸出,PB輸入MOVDPTR,#CADDRMOVX@DPTR,AMOVDPTR,#PORTBMOVXA,@DPTR;讀入B口MOVDPTR,#PORTAMOVX@DPTR,A;輸出到A口CALLDELAYSJMPSTARTEND五、思考題試用8255PA口作為輸出口,PB作為輸入口,PC作為輸入口完成8255的輸入、輸出實(shí)驗(yàn)<其中PA口LED數(shù)碼顯示,PB接撥斷開關(guān),PC接查詢式鍵盤實(shí)驗(yàn)?zāi)K).EKO7sEcVR7zvpgeqJ1hk六、電路圖11/201P10/TP003934D0PA04238333P11/TP01D1PA1337322P12P02D2PA2436311P13P03D3PA35353040P14P04D4PA46342939P15P05D5PA57332838P16P06D6PA68322737P17P07D7PA713INT1P20215RDPB01812223619INT0P21WRPB1239208051P22A0PB21524821P23A1PB314T1253522T0P24RESETPB42662320pFP25CSPB5312724EA/VPP26PB6282512MHzP27PB719X11814X2PC015PC19101620pFRESETRXDPC21117TXDPC3173013RDALE/PPC41629825512WRPSENPC511PC610PC7VCCRESET10010uF1K實(shí)驗(yàn)十二 5LED靜態(tài)串行顯示一、實(shí)驗(yàn)?zāi)康?、掌握數(shù)字、字符轉(zhuǎn)換成顯示段碼的軟件譯碼方法2、靜態(tài)顯示的原理和相關(guān)程序的編寫二、實(shí)驗(yàn)電路1、靜態(tài)顯示,電路中圖所示 .顯示器由 5個(gè)LED數(shù)碼管組成.輸入只有兩個(gè)信號(hào),它們是串行數(shù)據(jù)線 DIN和移位信號(hào) CLK.5個(gè)串/并移位寄存器芯片 74LS164首尾相連.每片的并行輸出作為 LED數(shù)碼管的段碼 .EKO7sEcVR7NrpoJac3v174LS164的引腳圖如圖所示;74LS164為8位串入并出移位寄存器,1、2為串行輸入端,Q0~Q7為并行輸出端,CLK為移位時(shí)鐘脈沖,上升沿移入一位;MR為清零端,低電平時(shí)并行輸出為零.EKO7sEcVR71nowfTG4KI三、實(shí)驗(yàn)內(nèi)容及步驟單片機(jī)的P3.0作數(shù)據(jù)串行輸出,P3.1作移位脈沖輸出,可參考74LS164實(shí)驗(yàn)十一串行數(shù)轉(zhuǎn)換并行數(shù) .1 、使用單片機(jī)最小應(yīng)用系統(tǒng) 1模塊,用導(dǎo)線連接 RXD、TXD到串行靜態(tài)顯示模塊的12/20DIN、CLK端.2、安裝好仿真器,用串行數(shù)據(jù)通信線連接計(jì)算機(jī)與仿真器,把仿真頭插到模塊的單片機(jī)插座中,打開模塊電源,打開仿真器電源 .EKO7sEcVR7fjnFLDa5Zo3、啟動(dòng)計(jì)算機(jī),打開偉福仿真軟件,進(jìn)入仿真環(huán)境 .選擇仿真器型號(hào)、仿真頭型號(hào)、CPU類型;選擇通信端口,測試串行口.EKO7sEcVR7tfnNhnE6e54、打開TH12.ASM源程序,編譯無誤后,全速運(yùn)行程序.5LED顯示“89C51”.程序停止運(yùn)行時(shí),顯示不變,說明靜態(tài)顯示模塊具有數(shù)據(jù)鎖存功能 .EKO7sEcVR7HbmVN777sL5、可把源程序編譯成 OBJ文件,燒錄到 89C51芯片中.四、流程圖及源程序1、流程圖開始地址指針設(shè)置N取段碼2、源程序DBUF0EQU30H段碼左移一位TEMPEQU40HDINBIT0B0H;輸出一位段碼CLKBIT0B1H;ORG0輸出一個(gè)移位脈沖MOV30H,#8MOV31H,#9取段碼結(jié)束MOV32H,#CYMOV33H,#5取段碼結(jié)束MOV34H,#1Y

;置存儲(chǔ)區(qū)首址;置緩沖區(qū)首址;置串行輸出口;置時(shí)鐘輸出口;存入顯示數(shù)據(jù)N13/20DISP:MOVR0,#DBUF0MOVR1,#TEMPMOVR2,#5DP10:MOVDPTR,#SEGTAB;表頭地址MOVA,@R0MOVCA,@A+DPTR;查表指令MOV@R1,AINCR0INCR1DJNZR2,DP10MOVR0,#TEMP;段碼地址指針MOVR1,#5;段碼字節(jié)數(shù)DP12:MOVR2,#8;輸出子程序MOVA,@R0;取段碼DP13:RLCA;段碼左移MOVDIN,C;輸出一位段碼CLRCLK;發(fā)送移位脈沖一位SETBCLKDJNZR2,DP13INCR0DJNZR1,DP12SJMP$SEGTAB:DB3FH,06H,5BH,4FH,66H,6DH;0,1,2,3,4,5EKO7sEcVR7V7l4jRB8HsDB7DH,07H,7FH,6FH,77H,7CH;6,7,8,9,A,B14/20DB58H,5EH,7BH,71H,00H,40H ;C,D,E,F(xiàn),,-DELAY: MOV R4,#03H ;延時(shí)子程序AA1: MOV R5,#0FFHDJNZR5,AADJNZR4,AA1RETEND五、電路圖15/20bcpYagdPdDfeabdfpcedg12345678bcpYagddDfepabcdefdg12345678bcpYagdPdDfebdfpacedg12345678bcpYagdPdDfebdfpacedg12345678bcpYagdPdDfepabcdefdg12345678

00000

3450123611110123456774LS164QQQQQQQQ02KRABMC12893450123611110123456774LS164QQQQQQQQ02KRABLCM12893450123611110123456774LS164QQQQQQQQ02KRABCM12893450123611110123456774LS164QQQQQQQQ02KRABLCM12893450123611110123456774LS164QQQQQQQQ02KRABLCM1289N KI LD C實(shí)驗(yàn)十四 查詢式鍵盤一、實(shí)驗(yàn)?zāi)康?、掌握鍵盤和顯示器的接口方法和編程方法2、掌握鍵盤和八段碼顯示器的工作原理3、靜態(tài)顯示的原理和相關(guān)程序的編寫二、實(shí)驗(yàn)說明本實(shí)驗(yàn)提供了 8個(gè)按鈕的小鍵盤,落如果有鍵盤按下,則相應(yīng)輸出為低,如果沒有16/20鍵按下,則輸出為高 .通過這樣可以判斷按下什么鍵 .在有鍵按下后,要有一定的延時(shí),防止鍵盤抖動(dòng) .EKO7sEcVR783lcPA59W9三、實(shí)驗(yàn)步驟及內(nèi)容、用一根扁平數(shù)據(jù)線插頭連接查詢式鍵盤實(shí)驗(yàn)?zāi)K與八位邏輯電平顯示模塊,無鍵按下時(shí),鍵盤輸出全為“ 1”發(fā)光二極管全部熄滅,有鍵按下,對(duì)應(yīng)發(fā)光二極管點(diǎn)亮 .此種電路的程序要判斷是否有 2個(gè)或2個(gè)以上的鍵盤同時(shí)按下,以免鍵盤分析錯(cuò)誤 .陣列式鍵盤的編程同樣也有這樣的問題要注意 .EKO7sEcVR7mZkklkzaaP2、一根扁平 8線插頭連接查詢式鍵盤實(shí)驗(yàn)?zāi)K與掃描顯示實(shí)驗(yàn)?zāi)K .無鍵按下時(shí),LED數(shù)碼顯示八段全部熄滅,有鍵按下時(shí),則對(duì)應(yīng) LED段點(diǎn)亮.EKO7sEcVR7AVktR43bpw3、使用靜態(tài)串行顯示模塊顯示鍵值 .單片機(jī)最小應(yīng)用系統(tǒng) 1的P1口接查詢式鍵盤輸出口,RXD接靜態(tài)數(shù)碼顯示 DIN,TXD接CLK.EKO7sEcVR7ORjBnOwcEd4、安裝好偉福仿真器,用串行數(shù)據(jù)通信線連接計(jì)算機(jī)與仿真器,把仿真頭插到模塊的單片機(jī)插座中,打開模塊電源,插上仿真器電源插頭 .EKO7sEcVR72MiJTy0dTT5、啟動(dòng)計(jì)算機(jī),打開偉福仿真軟件,進(jìn)入仿真環(huán)境 .選擇仿真器型號(hào)、仿真頭型號(hào)、CPU類型;選擇通信端口,測試串行口 .EKO7sEcVR7gIiSpiue7A6、打開 TH14.ASM源程序,編譯無誤后運(yùn)行程序,在鍵盤上按下某個(gè)鍵,觀察數(shù)顯是否與按鍵值一致,鍵值從左至右為 0~7.EKO7sEcVR7uEh0U1Yfmh7、可把源程序編譯成 OBJ文件,燒錄到 89C51芯片中.五、流程圖及源程序開始1、流程圖 EKO7sEcVR7IAg9qLsgBX顯示緩沖區(qū)初始2、源程序LED顯示ORG0000HNDBUFEQU30H有鍵輸入?TEMPEQU40HMOV30H,#16讀取鍵值MAIN:ACALLDISP鍵值轉(zhuǎn)換為顯示數(shù)17/20

開初始化鍵去查表主程序框ACALLKEYAJMP MAINKEY: MOV P1 ,#0FFH ;輸入

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論