單片機試驗指導_第1頁
單片機試驗指導_第2頁
單片機試驗指導_第3頁
單片機試驗指導_第4頁
單片機試驗指導_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、查找相同數(shù)據(jù)個數(shù)程序?qū)嶒灴驁D四、實驗步驟:1、在2000H200FH的幾個單元中填入零, 幾個單元數(shù)。2、用連續(xù)或單步方式運行清零程序五. 思考:1、修改程序,查找其它內(nèi)容。2、修改清零程序,假使把,檢查200020FF中執(zhí)行程序前后的內(nèi)容變化。2000H- 20FFH中的內(nèi)容改成 FF,如何修改程序。51系列單片機原理與應用實驗實驗1簡單匯編語言實驗、實驗目的:掌握匯編語言設計和調(diào)試方法,熟悉鍵盤操作。熟悉匯編語言編程。二、實驗內(nèi)容:1. 查找相同數(shù)據(jù)個數(shù):在 2000H200FH的N個單元中填入零,運行本程序后檢查2100H中是否為N;2. 清零:把2000H20FFH的內(nèi)容清零。三、實驗

2、程序框圖:開始R0=001OOil2000HDPTR+l RQ+1I| RO=FF?| N結(jié)朿清零程序框圖運行查找相同數(shù)據(jù)個數(shù)程序后檢查2100H中是否是1/查找相同數(shù)據(jù)個數(shù)程序程序清單:ORG 0000HLJMP L5800ORG OAAOHL5800: MOV R0,#10HMOV R1,#00HMOV DPTR,#2000H L5811: MOVX A,DPTRCJNE A,#00H,L5816INC R1;L5816: INC DPTRDJNZ R0,L5811;MOV DPTR,#2100HMOV A,R1MOVX DPTR,AL581E: SJMP L581EEND查找16個字節(jié)取

3、出內(nèi)容與00H相等嗎?取出個數(shù)加1未完繼續(xù)相同數(shù)的個數(shù)送2100H2/清零程序清單:ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00H(0000H)送 DPTR送(DPTR字節(jié)數(shù)加1不到FF個字節(jié)再清MOV DPTR,#2000H;LOO1: CLR AMOVX DPTR,A ;0INC DPTR ;DPTR+1INC RO;CJNE R0,#00 H, LOO1 ;LOOP: SJMP LOOPEND實驗2拆字和拼字程序一、實驗目的:掌握匯編語言設計和調(diào)試方法。二、實驗內(nèi)容:1、把2000H的內(nèi)容拆開,高位送2001H低位,低位送2002H低位,2001

4、H、2002H高位清零,一般 本程序用于把數(shù)據(jù)送顯示緩沖區(qū)時用;2、把2000H.2001H的低位分別送入2002H高低位,一般本程序用于把顯示緩沖區(qū)的數(shù)據(jù)取出 拼裝成一字節(jié)。三、實驗程序框圖:拆字程序框圖四、實驗步驟:用連續(xù)或單步方式運行程序,檢查五、思考:如何用斷點方式調(diào)試本程序。1/拆字程序清單:ORG 0000HLJMP SE02ORG 0660HSE02: MOV DPTR,#2000HMOVX A,DPTRMOV B,A ;(2000) tAt BSWAP A ;交換ANL A,#0FH ;屏蔽高位INC DPTRMOVX DPTR,A ;送2001HINC DPTRMOV A,B

5、ANL A,#0FH ;(2000)內(nèi)容屏蔽高位MOVX DPTR,A ;送2002H拼字程序框圖2000H2002H中內(nèi)容變化情況。LOOP: SJMP LOOPEND2/拼字程序清單:ORG 0000HLJMP STARTORG 0680HSTART: MOV DPTR,#2000HMOVX A,DPTRANL A,#0FH ; SWAP A;MOV B,A;(2000H)內(nèi)容屏蔽高位 交換保存INC DPTR(2000H)內(nèi)容送A屏蔽高位或送2002H數(shù)據(jù)排序?qū)嶒濵OVX A,DPTR ;ANL A,#0FH ;ORL A,B ;INC DPTRMOVX DPTR,A ;SJMP $EN

6、D實驗3一、實驗目的:熟悉51指令系統(tǒng),掌握程序設計方法。二、實驗內(nèi)容:編寫并調(diào)試一個排序子程序,其功能為用冒泡法將數(shù)據(jù)存儲單元中幾個單字節(jié)無符號的正整數(shù),按從小到大的次序重新排列。三、程序框圖:四、 實驗步驟:將RAM 1 0 0 0 H10 0 FH中放入不等的數(shù)據(jù),用斷點方法運行本實驗 程序后檢查1 0 0 0 H10 0 FH中的內(nèi)容是否按從小到大的次序排列。五、思考:修改程序把1 0 0 0 H10 0 FH中內(nèi)容從大到小排列。1/程序清單:ORG 0000HLJMP SE01ORG 0640HSE01: CLR 00H;標志位MOV DPTR,#1000H;起始地址MOVX A,D

7、PTRMOV R7,#04H;要排序的數(shù)據(jù)個數(shù)LOOP: MOV 22H,A; 第一個數(shù)送 22hINC DPTRMOVX A,DPTR ; 第二個數(shù)送 ACLR C;清零CCJNE A,22H,LOOP5 ; 判斷是哪個數(shù)大LOOP5: JNC LOOP1 ;前面的數(shù)小則不作處理,否則交換位置LOOP2: DEC DPL ;交換位置MOV R5,DPLCJNE R5,#OFFH,LOOP4DEC DPHLOOP4: MOVX DPTR,AMOV A,22HINC DPTRMOVX DPTR,ASETB 00HLOOP1: DJNZ R7,LOOP;不交換位置JB 00H,SE01;判斷此次循

8、環(huán)有無交換發(fā)生LOOP3:SJMP LOOP3END例4-1有一變量在片內(nèi) RAM的20H單元,取值范圍:00H05H。編制一段程序,根據(jù)變量值 求其平方值,并存入片內(nèi)RAM的21H單元。ORG 0000HLJMP SE01ORG 0640HSE01:MOV DPTR,#2000HMOV A,20HMOVC A,A+DPTRMOV 21H,ASJMP $ORG 2000HTABLE:DB 01,01,04,09,16,25END例4-2 設變量x以補碼的形式存放在片內(nèi)RAM的30H單元,變量y與x的關(guān)系是:當x大于0時,y =x ;當x =0時,y =20H ;當x小于0時,y =x+5。編制

9、程序,根據(jù) x的大 小求y并送回原單元。ORG 0000HLJMP STARTORG 0640HSTART:MOV A,30HJZ NEXTANL A,#80H ;判斷符號位JZ LPMOV A,#05HADD A,30HMOV 30H,ASJMP LPNEXT:MOV 30H,#20HLP:SJMP $END例4-3 編寫程序,將內(nèi)部 RAM的30H至3FH單元初始化為 00H。ORG 0000HLJMP MAINORG 0040HMAIN:MOV R0,#30HMOV A,#00HMOV R7,#16LOOP:MOV R0,AINC RODJNZ R7,LOOPSJMP $END例4-4

10、將內(nèi)部RAM中起始地址為60H的數(shù)據(jù)串傳送到外部 RAM中起始地址為1000H的存儲 區(qū)域內(nèi),直到發(fā)現(xiàn)$ 字符停止傳送。由于循環(huán)次數(shù)事先不知道,但循環(huán)條件可以測試到。該程序采用先判斷后執(zhí)行的結(jié)構(gòu)。ORG 0000HLJMP MAINORG 0040HMAIN: MOV R0,#60HMOV DPTR,#1000HLOOP0: MOV A,R0CJNE A,#24H,LOOP1SJMP DONELOOP1: MOVX DPTR,AINC R0INC DPTRSJMP LOOP0DONE: SJMP DONEEND實驗4-1 P1 口亮燈實驗一、實驗目的:l)學習P1 口的使用方法;2)學習延時子

11、程序的編寫。二、實驗頂備知識:(I ) .Pl 口為準雙向口,每一位都可獨立地定義為輸入或輸出,在作輸入線使用前,必須向鎖存器相應位寫入 1 ”,該位才能作為輸入。(2).本實驗中延時子程序采用指令循環(huán)來實現(xiàn),機器周期(12/6MHZ)*指令所需機器周期數(shù)*循環(huán)次數(shù),在系統(tǒng)時間允許的情況下可以采用此方法。三、實驗內(nèi)容:P1 口輸出口,接八只發(fā)光二極管,編寫程序,使發(fā)光二極管循環(huán)點亮。四、實驗程序框圖:1點賈11位發(fā)光極管左移一悝-循環(huán)五、實驗步驟:P1.0P1.7用插針連至L1L8,運行程序后,觀察發(fā)光二極管閃亮移位情 況。六、思考: 改變延時常數(shù),使發(fā)光二極管閃亮時間改變。修改程序,使發(fā)光二

12、極管閃亮移位方向改變程序清單ORG 0000HLJMP SE18ORG 0790HSE18: MOV P1,#0FFH ;送 P1 口LO34: MOV A,#0FEH ;L1 發(fā)光二極管點亮LO33: MOV P1,ALCALL SE19;延時RL A ;左移位SJMP LO33;循環(huán)ORG 07A0HSE19: MOV R6,#0A0HLO36: MOV R7,#0FFHLO35: DJNZ R7,LO35DJNZ R6,LO36 ; 延時RETEND實驗4-2 P1 口轉(zhuǎn)彎燈實驗一、實驗目的:進一步了解P1 口的使用,學習匯編語言編程方法及調(diào)試技巧。二、實驗內(nèi)容:P1.0開關(guān)接5V,右轉(zhuǎn)

13、彎燈閃亮, 開關(guān)同時接5V或接地時,轉(zhuǎn)彎燈均不閃亮。三、實驗程序框圖:P1.1開關(guān)接5V時左轉(zhuǎn)彎燈閃亮,P1.0,P1.1羔叮弄右叮去左口葺左仃疋占itr延盯12四、實驗接線圖:五、實驗步驟:應看到轉(zhuǎn)彎燈正確閃亮,在用單步方式調(diào)試本程序時需修改延時子程序, 第一個字節(jié)改成返回指令程序清單:ORG 0000H連續(xù)運行本程序, (例可把延時程序22H),以便觀察。LJMP PXOOORG 0C30HPXOO: MOV P1,#0FFHPX03: MOV A,P1MOV B,AANL A,#03HCJNE A,#01H,PX01JB 00H,PX04CLR P1.4初始化滿足只是P1.0為高條件?

14、閃爍標志位CLR P1.5開右燈SETB P1.6SETB P1.7關(guān)左燈MOV R2,#20HLCALL DELY延時SETB OOHLJMP PX03PX04: SETB P1.4SETB P1.5SETB P1.6SETB P1.7MOV R2,#20HLCALL DELYCLR OOHAJMP PX03PX01: CJNE A,#02H,PX02JB 01H,PX05SETB P1.4SETB P1.5CLR P1.6CLR P1.7MOV R2,#20HLCALL DELYSETB 01HLJMP PX03PX05: SETB P1.4SETB P1.5SETB P1.6SETB P

15、1.7MOV R2,#20HLCALL DELYCLR 01HLJMP PX03QPX02: SETB P1.4SETB P1.5SETB P1.6SETB P1.7LJMP PX03DELY: PUSH 02HDEL2: PUSH 02HDEL3: PUSH 02HDEL4: DJNZ R2,DEL4POP 02HDJNZ R2,DEL3;置標志位;繼續(xù)查找狀態(tài);關(guān)燈;延時;清標志位;繼續(xù)查找狀態(tài);滿足只是P1.1為高條件嗎?;判標志位;開左燈;關(guān)右燈;延時;置標志位;繼續(xù)查找;關(guān)燈;延時;清標志位;繼續(xù)查找狀態(tài);關(guān)燈;繼續(xù)延時POP 02HDJNZ R2,DEL2POP 02HDJNZ R

16、2,DELYRETEND實驗5-1 P3 口輸入,P1 口輸出一、實驗目的:掌握 P3 口 P1 口簡單使用。二、實驗內(nèi)容:P3.3 口輸入一脈沖,P1 口按16進制加一方式點亮發(fā)光二極管。三、實驗程序框圖:丄| 3.3高嗎? |YJ y延時.真的高嗎I簞氐嗎?匚二I倉戸匚f|r両壞|四、 實驗步驟:P3.3用接針連至K1 P1.0P1.7插針連至L1L8, K1撥動一次,L1 光二極管按16進制方式加一點亮。五、思考:修改程序,使發(fā)光二極管左移方式點亮。程序清單:L8發(fā)ORG 0000HLJMP J100ORG 0810HJ100: MOV A,#00HJ101: JB P3.3,J101

17、MOV R2,#10H LCALL DELY JB P3.3,J101J102: JNB P3.3,J102MOV R2,#10H LCALL DELY JNB P3.3,J102 INC A PUSH ACCCPL AMOV P1,APOP ACCAJMP J101DELY: PUSH 02HDEL2: PUSH 02H;P3.3電平為低嗎?;P3.3電平為高嗎?;加1;取反;驅(qū)動發(fā)光二極管;循環(huán)DEL3: PUSH 02HDEL4: DJNZ R2,DEL4 ;延時POP 02HDJNZ R2,DEL3POP 02HDJNZ R2,DEL2POP 02HDJNZ R2,DELYRETEND

18、實驗5-2 簡單I/O 口擴展一、實驗目的:(1) 學習單片機系統(tǒng)中擴展簡單I/O 口的方法。(2) 學習數(shù)據(jù)輸入輸出程序的編制方法。二、 實驗內(nèi)容:利用74LS244作為輸入口,讀取開關(guān)狀態(tài),并將此狀態(tài),通過74LS273再驅(qū)動發(fā) 光二極管顯示出來。三、實驗程序框圖:讀出244狀態(tài)送力3驅(qū)動發(fā)光二極管循環(huán)四、 實驗步驟: Y0Y7接 K1 K8, QA Q7接 L1 L8, CS1 接 8000孔,CS2接9000 孔,JX0接JX7,執(zhí)行程序,按動 K1K8,觀察L1L8是否對應點亮。五、思考: 可否用273輸入,244輸出。程序清單:ORG 0000HLJMP GOD0ORG 0B80H

19、GOD0: MOV DPTR,#8000HMOVX A,DPTRMOV DPTR,#9000HMOVX DPTR,ASJMP GOD0END;取出244狀態(tài);送273驅(qū)動發(fā)光二極管實驗6繼電器控制一、 實驗目的掌握用繼電器的基本方法和編程。二、 實驗內(nèi)容 利用P1 口輸出高低電平,控制繼電器的開合,以實現(xiàn)對外部裝置的控制。三、實驗預備知識現(xiàn)代自動控制設備中都存在一個電子與電氣電路的互相聯(lián)結(jié)問題,一方面要使電子電路的控制信號能夠控制電氣電路,提供良好的電隔離,以保護電子電路和人身的安全,繼電器便能完成這一橋梁作用。四、實驗接線圖:士3,總耳五、實驗步驟: 把Pl.0接JIN端,繼電器的JZ通過K

20、1接地。JK接L1,JB接L2。編制程序, 使P1.0電平變化,高電平時繼電器吸合,常開觸點接上LI點亮,L2熄滅,低電平時繼電器不 工作,常閉觸點閉合 丄I熄滅,L2點亮。程序清單:ORG 0000HLJMP LOOPORG 0F00HLOOP: CLR P1.0MOV R2,#30HLCALL DELYSETB P1.0MOV R2,#30HLCALL DELYSJMP LOOPDELY:PUSH 02HDEL2:PUSH 02HDEL3:PUSH 02HDEL4:DJNZ R2,DEL4POP 02HDJNZ R2,DEL3POP 02HDJNZ R2,DEL2POP 02HDJNZ R

21、2,DELYRETEND實驗7-1 8255A.B.C 口輸出方波一、 實驗目的:掌握可編程I/O接口芯片8255的接口原理使用,熟悉對8255初始化編程和輸 入/輸出軟件的設計為法。二、實驗內(nèi)容:在8255的A.B.C 口用萬用表可測出每個口線的高低電平變化。三、實驗程序框圖:四、實驗步驟:執(zhí)行程序,用萬用表測量8255A.B.C 口應有高低電平變化(或用8255A.B.C 口 分別用插針連至LIL8,觀察發(fā)光二極管變化情況)。程序清單:ORG 0000HLJMP SE09ORG 0580HSE09: MOV DPTR,#0FF2BHMOV A,#80HMOVX DPTR,A;8255初始化

22、MOV A,#55H;一位隔一位咼電、LO15: MOV DPTR,#0FF28HMOVX DPTR,AINC DPTRMOVX DPTR,AINC DPTRMOVX DPTR,A;A、B、C 口送入MOV R2,#10H;延時LCALL DELYCPL A;取反SJMP LO15;循環(huán)ORG 05A0DELY: PUSH 02HDEL2: PUSH 02HDEL3: PUSH 02H;延時DEL4: DJNZ R2,DEL4POP 02HDJNZ R2,DEL3POP 02HDJNZ R2,DEL2POP 02HDJNZ R2,DELYRETEND實驗 7-2 8255PA 口控制 PB 口

23、8255芯片的結(jié)構(gòu)及編程方法。PA 口作開關(guān)量輸入口,PB 口作輸出口。一、實驗目的:掌握單片機系統(tǒng)中擴展外圍芯片的方法,了解二、實驗內(nèi)容:用 8255三、實驗程序框圖:A口內(nèi)容讀出A狀態(tài)向日口輸出LEA四、實驗接線圖:嚴3E IE *IE - IEA/v T0 w T 七4五、實驗步驟:8255PA 口接KIK8,PB 口接L1L8運行程序,按K1K8,觀察L1L8發(fā)光二 極管是否對應點亮。程序清單:ORG OOOOhLJMP SE17ORG 0770HSE17: MOV DPTR,#0FF2BHMOV A,#90H8255初始化MOVX DPTR,ALO32: MOV DPTR,#0FF2

24、8HPA 口狀態(tài)讀出MOVX A,DPTRINC DPTR送PB 口MOVX DPTR,ASJMP LO32END實驗7-3 8255控制交通燈一、實驗目的:進一步了解 8255芯片的結(jié)構(gòu)及編程方法,學習模擬交通控制的實現(xiàn)方法。二、實驗內(nèi)容:用8255做輸出口,控制十二個發(fā)光二極管燃滅,模擬交通燈管理。三、實驗程序框圖:四個路口紅燈亮東西綠燈宛”南北紅燈貝延時 東西黃燈閃爍南北紅燈冃延時東西紅燈貝.南北綠燈亮延時東西紅燈貝南北童燈閃爍延時1四、實驗接線圖:五、實驗步驟:8255 PAL PA7 PBZ PB3接發(fā)光二極管 L15 L13、L11 L9、L7L5、L3 L1。執(zhí)行程序,初始態(tài)為四

25、個路口的紅燈全亮之后, 東西路口的綠燈亮,南北路口的紅燈亮, 東西路口方向通車,延時一段時間后東西路口的綠燈熄滅,黃燈開始閃爍,閃爍若干次后,東西路口紅燈亮,而同時南北路口的綠燈亮,南北路口方向開始通車,延時一段時間后,南北路口的綠燈熄滅,黃燈開始閃爍,閃爍若干次后,再切換到東西路口方向,之后重復以上過程ORG 0000HLJMP JOD0ORG OBBOHJOD0: MOV SP,#60HMOV DPTR,#0FF2BHMOV A,#88HMOVX DPTR,AMOV DPTR,#0FF28HMOV A,#0B6HMOVX DPTR,AINC DPTRMOV A,#0DHMOVX DPTR,

26、AMOV R2,#25HLCALL DELYJOD3: MOV DPTR,#0FF28HMOV A,#75HMOVX DPTR,AINC DPTRMOV A,#0DHMOVX DPTR,AMOV R2,#55HLCALL DELYMOV R7,#05HJOD1: MOV DPTR,#0FF28HMOV A,#0F3HMOVX DPTR,AINC DPTRMOV A,#0CHMOVX DPTR,AMOV R2,#20HLCALL DELYMOV DPTR,#0FF28HMOV A,#0F7HMOVX DPTR,AINC DPTRMOV A,#0DHMOVX DPTR,AMOV R2,#20HLC

27、ALL DELYDJNZ R7,JOD1MOV DPTR,#0FF28HMOV A,#0AEHMOVX DPTR,AINC DPTRMOV A,#0BHMOVX DPTR,AMOV R2,#55HLCALL DELYMOV R7,#05H;8255初始化;點亮4個紅燈;延時;東西綠燈亮,南北紅燈亮;延時;閃爍次數(shù);東西黃燈亮,南北紅燈亮;延時;南北紅燈亮;延時;閃爍次數(shù)未到繼續(xù);東西紅燈亮,南北綠燈亮;延時;閃爍次數(shù)J0D2: MOV DPTR,#0FF28HMOV A,#9EHMOVX DPTR,AINC DPTRMOV A,#07HMOVX DPTR,AMOV R2,#20HLCALL D

28、ELYMOV DPTR,#0FF28HMOV A,#0BEHMOVX DPTR,AINC DPTRMOV A,#0FHMOVX DPTR,AMOV R2,#20HLCALL DELYDJNZ R7,JOD2LJMP JOD3ORG 0C30HDELY:PUSH 02HDEL2:PUSH 02HDEL3:PUSH 02HDEL4:DJNZ R2,DEL4;東西紅燈亮,南北黃燈亮;延時;東西紅燈亮;延時;閃爍次數(shù)未到繼續(xù);循環(huán);延時POP 02HDJNZ R2,DEL3POP 02HDJNZ R2,DEL2POP 02HDJNZ R2,DELYRETEND實驗8 A/D轉(zhuǎn)換實驗、實驗目的:(1)掌

29、握A/D轉(zhuǎn)換與單片機接口的方法;(2)了解A/D芯片0809轉(zhuǎn)換性能及編程方法;(3)通過實驗了解單片機如何進行數(shù)據(jù)采集。、實驗內(nèi)容:利用實驗系統(tǒng)上的0809做A/D轉(zhuǎn)換器,實驗系統(tǒng)上的電位器提供模擬量輸入, 編制程序,將模擬量轉(zhuǎn)換成數(shù)字,通過數(shù)碼管顯示出來。三、實驗接線圖:AJU1 Eno, afmi nuniIN 1711 zmUHS 1WQIU-12-1LW4T J J. 1ja JfritriKj/lED-AKMA TTTLPfinrLP*M 了AT VTTWARTITfT tTt 茸rTnrwTILS.MilbCLBO 嘰叫L演If期IK電機氏2 KSO四、實驗步驟:(1) ,將 J

30、X2接 JXO, CS轉(zhuǎn)8000H, AOUT接 DJ;(2) ,運行程序,數(shù)碼管上顯示DJ-XX,數(shù)碼管最后二位上顯示的數(shù)字量不斷加大或 減小,電機速度也隨之不斷加快或減慢。程序清單:正確的程序ORG 0000HLJMP SE13ORG 05E0HSE13: ;MOV SP,#53HMOV 7EH,#00HMOV 7DH,#08HMOV 7CH,#03HMOV 7BH,#02HMOV A,#43HMOV DPTR,#0FF20HMOVX DPTR,ALO20: MOV R6,#00Hmov R4,#0DhLO21: MOV DPTR,#8000HMOV A,R6MOVX DPTR,AMOV

31、R0,#79HLCALL PTDSLCALL SSEEMOV R2,#08HLCALL DELYdjnz R4,L O21MOV R4,#0DHINC R6CJNE R6,#0ffH, LO21LO22: MOV DPTR,#8000HDEC R6MOV A,R6MOVX DPTR,AMOV R0,#79HLCALL PTDSLCALL SSEEMOV R2,#08HLCALL DELYCJNE R6,#00 H,L O22LJMP LO20ORG 0d20HPTDS: MOV R1,ALCALL PTDS1MOV A,R1SWAP APTDS1:ANL A,#0FHMOV R0,AINC R

32、ORETORG 1050HSSEE: ;SETB RS1;MOV R5,#05HSSE2: MOV 30H,#20HMOV 31h,#7EHMOV R7,#06HSSE1: MOV DPTR,#0FF21HMOV A,30HCPL AMOVX DPTR,AMOV R0,31HMOV A,R0MOV DPTR,#DDFFMOVC A,A+DPTRMOV DPTR,#0FF22HMOVX DPTR,AMOV R2,#09HLCALL DELYMOV A,30HRR AMOV 30H,ADEC 31HMOV A,#0FFHMOVX R1,ADJNZ R7,SSE1;DJNZ R5,SSE2;CLR

33、RS1RETDDFF: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HDB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEHDELY: PUSH 02HDEL2: PUSH 02HDEL3: PUSH 02HDEL4: DJNZ R2,DEL4POP 02HDJNZ R2,DEL3POP 02HDJNZ R2,DEL2POP 02HDJNZ R2,DELYRETEND實驗十 8279鍵盤顯示實驗1, 實驗目的:掌握8051系統(tǒng)中,擴展8279鍵盤顯示接口的方法。2, 實驗內(nèi)容:按下數(shù)字鍵,數(shù)碼管上應相應能顯示

34、數(shù)字,按下功能鍵,能相應執(zhí) 行其它程序。3, 實驗接線圖SHIFTCTJTHCNILfflOUIE1OUTEOOUf A3 DBOOUIK2HB1OTTA1nraomzJUU E28TT皿孟Y3二EABCELE3Q4,實驗程序框圖:5, 實驗步驟:把CS6孔用插針連至8000孑L, JSL接JS, JRL接JR, JOUT接 JLED,SW3 SW4 SW5S OFF實驗完后置ON),運行程序,數(shù)碼管上顯示P,按下數(shù)字鍵, 數(shù)碼管上應能顯示相應數(shù)字,按下功能鍵,數(shù)碼管上顯示相應的0字I字2字循 環(huán)。6, 程序清單:ORG 0000HLJMP H900ORG 00D0HH900: MOV SP,

35、#53HMOV DPTR,#8001HMOV A,#00H ;MOVX DPTR,A ;8279方式字寫入MOV A,#32HMOVX DPTR,A ;分頻MOV A,#0DFHMOVX DPTR,A ;清緩沖區(qū)H901: MOVX A,DPTR ;讀狀態(tài)字JB ACC.7,H901MOV A,#85HMOVX DPTR,AMOV DPTR,#8000H;字位選擇MOV A,#0c8HMOVX DPTR,A ;字形送入INC DPTRMOV A,#85HMOVX DPTR,A字位送入,顯示 PH902: MOV 30H,#85HMOV 31H,#40H自己定義的字符緩沖區(qū)的首地址H903: MOV DPTR,#8001HMOVX A,DPTRANL A,#07HCJNE A,#00H,H904 ;AJMP H903有鍵按下嗎?H904: MOV DPTR,#8000HMOVX A,DPTRMOV B,A ;取出鍵值MOV R1,#00HMOV DPTR,#GOJZH905: MOV A,#00HMOVC A,A+DPTR ;CJNE A,B,H906;AJMP H907;查鍵值表是否相同相等化轉(zhuǎn)移,即轉(zhuǎn)移到功能鍵處理方式 轉(zhuǎn)數(shù)字處理程序,即不是功能鍵則是數(shù)據(jù)鍵H906: INC DPTR;INC R1;MOV A,R1JB ACC.4,H908;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論